Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
PowerHuntShares — 审计 Active Directory SMB 共享,以盘点、分析和报告过度权限。发现可访问系统,枚举共享 ACL,识别高风险配置,并生成 HTML/CSV 报告以进行修复优先级排序。 | Kitploit
工具/GitHubGitHub/netspi/powerhuntshares
漏洞分析配置审计信息收集网络安全渗透测试
GitHubnetspi/powerhuntshares

PowerHuntShares

审计 Active Directory SMB 共享,以盘点、分析和报告过度权限。发现可访问系统,枚举共享 ACL,识别高风险配置,并生成 HTML/CSV 报告以进行修复优先级排序。

查看仓库
1.0k1151511个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PowerHuntShares v2

PowerHuntShares 是一个 PowerShell 工具,旨在帮助网络安全团队和渗透测试人员更好地识别、理解、攻击和修复其保护的 Active Directory 环境中的 SMB 共享。每个黑客都有滥用 SMB 共享的故事,但网络安全团队仍然难以防御这一攻击面。该项目旨在提供一个开源的概念验证工具,用于创建全面的共享清单,利用统计、图表、图形和语言模型来情境化共享、总结关系、评估风险并优先修复。

它支持以下功能:

  • 认证:使用当前用户上下文、凭据或明文用户/密码。
  • 发现:自动发现与 Active Directory 域关联的可访问系统。它还会根据开放的端口过滤 Active Directory 计算机。
  • 定位:针对单台计算机、计算机列表或发现的 Active Directory 计算机(默认)。
  • 收集:使用 PowerShell 从目标计算机收集 SMB 共享 ACL 信息。
  • 分析:分析收集到的共享 ACL 数据。
  • 报告:以 HTML 和 CSV 文件格式生成摘要报告和过度权限详情。

额外功能:

  • 独立 LLM 函数:https://github.com/NetSPI/PowerHuntShares/blob/main/Scripts/Invoke-FingerPrintShare.ps1
  • 独立密码解析器:https://github.com/NetSPI/PowerHuntShares/tree/main/Scripts/ConfigParsers

PowerHuntShares v2 资源:

  • v2 博客:https://www.netspi.com/blog/technical-blog/network-pentesting/powerhuntshares-2-0-release/

PowerHuntShares v1 资源:

  • v1 博客:https://www.netspi.com/blog/technical/network-penetration-testing/network-share-permissions-powerhuntshares/
  • v1 演示视频:https://www.youtube.com/watch?v=TtwyQchCz6E
  • v1 演示幻灯片:https://github.com/NetSPI/PowerHuntShares/blob/main/Presentations/SO-CON_2025_Sutherland_Hunting_SMB_Shares_Final.pdf

词汇表

PowerHuntShares 会盘点配置了“过度权限”的 SMB 共享 ACL,并突出显示“高风险”ACL。以下是它们在此上下文中的定义。

过度权限
过度读取和写入共享权限定义为任何包含针对“Everyone”、“Authenticated Users”、“BUILTIN\Users”、“Domain Users”或“Domain Computers”组的显式 ACE(访问控制条目)的网络共享 ACL。由于权限继承问题,所有这些都允许域用户访问受影响的共享。请注意,有一个参数允许操作员添加自己的目标组。
以下是一些额外背景:

  • Everyone 是一个直接引用,适用于未经身份验证和经过身份验证的用户。通常只需要空会话即可访问这些资源。
  • BUILTIN\Users 包含 Authenticated Users
  • Authenticated Users 包含域加入系统上的 Domain Users。这就是为什么当共享权限分配给“BUILTIN\Users”时,Domain Users 可以访问共享。
  • Domain Users 是一个直接引用
  • Domain Users 默认可以创建最多 10 个计算机账户,这些账户会被放入 Domain Computers 组
  • 对域加入计算机具有本地管理访问权限的 Domain Users 也可以模拟计算机账户。

请注意:共享权限可能被 NTFS 权限覆盖。另外,请注意测试排除了包含以下关键字的共享名称:

print$, prnproc$, printer, netlogon, and sysvol

高风险共享
在本报告的上下文中,高风险共享定义为允许未经授权远程访问系统或应用程序的共享。 默认情况下,这包括共享

 wwwroot, inetpub, c$, 和 admin$   
