靶机来自HTB
攻击路径
立足点:SMB共享获取敏感文件->破解压缩包密码->破解pfx文件密码->提取证书与私钥->登录winRM
提权:用ps历史中发现的密码登录srv_deploy->发现用户组有LAPS_Readers_>读取admin密码提权
信息整理
端口扫描结束后,得到许多信息
从端口开放情况可以判断这是一台域控,由于端口信息过多,进行其他扫描行为时手动输入不够优雅,这里学了一个处理输出结果的trick:
|
|
其中,grep open ...
用于从输出中提取以开放的端口信息,awk -F '/' '{print $1}'
负责将提取的部分从/
分列,并取第一列的内容,也就是端口的数字,paste -sd ','
用于将结果输出为一行并用逗号分隔
最终结果如下:
|
|
可以将其赋值给变量,在之后随时调用,大大缩短了操作时间,且十分优雅
SMB渗透
爆破压缩包
从SMB的Shares目录中获取到了压缩包winrm_backup.zip
,解压需要密码
这里可以用两种方式进行密码爆破,其一是使用fcrackzip
直接爆破:
|
|
其二便是将压缩包转码为hash,用john进行破解,这种方式更推荐
|
|
解压获得legacyy_dev_auth.pfx
文件
提取证书与密钥
这里涉及了x.509相关的知识,pfx是一种归档文件,可同时存储证书、私钥等内容,在IBM的官方文档下告诉了我们如何提取其中的证书与私钥
但是解密仍需要密码,和之前一样,通过转码后用john破解的方式
提取出的私钥解密后即可使用,用证书与私钥登录winrm,获取系统立足点
|
|
域信息收集
net user
查看当前用户详细信息:
可以看到属于开发组,值得留意一下
通过查看powershell历史记录,获取到另一个用户srv_deploy
的明文密码,直接winrm登录
而在该用户的详细信息中。可看到所属用户组中有LAPS_Readers
LAPS机制
本地管理员密码解决方案(LAPS)是一个用于管理域加入计算机的工具,其中 管理员密码 是 唯一、随机且经常更改 的,这些密码安全地存储在活动目录中,并且只有被授权通过访问控制列表(ACL)的用户才能访问。客户端到服务器的密码传输安全性通过使用 Kerberos 版本 5 和 高级加密标准(AES)来确保。具体请看LAPS。
由于当前用户有LAPS权限
,因此尝试使用官网的命令去读取
但由于powershell版本不同,目标主机没有这条命令,因此换个思路,使用AD管理的命令,去获取当前主机的扩展成员
|
|
成功读取到Admin的明文密码
这是由于LAPS的机制所致,LAPS中存储的密码可以以明文或密文两种方式存储,若是密文就需要对其进行破解
之后就可以用该密码连接Adminisrator权限的winRM
总结
这台靶机开放的端口较多,可据此判断是一台域控;通过grep等命令可实现关键信息的整理,如ip、端口等信息,相较于手动输入更加优雅;获取立足点期间进行了多次爆破密码,均可使用转码为hash后用john进行爆破的方式,效率最高;提权部分涉及了较多Windows运维方面的知识,最终通过读取LAPS密码成功获取到Administrator权限