_ _____ _______ _ _ _______ _______ _____ _______ _ _
| | | | |____/ |______ | | | | | |_____|
|_____ |_____| |_____ | \_ ______| | | | __|__ | | |
.--. .--. .--.
/.-. '----------. /.-. '----------. /.-. '----------.
\'-' .---'-''-'-' \'-' .--'--''-'-' \'-' .--'--'-''-'
'--' '--' '--'
一个用于查找并修复 Active Directory 证书服务中常见错误配置的小工具。
打开 PowerShell 提示符,然后从 PowerShell 库安装 Locksmith:
Install-Module -Name Locksmith -Scope CurrentUser
下载并直接使用模块(无需安装)
Unblock-File .\Locksmith.zip # if necessary to unblock the download
Expand-Archive .\Locksmith.zip
Import-Module .\Locksmith\Locksmith.psd1
Invoke-Locksmith
下载独立脚本(无需模块)
Unblock-File .\Invoke-Locksmith.zip
Expand-Archive .\Invoke-Locksmith.zip -DestinationPath .\
.\Invoke-Locksmith.ps1
运行 Invoke-Locksmith 时有多种模式可供选择。你还可以使用 Scans 参数来选择要执行的扫描。
不带参数或使用 -Mode 0 运行 Invoke-Locksmith.ps1 将扫描当前 Active Directory 林,并以表格式将所有发现的 AD CS 问题输出到控制台。
# Module Syntax
Invoke-Locksmith
# Script Syntax
.\Invoke-Locksmith.ps1
模式 0 的示例输出:https://github.com/jakehildreth/Locksmith/blob/main//Docs/Examples/Mode0.md
此模式扫描当前林,并以列表格式将所有发现的 AD CS 问题和可能的修复方案输出到控制台。
# Module Syntax
Invoke-Locksmith -Mode 1
# Script Syntax
.\Invoke-Locksmith.ps1 -Mode 1
模式 1 的示例输出:https://github.com/jakehildreth/Locksmith/blob/main/Docs/Examples/Mode1.md
Locksmith 模式 2 扫描当前林,并将所有发现的 AD CS 问题输出到当前工作目录下的 ADCSIssues.CSV 文件中。
# Module Syntax
Invoke-Locksmith -Mode 2
# Script Syntax
.\Invoke-Locksmith.ps1 -Mode 2
模式 2 的示例输出:https://github.com/jakehildreth/Locksmith/blob/main/Docs/Examples/Mode2.md
在模式 3 中,Locksmith 扫描当前林,并将所有发现的 AD CS 问题及示例修复方案输出到当前工作目录下的 ADCSRemediation.CSV 文件中。
# Module Syntax
Invoke-Locksmith -Mode 3
# Script Syntax
.\Invoke-Locksmith.ps1 -Mode 3
模式 3 的示例输出:https://github.com/jakehildreth/Locksmith/blob/main/Docs/Examples/Mode3.md
模式 4 是“一键解决”按钮。以模式 4 运行 Locksmith 将识别所有错误配置,并逐一提供修复选项。如果任何修复可能存在运维影响,Locksmith 会向你发出警告。
# Module Syntax
Invoke-Locksmith -Mode 4
# Script Syntax
.\Invoke-Locksmith.ps1 -Mode 4
模式 4 的示例输出:https://github.com/jakehildreth/Locksmith/blob/main/Docs/Examples/Mode4.md
使用 -Scans 参数选择要扫描的漏洞。可接受的值包括 All、Auditing、ESC1、ESC2、ESC3、ESC4、ESC5、ESC6、ESC7、ESC8、ESC9、ESC11、ESC13、ESC15、EKEUwu、 或 。 选项会显示一个交互式列表,允许你选择一个或多个扫描。
# Run all scans
Invoke-Locksmith -Scan All
# Prompt the user for a list of scans to select
Invoke-Locksmith.ps1 -Scans PromptMe
# Scan for ESC1 vulnerable paths
Invoke-Locksmith.ps1 -Scans ESC1
# Scan for ESC1, ESC2, and ESC8 vulnerable paths
Invoke-Locksmith.ps1 -Scans ESC1,ESC2,ESC8
如需报告漏洞,请参阅安全策略。 如需使用问题和支持指南,请参阅支持。
感谢你使用 Locksmith!💜
ESC16PromptMePromptMe