记一次域渗透靶场学习过程

  • A+
所属分类:安全文章




征稿:单篇文章稿费1500元!

1.限时福利活动

时间:2021年2月26日-2021年3月26日

活动奖励

被采用作者前5名=采用篇数*100元额外奖励

2.投稿方式

请个人联系方式(微信,QQ,手机号)和文章

发送到邮箱:[email protected]

点击链接了解活动详情



0x01环境准备:

VulnStack7是红日安全团队最近的一个ATT&CK靶场,为一个三层靶场,靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/9/

整体拓扑如下。

记一次域渗透靶场学习过程

配置过程这里不再赘述,因为本人主机为linux主机,由于路径问题,导致dmz区域的机器无法正常运行,于是直接砍掉,反正网站为二层的docker环境内,不影响总体操作。且为了增加难度,在PC1和PC2安装了某安全软件,于是拓扑变成了下面这样:

记一次域渗透靶场学习过程

记得开启相关服务,在各个机器上。

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

记一次域渗透靶场学习过程

发现开放22端口与8000,访问8000,发现是一个Laravel的网站。

记一次域渗透靶场学习过程

而这个版本的框架是存在一个rce漏洞的,即Laravel <= v8.4.2 debug mode: Remote code execution (CVE-2021-3129)。使用POC测试,发现的确可以成功利用

使用一键化工具,写入一个webshell进去就行啦,蚁剑连接:

记一次域渗透靶场学习过程

进入终端时发现,主机信息处有些特殊:

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环境

记一次域渗透靶场学习过程

0x04 docker逃逸

下面我们要做的就是docker逃逸了,不过目前我们仅仅是一个www权限,所以来进行提权。看了看版本信息,且目标机器存在gcc,此时我们完全可以使用内核提权

记一次域渗透靶场学习过程

不过根据靶机的信息,我们这里也使用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 {} ;

记一次域渗透靶场学习过程

发现存在一个shell程序,尝试运行该文件

记一次域渗透靶场学习过程

发现其就是在执行ps命令而已,此时我们可以使用路径劫持的方法,来获取一个高权限的shell,首先使用蚁剑反弹一个shell回来

然后替换环境以获取到了一个root的shell.这里可以直接获取一个Cs的shell回来或者是MS的shell.

记一次域渗透靶场学习过程

这里为了方便起见,就没有在root的环境下获得会话。下面就是docker逃逸了,在之前我打类似的靶机的时候也遇到docker逃逸的情况,一般使用漏洞进行逃逸或者使用特权模式进行逃逸,我们这里使用特权模式进行逃逸。

即当控制使用特权模式启动的容器时,docker管理员可通过mount命令将外部宿主机磁盘设备挂载进容器内部,获取对整个宿主机的文件读写权限,此外还可以通过写入计划任务等方式在宿主机执行命令。此时查看设备时,会发现拥有很多的设备。

记一次域渗透靶场学习过程

然后新建目录并挂载目录:

mkdir /abc mount /dev/sda1 /abc
最终我们可以通过访问容器内部的/abc路径来达到访问整个宿主机的目的:ls /abc

记一次域渗透靶场学习过程

下面就是写文件或者写计划任务上线即可。

记一次域渗透靶场学习过程

顺便获得了密码文件的内容。通过查看网卡信息,发现后面的192.168.93.0的网段以及本网段192.168.52.0,下面就是横向移动了。

记一次域渗透靶场学习过程

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代理进去。

记一次域渗透靶场学习过程

发现目标网段内具有30这个主机,我们再对其进行信息收集。发现其开放了8082端口

访问之,发现是一个OA系统

记一次域渗透靶场学习过程

下面就好说了,拿shell就可以了。首先伪造session登录后台。

记一次域渗透靶场学习过程

然后附件添加一个存储

记一次域渗透靶场学习过程

选择 组织-管理员-附件上传-txt,抓包修改

记一次域渗透靶场学习过程

抓包修改,绕过黑名单 txt修改为 php.

挂好代理,蚁剑成功连接

记一次域渗透靶场学习过程

但此时我们是无法执行命令的,因为有杀软的缘故,我们执行命令会被拦截

记一次域渗透靶场学习过程

绕过方法就是使用自定义终端
记一次域渗透靶场学习过程

然后我们就可以执行命令了,因为第二个网段是出网的,所以直接powershel上线即可

然后就是提权、抓密码一条龙

记一次域渗透靶场学习过程

0x06获取域控

而且因为该机器使用域管理员来启动OA的缘故,机器上也存在域管信息,直接拿到域管密码。

记一次域渗透靶场学习过程

通过net view发现其93段下面的其他机器

记一次域渗透靶场学习过程

发现DC字样,因为我们已经有了域管的密码,直接横向过去

记一次域渗透靶场学习过程

均失败,没关系我们使用net use来做,尝试关闭它的防火墙,然后再横向。

记一次域渗透靶场学习过程

拿下域控。然后我们继续横向下一台机器,因为有火绒的存在,我们没有办法直接横向过去,我们选择使用net use的方法把我们的免杀马复制过去,然后在获取session。

记一次域渗透靶场学习过程

至此整个域已经拿下。导出信息,方便以后学习。

记一次域渗透靶场学习过程



END



【版权说明】本作品著作权归带头大哥所有,授权补天漏洞响应平台独家享有信息网络传播权,任何第三方未经授权,不得转载。




记一次域渗透靶场学习过程
带头大哥

一位神秘而优秀的补天白帽子






记一次域渗透靶场学习过程


分享、点赞、在看,一键三连,yyds。
记一次域渗透靶场学习过程



本文始发于微信公众号(补天平台):记一次域渗透靶场学习过程

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: