Extracts cached credentials, password hashes, Kerberos tickets, and auth tokens from memory dumps using Volatility, pypykatz, and Mimikatz for digital forensics and incident response.
npx claudepluginhub killvxk/cybersecurity-skills-zhThis skill uses the workspace's default tool permissions.
- 在事件响应中确定攻击者可以访问哪些凭据时
Extracts cached credentials, password hashes, Kerberos tickets, and authentication tokens from memory dumps using Volatility and Mimikatz for forensic investigation and incident response.
Extracts cached credentials, password hashes, Kerberos tickets, and tokens from memory dumps using Volatility, Mimikatz, and pypykatz for incident response and forensics.
Uses Volatility 3 to analyze RAM dumps for malware execution, process injection, network connections, and credential theft evidence. For incident response, DFIR, and memory forensics investigations.
Share bugs, ideas, or general feedback.
# 安装分析工具
pip install volatility3 pypykatz
# 验证内存转储完整性
sha256sum /cases/case-2024-001/memory/memory.raw
# 识别操作系统版本
vol -f /cases/case-2024-001/memory/memory.raw windows.info
# 验证 LSASS 进程是否存在于内存中
vol -f /cases/case-2024-001/memory/memory.raw windows.pslist | grep -i lsass
# 输出示例:
# PID PPID ImageFileName Offset(V) Threads Handles SessionId
# 684 564 lsass.exe 0xffffe00123456 35 1234 0
# 从内存转储 SAM 数据库哈希
vol -f /cases/case-2024-001/memory/memory.raw windows.hashdump \
| tee /cases/case-2024-001/analysis/hashdump.txt
# 提取 LSA 机密
vol -f /cases/case-2024-001/memory/memory.raw windows.lsadump \
| tee /cases/case-2024-001/analysis/lsadump.txt
# 提取已缓存的域凭据
vol -f /cases/case-2024-001/memory/memory.raw windows.cachedump \
| tee /cases/case-2024-001/analysis/cachedump.txt
# 转储 LSASS 进程内存(PID 来自步骤 1)
vol -f /cases/case-2024-001/memory/memory.raw windows.memmap --pid 684 --dump \
-o /cases/case-2024-001/analysis/lsass_dump/
# 重命名转储文件供 pypykatz/mimikatz 使用
mv /cases/case-2024-001/analysis/lsass_dump/pid.684.dmp \
/cases/case-2024-001/analysis/lsass.dmp
# 对完整内存转储运行 pypykatz
pypykatz lsa minidump /cases/case-2024-001/analysis/lsass.dmp \
> /cases/case-2024-001/analysis/pypykatz_results.txt 2>&1
# 解析 pypykatz 输出进行结构化分析
python3 << 'PYEOF'
import json, subprocess
result = subprocess.run(
['pypykatz', 'lsa', 'minidump', '/cases/case-2024-001/analysis/lsass.dmp', '-j'],
capture_output=True, text=True
)
if result.stdout:
data = json.loads(result.stdout)
print("=== 提取的凭据 ===\n")
for session_key, session in data.get('logon_sessions', {}).items():
username = session.get('username', 'Unknown')
domain = session.get('domainname', '')
if username and username != '(null)':
print(f"会话:{domain}\\{username}")
print(f" SID:{session.get('sid', '')}")
for cred in session.get('msv_creds', []):
if cred.get('NThash'):
print(f" NTLM 哈希:{cred['NThash']}")
for cred in session.get('wdigest_creds', []):
if cred.get('password'):
print(f" WDigest 明文密码:{cred['password']}")
PYEOF
# 在内存中搜索身份验证令牌和 API 密钥
vol -f /cases/case-2024-001/memory/memory.raw windows.strings --pid 684 | \
grep -iE '(bearer |authorization:|api[_-]key|token=|password=|secret=)' \
> /cases/case-2024-001/analysis/auth_strings.txt
# 在内存中搜索云凭据
vol -f /cases/case-2024-001/memory/memory.raw windows.strings | \
grep -iE '(AKIA[A-Z0-9]{16}|aws_secret_access_key)' \
> /cases/case-2024-001/analysis/aws_credentials.txt
| 概念 | 描述 |
|---|---|
| LSASS(本地安全认证子系统服务) | 管理身份验证并在内存中存储凭据的 Windows 进程 |
| NTLM 哈希 | 用于身份验证的用户密码 NT LAN Manager 哈希 |
| Kerberos TGT | 允许请求服务票据的票据授予票据 |
| WDigest | 在内存中以明文存储密码的遗留身份验证协议(Win8.1 之前) |
| DPAPI | 使用从用户凭据派生的主密钥的数据保护 API |
| DCC2(域缓存凭据) | 用于离线登录的已缓存域密码哈希 |
| LSA 机密 | 由 LSA 存储的加密服务账户密码和其他机密 |
| 哈希传递 | 使用提取的 NTLM 哈希而无需知道明文密码的攻击技术 |
| 工具 | 用途 |
|---|---|
| Volatility 3 | 带有 hashdump、lsadump、cachedump 插件的内存取证框架 |
| pypykatz | 用于跨平台 LSASS 分析的 Mimikatz Python 实现 |
| Mimikatz | Windows 凭据提取工具(用于对转储进行离线分析) |
| secretsdump.py | 从 SAM/SYSTEM/SECURITY 提取机密的 Impacket 工具 |
| hashcat | 恢复的 NTLM 和 DCC2 哈希密码破解工具 |
| Impacket | 用于 Windows 网络协议和凭据的 Python 工具包 |
场景 1:违规后凭据评估 从 LSASS 内存中提取所有已缓存的凭据以确定哪些账户已暴露,根据权限级别优先重置密码,检查黄金票据材料(krbtgt 哈希),评估云凭据是否可被访问。
场景 2:横向移动调查 提取 NTLM 哈希和 Kerberos 票据以了解攻击者如何在系统间移动,识别哈希传递/票据传递制品,将提取的凭据与事件日志中的网络登录事件相关联。
场景 3:勒索软件操作者凭据窃取 分析加密前的内存转储以获取 Mimikatz 执行证据,提取所有可用的凭据类型,确定是否获取了域管理员凭据,评估 krbtgt 是否已泄露(黄金票据),制定凭据轮换策略。
场景 4:端点云凭据窃取 在端点内存中搜索 AWS 访问密钥、Azure 令牌和 CLI 工具及浏览器存储的 GCP 服务账户密钥,识别暴露的云权限,立即轮换发现的凭据,审计云审计日志中的未授权访问。