声明:本次演练中,所有测试设备均由主办方提供,所有流量均有留档可审计,所有操作均在授权下完成,所有数据在结束后均已安全销毁。
直接上目标,这是一个普普通通的某系统。(只能露半脸)
直接开始整活~ ·~ 先来试一手弱口令
没有验证码,还提示用户名不存在,直接打开burp~ 上字典!很遗憾,一眼到头全是“用户名不存在”
那么问题就来了,要么统一返回的都是“用户名不存在”,要么是真的没有碰到用户名,既然普通的用户字典没有成功,那么可以考虑下是不是工号,一般为4位或者6位数字,再次进行爆破。终于出现两个不一样的东西
虽然得到了用户名但是从爆破界面可以看到不论是否是存在的用户,爆破有一定次数会进行锁定。
希望之光来了,又好像没来
想着换一条思路,然后扫了一眼爆破的窗口发现一个问题,有几个特殊的用户名都是登陆次数过多被锁定了。
他们共同特点都是有“ ' ”单引号。
啥也别说直接上Sqlmap
结果啥也没跑出来,但是事情肯定没这么简单,手动尝试下。
很明显报错注入 构造报错语句
显示出数据库名。既然存在那就好办,还是掏出sqlmap 然后指定数据库类型,指定注入点以及注入方式,直接run。
成功跑出,发现为dba权限直接尝试os-shell。
这里想通过echo来写一个webshell,那么首先我们需要找到网站的绝对路径。这里我们可以找一张图片然后通过find命令来寻找它的路径。
dir /a /s /b e:\ | findstr "20201203122243_5254.png" >1.txt
然后通过type查看路径
type 1.txt
结果发现路径没有完全显示,很奇怪,这里猜测是sqlmap的问题,所以想通过powershell进行反弹shell。
尝试使用powershell直接反弹出来,首先在vps上起一个监听
然后利用powershell进行反弹。发现被封ip(在执行其他命令时没有封禁ip,猜测有waf以及杀软)
换个ip继续,发现powershell拒绝访问(这里忘记截图),于是猜测杀软可能是某数字。使用copy 来绕过对powershell的限制
copy C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe 2.exe
成功执行
监听成功收到会话。
这里继续查看下刚才find的路径
wtf? 这里肯定不是用“?”来作为文件夹名称 大概是是中文,所以这里是问号,sqlmap也不能显示出来。
既然没办法写shell那么就直接上cs。首先查看杀软进程:
还是老办法使用copy命令来绕过使用certutil来进行文件落地。
然后执行直接上线 成功上线
搞定~
文章来源:TIDE安全团队
黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!
如侵权请私聊我们删文
END
多一个点在看多一条小鱼干