问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
记一次域渗透靶场学习过程
VulnStack7是红日安全团队最近的一个ATT&CK靶场,所以有了记一次域渗透靶场学习过程
0x01环境准备: --------- VulnStack7是红日安全团队最近的一个ATT&CK靶场,为一个三层靶场,靶场地址:`http://vulnstack.qiyuanxuetang.net/vuln/detail/9/` 整体拓扑如下。 ![](https://shs3.b.qianxin.com/butian_public/ffc7bbea7f52fda7e73669eb0434fc700.jpg) 配置过程这里不再赘述,因为本人主机为linux主机,由于路径问题,导致dmz区域的机器无法正常运行,于是直接砍掉,反正网站为二层的docker环境内,不影响总体操作。且为了增加难度,在PC1和PC2安装了某安全软件,于是拓扑变成了下面这样: ![](https://shs3.b.qianxin.com/butian_public/f610c048f8f21c12515cbb126bcf7cab0.jpg) 记得开启相关服务,在各个机器上。 0x02知识点 ------- 1. 信息收集 2. Laravel Debug mode RCE(CVE-2021-3129)漏洞利用 3. Docker逃逸 4. Linux环境变量提权 5. 路由转发与代理 6. CobaltStrike利用 7. 内网横向 8. 杀软绕过 0x03入口突破;;' ----------- 首先对目标进行端口扫描,获取入口点: `nmap -T4 -sC -sV 192.168.52.20` ![](https://shs3.b.qianxin.com/butian_public/f45848d43b1ed360fb6fbf0f596d15f84.jpg) 发现开放22端口与8000,访问8000,发现是一个Laravel的网站。 ![](https://shs3.b.qianxin.com/butian_public/fd3ea1387217ae4fe2e0bed271fb96b38.jpg) 而这个版本的框架是存在一个rce漏洞的,即`Laravel <= v8.4.2 debug mode: Remote code execution (CVE-2021-3129)`。使用POC测试,发现的确可以成功利用 使用一键化工具,写入一个webshell进去就行啦,蚁剑连接: ![](https://shs3.b.qianxin.com/butian_public/fdfc844846a140298e8eeb20c1dca9c89.jpg) 进入终端时发现,主机信息处有些特殊: `Linux 8e172820ac78 4.4.0-142-generic #168~14.04.1-Ubuntu SMP Sat Jan 19 11:26:28 UTC 2019 x86_64` 猜测可能是docker环境,一般来说有以下两个方法: 1. 判断根目录下 `.dockerenv` 文件 2. 查询系统进程的`cgroup`信息 发现的确为docker环境 ![](https://shs3.b.qianxin.com/butian_public/fc923c6fe290a32ca14ff4febaa090ca9.jpg) 0x04 docker逃逸 ------------- 下面我们要做的就是docker逃逸了,不过目前我们仅仅是一个www权限,所以来进行提权。看了看版本信息,且目标机器存在gcc,此时我们完全可以使用内核提权 ![](https://shs3.b.qianxin.com/butian_public/f758f573e05d4f17d1651b473d58aca1a.jpg) 不过根据靶机的信息,我们这里也使用suid的方法进行提权。查找SUID提权的命令如下: `find / -user root -perm -4000 -print 2>/dev/null find / -perm -u=s -type f 2>/dev/null find / -user root -perm -4000 -exec ls -ldb {} ;` ![](https://shs3.b.qianxin.com/butian_public/f0c2a0efee35ad2092afdef2deef9686f.jpg) 发现存在一个shell程序,尝试运行该文件 ![](https://shs3.b.qianxin.com/butian_public/f8e6e69f5aded42fb398f3ac4868171dc.jpg) 发现其就是在执行ps命令而已,此时我们可以使用路径劫持的方法,来获取一个高权限的shell,首先使用蚁剑反弹一个shell回来 然后替换环境以获取到了一个root的shell.这里可以直接获取一个Cs的shell回来或者是MS的shell. ![](https://shs3.b.qianxin.com/butian_public/f46aa0cd84b1f8888d81fa59e60f90cfa.jpg) 这里为了方便起见,就没有在root的环境下获得会话。下面就是docker逃逸了,在之前我打类似的靶机的时候也遇到docker逃逸的情况,一般使用漏洞进行逃逸或者使用特权模式进行逃逸,我们这里使用特权模式进行逃逸。 即当控制使用特权模式启动的容器时,docker管理员可通过mount命令将外部宿主机磁盘设备挂载进容器内部,获取对整个宿主机的文件读写权限,此外还可以通过写入计划任务等方式在宿主机执行命令。此时查看设备时,会发现拥有很多的设备。 ![](https://shs3.b.qianxin.com/butian_public/f369b03822f0c10e40417d07a40074b7a.jpg) 然后新建目录并挂载目录: `mkdir /abc mount /dev/sda1 /abc` 最终我们可以通过访问容器内部的/abc路径来达到访问整个宿主机的目的:`ls /abc` ![](https://shs3.b.qianxin.com/butian_public/f01d23f1490c68d858ec581d7c5e492a9.jpg) 下面就是写文件或者写计划任务上线即可。 ![](https://shs3.b.qianxin.com/butian_public/fa687b27d84ced7c29d634c1df44f4f0b.jpg) 顺便获得了密码文件的内容。通过查看网卡信息,发现后面的`192.168.93.0`的网段以及本网段`192.168.52.0`,下面就是横向移动了。 ![](https://shs3.b.qianxin.com/butian_public/fb75446e3890862292fbb10528c4cfe32.jpg) ### 0x05内网横向 因为是上线的Cs所以我们很多操作不是很方便操作,所以我们先对`192.168.52.0`来进行测试,直接一个ping获取本网段的存活主机信息(可能不是很准确) `for k in $( seq 1 255);do ping -c 1 192.168.99.$k|grep "ttl"|awk -F "[ :]+" '{print $4}'; done` 但是毫无反应,没关系,我们直接搞个sockets代理进去。 ![](https://shs3.b.qianxin.com/butian_public/fccb0294315bf7508f78f8c3d5a899eb6.jpg) 发现目标网段内具有30这个主机,我们再对其进行信息收集。发现其开放了8082端口 访问之,发现是一个OA系统 ![](https://shs3.b.qianxin.com/butian_public/fcd250f4dbdad15bab841603daae6eba2.jpg) 下面就好说了,拿shell就可以了。首先伪造session登录后台。 ![](https://shs3.b.qianxin.com/butian_public/fa1939fa8b911b70223a83822f22e1b0f.jpg) 然后附件添加一个存储 ![](https://shs3.b.qianxin.com/butian_public/fee6e2f21873ef68e395e2dcae1dbfb6e.jpg) 选择 组织-管理员-附件上传-txt,抓包修改 ![](https://shs3.b.qianxin.com/butian_public/f3bc00de90e87ceba13ba89fd3ac878b4.jpg) 抓包修改,绕过黑名单 txt修改为 php. 挂好代理,蚁剑成功连接 ![](https://shs3.b.qianxin.com/butian_public/fd02af0370a5965979a058b4ebaa4197b.jpg) 但此时我们是无法执行命令的,因为有杀软的缘故,我们执行命令会被拦截 ![](https://shs3.b.qianxin.com/butian_public/fee6f61b0004345dcfcca889de8477662.jpg) 绕过方法就是使用自定义终端 ![](https://shs3.b.qianxin.com/butian_public/fc5942456daa30a22c9df309c0547c55d.jpg) 然后我们就可以执行命令了,因为第二个网段是出网的,所以直接powershel上线即可 然后就是提权、抓密码一条龙 ![](https://shs3.b.qianxin.com/butian_public/f31fc04108a9a86e4c5f335918d9b69d9.jpg) ### 0x06获取域控 而且因为该机器使用域管理员来启动OA的缘故,机器上也存在域管信息,直接拿到域管密码。 ![](https://shs3.b.qianxin.com/butian_public/f3a0c43e957c7ec9eba02028795b81392.jpg) 通过`net view`发现其93段下面的其他机器 ![](https://shs3.b.qianxin.com/butian_public/f208866a45e4b75b51c4d49dfd1ee3663.jpg) 发现DC字样,因为我们已经有了域管的密码,直接横向过去 ![](https://shs3.b.qianxin.com/butian_public/fdcba7606bca60dbeffa0723b37d7980c.jpg) 均失败,没关系我们使用`net use`来做,尝试关闭它的防火墙,然后再横向。 ![](https://shs3.b.qianxin.com/butian_public/f942989bbc757de930507d0d63b3c8c2c.jpg) 拿下域控。然后我们继续横向下一台机器,因为有火绒的存在,我们没有办法直接横向过去,我们选择使用`net use`的方法把我们的免杀马复制过去,然后在获取session。 ![](https://shs3.b.qianxin.com/butian_public/fd4ed642601da9ef2ffb07fb132e9d9d4.jpg) 至此整个域已经拿下。导出信息,方便以后学习。 ![](https://shs3.b.qianxin.com/butian_public/f20817d74ea9375909f49a73350fd6d29.jpg)
发表于 2021-04-07 20:17:41
阅读 ( 7429 )
分类:
内网渗透
3 推荐
收藏
0 条评论
请先
登录
后评论
带头大哥
50 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!