TryHackMe-Agent Sudo:从图片分析到权限提升的完整过程记录

TryHackMe-Agent Sudo:从图片分析到权限提升的完整过程

描述

Agent Sudo是tryhackme的简单房间一道CTF题目,涉及到图片的分析,隐写术等,主要的任务目标是破解FTP、SSH、以及zip密码。并进行权限提升。

信息收集

首先开启机器后先通过nmap对目标进行枚举,发现开放了http、FTP、SSH服务。

Screenshot_7.png

访问目标的80端口,提示我们需要用自己的User-Agent进行访问。

Screenshot_20.png

BurpSuite抓包使用User-Agent:R进行访问并没有任何变化,于是尝试对User-Agent进行fuzz,将包发送到intruder模块进行将进行爆破,再对User-Agent的值进行标记。

Screenshot_1.png

在payloads模块设置payload type为Simple list,点击Add from list...选择添加A-Z,最后点击strat attack进行爆破。

Screenshot_3.png

爆破结束,发现字母C的状态码与其他不同

Screenshot_4.png

于是尝试将User-Agent的值换为字母C,再次重放后点击跟随重定向。

Screenshot_5.png

可以看到成功定向到了agent_C_attention.php页面,得到了agent name --chris

Screenshot_6.png

FTP爆破

通过获取到的chris使用hydra对FTP进行密码爆破,得到密码为crystal

hydra -l chris -P /usr/share/wordlists/rockyou.txt ftp://10.10.208.106

Screenshot_2.png

使用命令ftp [email protected]登陆FTP,发现三个文件,通过get命令将文件下载到本地。

Screenshot_8.png

图片分析

查看To_agent.txt发现,登陆密码被隐藏再来某一张图片中

Screenshot_21.png

于是使用binwalk对两张图片进行分析,并通过命令sudo binwalk --run-as=root -e cutie.png自动提取识别的数据,发现了一个zip压缩文件。

Screenshot_9.png

zip密码破解

使用unzip对文件进行解压失败,存在密码以及zip版本不支持,通过zip2john 进行密码破解。zip2john 是一个用于生成可以用 John the Ripper 破解的 ZIP 文件哈希的工具。这个工具特别用于处理加密的 ZIP 文件,允许将 ZIP 文件的加密信息转换为一个格式,这个格式可以被 John the Ripper 使用来破解密码。

生成哈希

使用 zip2john 来提取 ZIP 文件的哈希。需要指定 ZIP 文件的路径。

zip2john 8702.zip > hash.txt
这个命令会生成一个包含哈希的文件 hash.txt。

使用 John the Ripper 破解密码

john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt

查看破解结果

成功得到密码,alien

john --show hash.txt

Screenshot_10.png

由于unzip版本不支持 所以换为7z 输入刚刚得到的密码解压成功,并得到了一串base64加密的密文。

Screenshot_11.png

通过对base64进行解码 echo "QXJlYTUx" | base64 --decode得到了密码

Screenshot_13.png

jpg图片分析

使用exiftool 工具对cute-alien.jpg 进行元数据检查 exiftool cute-alien.jpg
JPEG 文件的元数据可以包含有关相机设置、地理位置信息、日期和时间等信息。可以使用工具如 exiftool 来查看这些信息,但是并没有上面发现。

Screenshot_14.png

steghide隐写术检测工具对图片进行分析

steghide info 命令 这个命令用于显示关于隐写文件的信息,例如是否有数据被隐藏、用于加密数据的加密算法等。不需要提供密码就可以查看这些基本信息。

steghide extract -sf 命令 这个命令用于从含有隐写数据的文件中提取隐藏的数据。-sf 选项表示指定的隐写文件,即从哪个文件中提取数据。如果隐藏数据时设置了密码,执行此命令时会要求你输入密码以解锁并提取数据。

# 显示数据
steghide info cute-alien.jpg 
# 提取数据
steghide extract -sf cute-alien.jpg

通过对提取的数据发现存在一个messsage.txt文件,查看文件发现了,james的登陆密码为hackerrules!

Screenshot_15.png

权限提升

使用获取到的用户名和密码成功登陆,查看 sudo 配置和版本信息,用户 james 被允许以任何用户(除了 root)的身份运行 /bin/bash。尝试通过 sudo 来进行权限提升。

Screenshot_16.png

刚刚我们已经获取了sudo的版本信息,可以通过searchsploit搜索sudo 1.8.27存在的漏洞。发现一个漏洞

Screenshot_17.png

通过在线漏洞库得到了CVE编号

Screenshot_22.png

利用 Sudo 配置中的漏洞

接再来我们使用searchsploit -m linux/local/47502.py 将POC复制,并scp命令将POC传输到目标机器,具体命令为:scp /path/poc.py uname@ip:/path/ 这里需要使用绝对路径。

Screenshot_18.png

通过SSH连接到目标机器,发现POC已经上传成功,检查是否存在python环境,发现python环境为python 3.6.8 ,直接 通过python3 47502.py运行脚本,成功获取到具有root权限。

Screenshot_19.png

由于 sudo 的配置允许用户 james 以任何非 root 用户的身份运行 /bin/bash,你可以尝试利用一个已知的漏洞(CVE-2019-14287)来绕过这一限制并以 root 权限运行命令。

该漏洞允许通过使用 -u#-1 参数来指定一个无效的用户 ID (-1),这在大多数系统中被解析为 0(即 root 的 ID)。即通过命令 sudo -u#-1 /bin/bash 一样可以获得root权限。

Screenshot_23.png

最后将Alien_antospy.jpg通过google进行搜索,确定了事件

Screenshot_24.png

虽然只是一道简单级别的CTF题目,但是以前接触CTF比较少,总的来说对于我这样的新手来说具有挑战性但是完成过程中收获不少,主要还得需要一定的思路。总之前路漫漫,慢慢走,星光不问赶路人。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注