有这样一种情况,有些站点和论坛是允许上传图片到服务器,但是这就给黑客留下了可进入服务器的大门,他们上传一些php或者js到服务器,然后被我们执行加载,有些函数可以让黑客获取最大的权限,从而对数据造成威胁!
为了避免这种事情的发生,我们需要限制上传类型。
在虚拟服务器中增加如下配置:
<Directory /data/wwwroot/test3.com/upload>
php_admin_flag engine off
<FilesMatch (.*)\.php(.*)>
Order allow,deny
deny from all
</FilesMatch>
</Directory>
凡是在upload目录中的php均不解析!并且匹配任意.php的文件,全部拒绝访问!
[[email protected] test3.com]# curl -x127.0.0.1:80 www.test3.com/upload/123.php
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /upload/123.php
on this server.<br />
</p>
</body></html>
如上当你访问.php文件时,直接拒绝,没有任何机会去访问,更别提执行了!
如果程序员让upload可以允许解析,那只有说明他不合格!静态文件存储的地方是不允许放php的。没有考虑到任何数据安全!!!
User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
cc攻击:是我们经常见到的最常见的一种攻击,几乎每天每个时段都会存在。CC攻击就是黑客利用所能利用的肉鸡(就是所谓的黑客利用技术手段攻击下来的他人服务器)去攻击(正常的访问)你的站点,导致你的站点不可以被正常的用户所浏览。但是也不是不可防止,在攻击的时候有一个规律的特征,user_agent是一致的(其referer和访问页面是一致的,并且在一秒内发动N此访问)!
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} .*baidu.com.* [NC]
RewriteRule .* - [F]
</IfModule>
咱们还是使用rewrite modul
RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR] //匹配Curl的访问 [NC,OR] NC:忽略大小写。 OR:是或者的意思,要么这一条,要么下一条满足情况
RewriteCond %{HTTP_USER_AGENT} .*baidu.com.* [NC]
RewriteRule .* - [F] // F:Forbidden 禁止
只要使用curl和baidu.com来攻击,就会直接也不跳转了,就直接禁止!
[[email protected] test3.com]# curl -x127.0.0.1:80 www.test3.com
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.<br />
</p>
</body></html>
使用Curl这种方式访问直接被禁掉(You don’t have permission to access on this server.)
当然你也可以使用curl -A :随意指定自己这次访问所宣称的自己的浏览器信息。
[[email protected] test3.com]# curl -A "haha browser" -x127.0.0.1:80 www.test3.com -I
HTTP/1.1 200 OK
Date: Thu, 03 Aug 2017 06:15:37 GMT
Server: Apache/2.4.27 (Unix) PHP/7.1.6
X-Powered-By: PHP/7.1.6
Content-Type: text/html; charset=UTF-8
改变浏览方式即可访问。查看下日志:
[[email protected] test3.com]# tail /usr/local/apache2.4/logs/test3.com-access_20170803.log
127.0.0.1 - - [03/Aug/2017:14:12:41 +0800] "GET HTTP://www.test3.com/ HTTP/1.1" 403 209 "-" "curl/7.29.0"
127.0.0.1 - - [03/Aug/2017:14:15:37 +0800] "HEAD HTTP://www.test3.com/ HTTP/1.1" 200 - "-" "haha browser"
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有