前言
此次渗透测试的过程简记:
信息收集 -> 通过获取的账号密码登录平台 -> 发现越权 -> 越权到admin用户 -> 通过任意文件上传getshell -> 获取服务器权限(终)
期间遇到waf, 绕waf,遇到安全狗过安全狗,同时感谢遇到问题时ChaBug的兄弟们提出的意见和帮助!
渗透的本质=信息收集?随着实践的次数增多,慢慢发现信息收集的重要性,当掌握的信息越多,目标暴露的弱点也会越多,下一步进攻的突破口越明显。
浏览了目标的很多功能,没有发现可以操作的点,因此尝试登录以发现新的功能点寻找突破口。
该平台的默认账号密码为学号和身份证号后六位(也是大部分高校的惯性行为)。因此接下来就是收集学生的学号以及身份证号,学号比较好收集(谷歌语法一般都会找到很多),但是身份证号并不常见。但是我在另一个子域名的平台发现了两处不起眼的越权。
注: 目标网站是本人所在学校网站,且本人取得测试授权。虽然账号密码用自己的即可,但是作为一个攻击者,我就当从零开始。
直接访问该子域名的admin目录,发现可以越权访问,并在消费统计处查看到了大量学生学号等信息。
接下来在此网站找到了第二处越权,可以查看任意学号/工号人员消费明细,且明细中包含身份证号码。
(本来是觉着可以搞这个网站却发现后台其他功能报废了。前台点了点各个功能才发现了这个越权)
拿到所需信息,登录目标平台。
登录发现没有权限访问个人中心
普通学生用户只有发表留言的权限,调用的是简化魔改版ueditor编辑器,尝试了一下没有可利用漏洞。
但是在抓包测试上传的时候仔细看了一下cookie,发现了有意思的东西。
在查看服务平台的相关管理人员回复的时候发现了账号为admin的回复。
因此直接将参数值改为admin,直接成功越权到admin用户。
头像处可以上传,但是直接上传会被某waf拦截,不太清楚是什么waf,问了@X1r0z一嘴又忘记了。。总之可以绕过。
起初传了asp,发现访问返回404,好奇又传了php,结果也是404。
最后发现只允许上传解析aspx文件 :)
登录远程服务器
已经是system权限了,肯定要登录到服务器看一眼,虽然没必要但是可以。
tasklist /svc
发现服务器3389没有开启,另外发现了360及安全狗进程。
利用procdump+Mimikatz来读取windows明文密码。
由于prodump.exe是微软系统自带,有微软的签名证书,所以杀软不会拦截。
# lsass.dmp保存至当前目录
procdump64.exe -accepteula -ma lsass.exe lsass.dmp
# 脱回本地,猕猴桃(mimikatz)读取明文密码
sekurlsa::minidump lsass.dmp
sekurlsa::logonpasswords
# windows 2008 开启3389
wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1
wmic /namespace:\\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName ='RDP-Tcp') call setuserauthenticationrequired 1
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f
服务器在外网直接登录,结果发现:
折腾了半天还是不让我登录是吧,爷今天非要登录进去看一看!
开始我以为管理员在线,不能同时登录两个账号或者管理员把我踢了。后来@X1r0z提醒发现可能是安全狗的问题。将安全狗配置文件下载到本地查看,发现设置了白名单访问控制。
# 安全狗配置文件所在目录
C:\Program Files\SafeDog\SafeDogServer\SafeDogGuardCenter\ProGuardData.ini
C:\Program Files(x86)\SafeDog\SafeDogServer\SafeDogGuardCenter\ProGuardData.ini
虚拟机更改计算机为白名单内容项,登录。
单独的一台服务器没有内网,就到此为止了。
那个不知道什么名字的waf,在最近测试其他目标的时候又遇到了,且可以bypass它的SQL注入防护。
# 经过测试发现在部分查询语句的时候拦截了substr 以及 or/and等。
# 绕过(我测试的目标是盲注,其他的注入方式可以自测,好像防护规则有点弱智)
?id=1' ^ (ascii(mid((select * from * ),1,1))>0)#
文章记录的渗透过程都是网络中已经存在的姿势,我只不过是在遇到的机会的同时实际运用了一下并记录在笔记。
声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后果.
注:如有侵权请联系删除
学习更多技术,关注我: