Vulnhub-medium_socnet

本文介绍了一次完整的靶机渗透过程,包括靶机环境搭建、端口和服务扫描、利用Python反弹shell、内网主机发现及利用Elasticsearch漏洞获得root权限等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

靶机下载
搭建好靶机环境之后,进行全端口扫描,该靶机开放了22和5000端口
在这里插入图片描述
然后进行对端口进行服务扫描,得到一个python环境下搭建的web框架,版本是Werkzeug httpd 0.14.1,Werkzeug是一个WSGI工具包,也可以作为一个Web框架的底层库
在这里插入图片描述
然后在浏览器中访问该地址端口,并没有什么可以利用的;然后对隐藏目录进行扫描,得到一个admin目录
在这里插入图片描述
然后访问admin目录,得到一个可以执行代码的文本框
在这里插入图片描述
简单测试普通代码可以执行代码
在这里插入图片描述
接着我们可以在网上找一段利用Python代码进行反弹shell,在kali攻击机上开启监听后成功反弹
在这里插入图片描述
虽然获得的是root权限,但是这是一个docker容器
在这里插入图片描述
然后对docker这个容器主机查看ip,发现ip为172.17.0.3,该网段可以看作内网网段,然后对改内网进行主机发现,利用脚本进行循环ping完该网段,发现只有172.17.0.1、172.17.0.2和172.17.0.3存活
脚本语句:for i in $(seq 20); do ping -1 172.17.0.$i; done(这里ping20个)
在这里插入图片描述
所以这里需要设置隧道代理,这里用Venom工具,先在kali上面开启服务端
在这里插入图片描述
并在该目录下启动一个python的服务器
在这里插入图片描述
然后再利用靶机上获取venom的文件,用于连接kali上的venom的服务器端,连接成功
在这里插入图片描述
再开启一个socks5代理,可以进行数据传输和工具使用等
在这里插入图片描述
同时也需要在kali机上配置vi /etc/proxychains4.conf文件,配置好proxychains后就可以直接使用工具了
在这里插入图片描述
搭建好代理之后,对内网的这三个ip进行nmap扫描,得到如下信息,发现172.17.0.2上面开了Elasticsearch服务,通过百度之后发现这个版本的服务上面存在漏洞
在这里插入图片描述
然后再攻击机上搜索Elasticsearch有关的漏洞,发现有远程代码执行漏洞
在这里插入图片描述
利用远程代码执行exp得到root权限
在这里插入图片描述
并且发现了一个passwords文件,查看文件得到一些账号密码,并将其解码得到密码(john:1337hack;test:1234test;admin:1111pass;root:1234pass;jane:1234jane)
在这里插入图片描述
发现只有john的账号可以登陆,但是不能直接提升为root权限
在这里插入图片描述
可以从上面信息得到Linux的内核版本为3.13,可以查找是否有漏洞,经过searchexploit之后,发现有可以利用的exp,可以根据上面的方法进行下载,但是靶机上没有gcc编译环境,所以无法编译
在这里插入图片描述
这里通过查看代码,我们可以看到,定义了一个变量调用了system函数,通过函数执行了一条命令,而这条系统命令当中又再次调用了gcc生成一个动态链接库进行使用。了解到这一点后,我们就理清楚了,即使我们在本地进行编译后生成的二进制文件拿到宿主机上去运行,运行的时候它依旧会出错;
在这里插入图片描述
最方便的是直接在kali当中找到这个生成的二进制文件,然后直接修改源代码,让程序执行到这里的时候不再执行编译,直接调用二进制文件。
删除之后直接在本机使用gcc进行编译
在这里插入图片描述在这里插入图片描述
要执行这个文件还需要一个已经编译生成好的二进制库文件,寻找文件名为ofs-lib.so的动态链接库,直接使用locate ofs-lib.so对文件进行定位
在这里插入图片描述
然后启动web服务将这两个文件上传到靶机上
在这里插入图片描述
然后将这两个文件移动到/tmp/文件下,因为所有的用户在该目录下都有执行的权限,执行exp之后得到root权限
在这里插入图片描述
总结:在admin的目录下得知了python环境和代码执行漏洞,于是执行了python的反弹shell,拿到了权限,但是这个权限为docker容器下的权限,于是对docker容器的内网进行扫描,得到了三个主机,从三个主机中的一个主机中有Elasticsearch有关的漏洞,通过搜索漏洞库并进行利用得到该主机的权限,并且从中得到一份passwords文件,记录了用户的账号密码,然后对开放了ssh服务进行远程登录,得到了john用户,发现该用户没有root权限,通过Linux版本较低的情况下,搜索该版本的漏洞进行提权,但靶机没有gcc编译环境,只有在攻击机上把编译好的二进制文件上传到靶机运行,于是需要删除一些代码,上传一个库文件进行编译,从而在/tmp目录下执行文件得到root权限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ability~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值