灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2340回复:0

上传漏洞助手之服务器解析

楼主#
更多 发布于:2012-08-24 21:51


上传漏洞可谓是网站入侵者最喜欢,最乐意的攻击手法,正因如此,程序员对上传文件的扩展名过滤,也是绞尽脑汁,从以前的黑名单过滤,通过判断扩展名是否为.asp,.asa,.cer等,到现在白名单直接判断扩展名是否为 jpg,gif,png,rar,zip等,甚至以前常用的00截断上传很多情况也不起作用了,但这并不意味着上传漏洞就已无用武之地,当你看到服务器的目录解析和文件解析问题后,上传也可谓是峰回路转了一回。

Windows2003+IIS6.0    目录解析漏洞

1 会把xxx.asp目录下的文件都以asp来进行解析
2 1.asp;_2.gif形式的文件也会被当做asp来解析

Apache2.2.14         目录解析漏洞

不管文件最后后缀为什么,只要是.php.*结尾,就会被Apache服务器解析成php文件,问题是apache如果在mime.types文件里面没有定义的扩展名在诸如x1.x2.x3的情况下,最后一个x3的没有定义,他会给解析成倒数第二个的x2的定义的扩展名。所以xxx.php.rar或者xxx.php.111这些默认没在mime.types文件定义的都会解析成php的。同样如果是cgi或者jsp也一样。。。那么如果涉及到web程序的上传页面,如果上传的文件名是我们可以定义的,那么我们完全可以上传一个xxx.php.abc这样名字的webshell,apache仍然会当作php来解析。

防御方法:
apache配置文件,禁止.php.这样的文件执行,配置文件里面加入
<Files ~ “\.(php.|php3.)”>
Order Allow,Deny
Deny from all
</Files>

Nginx-0.8.37             文件解析漏洞

通过访问 http://www.atcpu.com /phpinfo.txt/abc.php则会以php文件来解析phpinfo.txt

解决方案:
1  修改php.ini将cgi.fix_pathinfo设为0,重启php反向代理服务

2  为nginx虚拟主机添加如下内容:

if ( $fastcgi_script_name ~ \..*\/.*php ) {
return 403;
}



喜欢0 评分0
游客

返回顶部