然而,可能存在未特别指出的其他暴露。

设置命令

以下是可以用于将 PowerHuntShares 加载到当前 PowerShell 会话中的命令列表。请注意,每次运行 PowerShell 时都必须运行其中一个。它不是持久性的。

# 绕过执行策略限制
Set-ExecutionPolicy -Scope Process Bypass

# 导入当前目录中的模块
Import-Module .\PowerHuntShares.psm1

或

# 降低 SSL 操作级别以支持连接到 github
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
[Net.ServicePointManager]::SecurityProtocol =[Net.SecurityProtocolType]::Tls12

# 下载并将 PowerHuntShares.psm1 加载到内存中
IEX(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/NetSPI/PowerHuntShares/main/PowerHuntShares.psm1")

示例命令

重要提示:所有命令都应以非特权域用户的身份运行。

.EXAMPLE 1: 从域计算机运行。默认执行 Active Directory 计算机发现。
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test 

.EXAMPLE 2: 使用备用域凭据从域计算机运行。默认执行 Active Directory 计算机发现。
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test -Credential domain\user

.EXAMPLE 3: 以当前用户身份从域计算机运行。目标主机在文件中指定,每行一个。
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test  -HostFile c:\temp\hosts.txt      

.EXAMPLE 4: 使用凭据从非域计算机运行。默认执行 Active Directory 计算机发现。
C:\temp\test> runas /netonly /user:domain\user PowerShell.exe
PS C:\temp\test> Import-Module PowerHuntShares.psm1
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -RunSpaceTimeout 10 -OutputDirectory c:\folder\ -DomainController 10.1.1.1 -Credential domain\user 
===============================================================
PowerHuntShares
===============================================================
 此函数自动执行以下任务:     

 o 确定当前计算机的域
 o 枚举域计算机        
 o 过滤响应 ping 请求的计算机          
 o 过滤 TCP 445 端口开放且可访问的计算机  
 o 枚举 SMB 共享 
 o 枚举 SMB 共享权限   
 o 识别具有潜在过度权限的共享       
 o 识别提供读取和写入访问权限的共享           
 o 识别高风险的共享
 o 识别常见的共享所有者、名称和目录列表   
 o 生成创建、最后写入和最后访问时间线
 o 生成 html 摘要报告和详细的 csv 文件         

 注意:在大型环境中运行可能需要数小时。       
---------------------------------------------------------------
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---------------------------------------------------------------
共享发现      
---------------------------------------------------------------
[*][03/01/2021 09:35] 扫描开始
[*][03/01/2021 09:35] 输出目录: c:\temp\smbshares\SmbShareHunt-03012021093504
[*][03/01/2021 09:35] 成功连接域控制器: dc1.demo.local
[*][03/01/2021 09:35] 对 demo.local 域关联的计算机执行 LDAP 查询
[*][03/01/2021 09:35] - 找到 245 台计算机
[*][03/01/2021 09:35] Ping 245 台计算机
[*][03/01/2021 09:35] - 55 台计算机响应了 ping 请求。
[*][03/01/2021 09:35] 检查 55 台计算机的 TCP 端口 445 是否开放
[*][03/01/2021 09:36] - 49 台计算机的 TCP 端口 445 开放。
[*][03/01/2021 09:36] 从 49 台计算机获取 SMB 共享列表
[*][03/01/2021 09:36] - 找到 217 个 SMB 共享。
[*][03/01/2021 09:36] 从 217 个 SMB 共享获取共享权限
[*][03/01/2021 09:37] - 枚举了 374 个共享权限。
[*][03/01/2021 09:37] 从 33 个 SMB 共享获取目录列表
[*][03/01/2021 09:37] - 目标最多 3 层嵌套目录
[*][03/01/2021 09:37] - 枚举了 563 个文件和文件夹。
[*][03/01/2021 09:37] 识别潜在的过度共享权限
[*][03/01/2021 09:37] - 在 12 个系统上发现 33 个潜在的过度权限。
[*][03/01/2021 09:37] 扫描完成
---------------------------------------------------------------
共享分析      
---------------------------------------------------------------
[*][03/01/2021 09:37] 分析开始
[*][03/01/2021 09:37] - 在 12 个系统上,14 个共享可读取。
[*][03/01/2021 09:37] - 在 1 个系统上,1 个共享可写入。
[*][03/01/2021 09:37] - 在 32 个系统上,46 个共享被视为非默认共享。
[*][03/01/2021 09:37] - 在 0 个系统上,0 个共享被视为高风险。
[*][03/01/2021 09:37] - 识别了过度共享的前 5 位所有者。
[*][03/01/2021 09:37] - 识别了前 5 个共享组。
[*][03/01/2021 09:37] - 识别了前 5 个共享名称。
[*][03/01/2021 09:37] - 识别了过去 90 天内创建的共享。
[*][03/01/2021 09:37] - 识别了过去 90 天内访问过的共享。
[*][03/01/2021 09:37] - 识别了过去 90 天内修改过的共享。
[*][03/01/2021 09:37] 分析完成
---------------------------------------------------------------
共享报告摘要      
---------------------------------------------------------------
[*][03/01/2021 09:37] 域: demo.local
[*][03/01/2021 09:37] 开始时间: 03/01/2021 09:35:04
[*][03/01/2021 09:37] 结束时间: 03/01/2021 09:37:27
[*][03/01/2021 09:37] 运行时间: 00:02:23.2759086
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] 计算机摘要
[*][03/01/2021 09:37] - 找到 245 台域计算机。
[*][03/01/2021 09:37] - 55 台 (22.45%) 域计算机响应了 ping。
[*][03/01/2021 09:37] - 49 台 (20.00%) 域计算机的 TCP 端口 445 可访问。
[*][03/01/2021 09:37] - 32 台 (13.06%) 域计算机拥有非默认共享。
[*][03/01/2021 09:37] - 12 台 (4.90%) 域计算机拥有可能具有过度权限的共享。
[*][03/01/2021 09:37] - 12 台 (4.90%) 域计算机拥有允许 READ 访问的共享。
[*][03/01/2021 09:37] - 1 台 (0.41%) 域计算机拥有允许 WRITE 访问的共享。
[*][03/01/2021 09:37] - 0 台 (0.00%) 域计算机拥有高风险共享。
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] 共享摘要
[*][03/01/2021 09:37] - 找到 217 个共享。我们预计至少有 98 个共享,
[*][03/01/2021 09:37]   因为 49 个系统开放了端口,并且通常有两个默认共享。
[*][03/01/2021 09:37] - 在 32 个系统上,46 个 (21.20%) 共享是非默认的。
[*][03/01/2021 09:37] - 在 12 个系统上,14 个 (6.45%) 共享配置了 33 个潜在的过度 ACL。
[*][03/01/2021 09:37] - 在 12 个系统上,14 个 (6.45%) 共享允许 READ 访问。
[*][03/01/2021 09:37] - 在 1 个系统上,1 个 (0.46%) 共享允许 WRITE 访问。
[*][03/01/2021 09:37] - 在 0 个系统上,0 个 (0.00%) 共享被视为高风险。
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] 共享 ACL 摘要
[*][03/01/2021 09:37] - 找到 374 个 ACL。
[*][03/01/2021 09:37] - 374 个 (100.00%) ACL 与非默认共享关联。
[*][03/01/2021 09:37] - 33 个 (8.82%) ACL 被确定为潜在的过度。
[*][03/01/2021 09:37] - 32 个 (8.56%) ACL 允许 READ 访问。
[*][03/01/2021 09:37] - 1 个 (0.27%) ACL 允许 WRITE 访问。
[*][03/01/2021 09:37] - 0 个 (0.00%) ACL 与高风险共享名称关联。
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] - 最常见的 5 个共享名称是:
[*][03/01/2021 09:37] - 14 个已发现的共享中,有 9 个 (64.29%) 与前 5 个共享名称关联。
[*][03/01/2021 09:37]   - 4 backup
[*][03/01/2021 09:37]   - 2 ssms
[*][03/01/2021 09:37]   - 1 test2
[*][03/01/2021 09:37]   - 1 test1
[*][03/01/2021 09:37]   - 1 users
[*] -----------------------------------------------

HTML 报告示例

摘要报告页面

Summary Report Page

感兴趣的文件页面

Interesting Files Page

下载工具