extracting-credentials-from-memory-dump
使用 Volatility 和 Mimikatz 从内存转储中提取缓存的凭据、密码哈希、Kerberos 票据和身份验证令牌,用于取证调查。
Best use case
extracting-credentials-from-memory-dump is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
使用 Volatility 和 Mimikatz 从内存转储中提取缓存的凭据、密码哈希、Kerberos 票据和身份验证令牌,用于取证调查。
Teams using extracting-credentials-from-memory-dump should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/extracting-credentials-from-memory-dump/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How extracting-credentials-from-memory-dump Compares
| Feature / Agent | extracting-credentials-from-memory-dump | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
使用 Volatility 和 Mimikatz 从内存转储中提取缓存的凭据、密码哈希、Kerberos 票据和身份验证令牌,用于取证调查。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 从内存转储中提取凭据
## 适用场景
- 在事件响应中确定攻击者可以访问哪些凭据时
- 评估违规后凭据泄露的范围时
- 识别需要立即重置密码的账户时
- 调查横向移动及哈希传递(Pass-the-Hash)/票据传递(Pass-the-Ticket)攻击时
- 从进程内存中恢复加密密钥或身份验证令牌时
## 前置条件
- raw、ELF 或崩溃转储格式的内存转储文件
- 带有 Windows 符号表的 Volatility 3
- Mimikatz(用于对提取的 LSASS 转储进行离线分析)
- pypykatz(Mimikatz 的 Python 实现,用于基于 Linux 的分析)
- 了解 Windows 身份验证(NTLM、Kerberos、DPAPI)
- 凭据提取的适当法律授权
## 工作流程
### 步骤 1:准备工具并验证内存转储
```bash
# 安装分析工具
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
```
### 步骤 2:使用 Volatility 提取凭据哈希
```bash
# 从内存转储 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
```
### 步骤 3:转储 LSASS 进程内存进行详细分析
```bash
# 转储 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
```
### 步骤 4:使用 pypykatz 提取凭据
```bash
# 对完整内存转储运行 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
```
### 步骤 5:提取 Kerberos 票据和令牌
```bash
# 在内存中搜索身份验证令牌和 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 服务账户密钥,识别暴露的云权限,立即轮换发现的凭据,审计云审计日志中的未授权访问。Related Skills
performing-paste-site-monitoring-for-credentials
使用自动化抓取和关键词匹配技术,监控 Pastebin 和 GitHub Gists 等粘贴站点上的泄露凭证、API 密钥和敏感数据转储,实现早期泄露检测
performing-memory-forensics-with-volatility3
使用 Volatility 3 分析易失性内存转储,以提取运行中的进程、网络连接、加载的模块以及恶意活动的证据。
performing-memory-forensics-with-volatility3-plugins
使用 Volatility3 插件分析内存转储,检测 Windows、Linux 和 macOS 内存镜像中的注入代码、Rootkit、凭据窃取和恶意软件痕迹。
implementing-memory-protection-with-dep-aslr
实施内存保护机制,包括 DEP(数据执行防护)、ASLR(地址空间布局随机化)、 CFG(控制流防护)和其他漏洞利用缓解措施,以防御内存损坏攻击。适用于加固端点 以抵御缓冲区溢出利用、ROP 链和代码注入的场景。适用于涉及内存保护、漏洞利用缓解、 DEP、ASLR 或 CFG 配置的请求。
extracting-windows-event-logs-artifacts
使用 Chainsaw、Hayabusa 和 EvtxECmd 提取、解析和分析 Windows 事件日志(EVTX),以检测横向移动、持久化和权限提升。
extracting-memory-artifacts-with-rekall
使用 Rekall 内存取证框架分析内存转储,检测进程空洞化(process hollowing)、通过 VAD 异常注入的代码、隐藏进程和 rootkit。应用 pslist、psscan、vadinfo、malfind 和 dlllist 等插件从 Windows 内存镜像中提取取证工件。适用于应急响应内存分析场景。
extracting-iocs-from-malware-samples
从恶意软件样本中提取攻陷指标(IoC),包括文件哈希、网络指标(IP、域名、URL)、 主机痕迹(文件路径、注册表键、互斥锁)以及行为模式,用于威胁情报共享和检测规则创建。 适用于 IoC 提取、威胁指标采集、恶意软件指标收集或从样本构建检测内容等请求场景。
extracting-config-from-agent-tesla-rat
从 Agent Tesla RAT 样本中提取嵌入的配置信息,包括 SMTP/FTP/Telegram 数据泄露凭据、键盘记录器设置和 C2 端点,使用 .NET 反编译和内存分析技术。
extracting-browser-history-artifacts
从 Chrome、Firefox 和 Edge 中提取并分析浏览器历史记录、Cookie、缓存、下载记录和书签,以获取用户网络活动的取证证据。
detecting-t1003-credential-dumping-with-edr
利用 EDR 遥测数据、Sysmon 进程访问监控和 Windows 安全事件关联,检测针对 LSASS 内存、SAM 数据库、NTDS.dit 和缓存凭据的 OS 凭据转储技术。
detecting-credential-dumping-with-edr
使用 EDR 遥测和 Sysmon 日志检测操作系统凭据转储技术,包括 LSASS 访问、SAM 提取和 DCSync。
detecting-credential-dumping-techniques
使用 Sysmon 事件 ID 10、Windows 安全日志和 SIEM 关联规则检测 LSASS 凭据转储、SAM 数据库提取和 NTDS.dit 盗窃