探索网络权限的利器:Check-LocalAdminHash
项目简介
Check-LocalAdminHash
是一个基于 PowerShell 的工具,用于通过 WMI 或 SMB 协议尝试对多台主机进行身份验证,以确定提供的密码散列是否能赋予本地管理员权限。这个工具在你获取了某个用户的密码散列并希望了解该凭证在哪个网络节点上有本地管理员权限时非常有用。它是 Invoke-TheHash
和 PowerView
这两个我最喜欢的工具的集成,并融入了一些自定义代码。
工具还包括了一个特殊功能,可选择性地从所有系统中提取 PowerShell 历史记录文件(PSReadline),这对于收集网络中的敏感信息如密码是非常有用的。了解更多详情,请访问官方博客。
项目技术分析
Check-LocalAdminHash
结合了 Kevin Robertson 的 Invoke-TheHash
和 Will Schroeder 与 Matt Graeber 的 PowerView
模块。Invoke-TheHash
负责凭证检查,而 PowerView
则用于枚举域内的计算机作为目标进行权限测试。通过这些组件,你可以对指定的用户名和散列密码,在不同协议和范围内的系统上执行本地管理员权限验证。
应用场景
- 在渗透测试或安全评估中,快速定位拥有本地管理员权限的账号在网络上的覆盖范围。
- 监控网络环境,检查是否存在未经授权的高权限账户活动。
- 在安全事件响应中,搜集证据,如 PSReadline 文件,以了解被攻击者利用的历史行为。
项目特点
- 多样化的认证方式:支持 WMI 和 SMB 两种协议,适应不同的网络环境。
- 灵活的目标选择:可以针对单个主机、文件列表中的多个主机,甚至是整个域进行扫描。
- 自动化 PSReadline 文件提取:一旦验证成功,工具将自动从每个系统中提取并上传 PowerShell 历史记录。
- 并行处理:可通过设置线程数(默认为5)实现多线程并发检测,提高效率。
- 安全控制:提供 CIDR 范围指定,以及 PSReadline 文件的安全上传选项。
使用示例
以下是几个基本用法的例子:
- 对所有通过 WMI 认证的主机进行检查:
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems
- 通过 SMB 协议上传 PSReadline 文件到服务器:
Check-LocalAdminHash ... -ExfilPSReadline
- 使用 CIDR 网段进行认证:
Check-LocalAdminHash -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -CIDR 192.168.1.0/24
通过这些简单的命令,你可以轻松地管理并控制你的网络安全审计工作。
不要忘记,为了 PSReadline 文件的提取与上传,你需要按照项目文档配置一个接收服务器,确保其安全性,如限制入站规则和启用 HTTPS。
Check-LocalAdminHash
不仅是一个强大的工具,也是一个教育性的资源,帮助你理解和掌握如何在安全领域利用 PowerShell 技术进行网络监控。现在就开始探索吧!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考