IIS写入权限错误配置引发的渗透案例
时间:2011-01-14 来源:fdsajhg
主题:安全设置拿下台湾国立阳明大学!献丑了,大牛路过
今天下午放假最后一天闲着无聊就对台湾那边站点进行测试,运气不错遇到一个安全设置问题,IIS读写权限漏洞
一、IIS写权限原理
测试一个目录对于web用户是否具有写权限,采用如下方法:
1.telnet服务器并发送传送文件请求
首先使用Telnet连接到服务器的web端口即80端口,并发送一个如下请求:
PUT /dir/my_file.txt HTTP/1.1
Host: IIS-server Content-Length: 10
2.查看服务器返回信息
正常情况下服务器会返回一个100的信息,如下所示:
HTTP/1.1 100 Continue
Server: Microsoft-IIS/5.0
Date: Thu, 28 Num 2008 15:56:00 GMT
3.测试是否可以输入
接着,我们输入10个字母:AAAAAAAAAA,送出这个请求后,看服务器的返回信息,如果是一个 201 Created响应,如下所示:
HTTP/1.1 201 Created Server: Microsoft-IIS/5.0
Date: Thu, 28 Num 2008 15:56:08 GMT
Location:http://IIS-server/dir/my_file.txt Content-Length: 0 Allow: OPTIONS, TRACE, GET, HEAD, DELETE, PUT,
COPY, MOVE, PROPFIND, PROPPATCH, SEARCH, LOCK, UNLOCK
那么就说明这个目录的写权限是开着的,反之,如果返回的是一个403错误,那么写权限就是没有开起来,如果需要你认证,并且返回一个 401(权限禁止) 的响应的话,说明是开了写权限,但是匿名用户不允许。如果一个目录同时开了“写”和“和可执行程序”的话,那么Web用户就可以上传一个程序并且执行 它。
利用过程
IIS写入漏洞的利用,通过手工操作比较繁琐,而且效率低下,一般使用一些IIS写入漏洞利用来操作。IIS写入利用工具其本质还是跟手工 提交原理一样,先判断再尝试,只是将所有的过程通过编程来实现而已。在本例中使用桂林老兵的IIS写权限利用工具,先提交一个asp文件上去,在提交方式中选择PUT(前面直接使用Post失败了,所有这里要选择PUT),域名输入IP地址“120.126.*.*”,请求文件 “/test.txt”,然后选择一个本地asp的文件,选择完毕后单击“提交数据包”按钮,如果提交顺利,再在IE浏览器中打开test.txt文件,能够查看就表明提交成功。
通过PUT方法上传到IIS目录 说明: 用IIS写入利用工具提交文件,先提交生成一个test.txt文件,此文件实为asp后门的源文件。
在桂林老兵的写权限利用工具中,选择move操作,利用IIS的move方法,将test.txt文本文件,重命名为shell.asp后门文 件,然后再在IE地址栏中输入http:// 120.126.*.*/shell.asp,查看能否正常访问,如图3所示,执行过程显示“类型不匹配”错误当
我们访问地址看到出现“类型不匹配‘execute’”错误提示时,说明后门提交成功
这样小黑就顺利拿下改台湾站点本着正义的精神了通知管理员!
大家不要去搞破坏!!已经通知学校官方人员
營繕組資訊管理系統
http://mtdserver.ym.edu.tw/sitedir.txt
國立陽明大學核醫分子影像實驗室
http://nm.ym.edu.tw/sitedir.txt
小结:此次入侵没什么技术含量,主要是管理人员对安全设置问题,让我们有可乘之机,所以在很多时候,并不是有洞才能进的很多时候可能某个安全设置导致安全事故出现,就想俗话说“千里之堤毁于蚁穴”就是这个道理!