#少女前線 416とM16A1のあの頃 - 反骨MAX
683 字
3 分钟
网页版 SecretDump:浏览器里离线提取 Windows 哈希(SAM + NTDS.dit)
🔧 工具简介
网页版 SecretDump 是 impacket secretsdump.py 的浏览器端复刻:纯前端单 HTML 文件,零后端、零外部依赖、离线可用。所有解析都在你自己的浏览器内存里完成,文件不会上传到任何服务器。
✨ 功能
| 输入 | 输出 |
|---|---|
SYSTEM | bootkey(SysKey 置换还原) |
SYSTEM + SAM | 本地用户:RID / 用户名 / 全名 / 备注 / NTLM + LM 哈希(XP 与 Vista+ 加密自动识别) |
SYSTEM + SECURITY | LSA Secrets(Syskey、DefaultPassword 等,尽力而为) |
SYSTEM + ntds.dit | 域用户:RID / sAMAccountName / NTLM + LM 哈希(ESE 数据库解析 + PEK 解密) |
- 拖拽即用,按文件名/内容特征自动识别 hive 角色(可手动改)
- 输出 impacket 格式
用户:rid:LM:NT:::,一键复制 / 下载 .txt - 深色主题为主、支持亮色切换、手机可用、解析进度提示
- SAM(本地模式)与 NTDS(域模式)可共存,都给就都显示
🧪 实战验证:真实 CTF 题全链路
用一道真实 DASCTF 题(Simple_Domain,只给 system + ntds 两个文件)做了端到端验证:
- 提取 bootkey
AE5564D04E225CCBA0D2643161C48B10、PEKddb6a826834aad5816b4c80b5220276b - 解出 19 个域用户哈希(Administrator / krbtgt / 各 stark 家族成员 / sql_svc …),与题目自带 impacket
secretsdump输出逐用户 21/21 完全一致 - 33.5MB 的 ntds.dit 浏览器内解析约 103ms
- 解题链路:secretsdump 提哈希 → 字典爆破 → 解
flag.zip→DASCTF{dbd13e1c4e338284ac4e9874f7de6ef9}✅
验证过程中还顺带修掉了三个真实 hive 才会暴露的兼容问题(cell 大小负补码、压缩 ASCII 键名、bootkey class 的 UTF-16LE 十六进制存储),合成测试数据测不出来的坑全被真实验证抓出来了。
⚠️ 已知限制
- 不支持事务日志(.LOG)hive、在线注册表、脏 hive 未提交数据
- LSA Secrets 因 Windows 版本差异采用可读性评分自动选最佳解释,极端变体可能需手动看 hex
- 不输出 Kerberos keys 与 hash history(对应 impacket
-just-dc/-history附加输出)
🤖 AI 制作信息
| 项目 | 内容 |
|---|---|
| 编写 | dsh(DeepSeek Harness,模型 deepseek-v4-flash,reasoning High) |
| 代码形态 | 单文件 HTML(内联 CSS/JS,零外部依赖,含纯 JS 的 MD5/RC4/AES/DES 实现) |
| 测试 | 合成 hive 34 项断言 + UI 冒烟 17 项 + 真实 CTF 数据与 impacket 对比 21 项,全部通过 |
| 参考 | impacket secretsdump / secretsdump.com(Rust/WASM 版) |
本次编写用量(两个 dsh 会话合计):输入 89.8M tokens(缓存命中 89.3M,命中率 99.45%)· 输出 308.9K tokens(推理 184.3K)· 谷时半价约 ¥6.7。
📝 改动日志
- 2026-08-17:新增 NTDS.dit(ESE)支持:PEK 解密(v2 RC4 / v3 AES-CBC 双路径)、DES-ECB 哈希解密、多域森林 SID 过滤;修复真实 hive 兼容问题(cell 负补码 / 压缩 ASCII 键名 / bootkey class UTF-16LE hex);用真实 CTF 题(Simple_Domain)全链路验证通过
- 2026-08-17:初版完成(SAM/SYSTEM/SECURITY + LSA Secrets)