683 字
3 分钟
网页版 SecretDump:浏览器里离线提取 Windows 哈希(SAM + NTDS.dit)

🔧 工具简介#

网页版 SecretDump 是 impacket secretsdump.py 的浏览器端复刻:纯前端单 HTML 文件,零后端、零外部依赖、离线可用。所有解析都在你自己的浏览器内存里完成,文件不会上传到任何服务器。

✨ 功能#

输入输出
SYSTEMbootkey(SysKey 置换还原)
SYSTEM + SAM本地用户:RID / 用户名 / 全名 / 备注 / NTLM + LM 哈希(XP 与 Vista+ 加密自动识别)
SYSTEM + SECURITYLSA 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、PEK ddb6a826834aad5816b4c80b5220276b
  • 解出 19 个域用户哈希(Administrator / krbtgt / 各 stark 家族成员 / sql_svc …),与题目自带 impacket secretsdump 输出逐用户 21/21 完全一致
  • 33.5MB 的 ntds.dit 浏览器内解析约 103ms
  • 解题链路:secretsdump 提哈希 → 字典爆破 → 解 flag.zipDASCTF{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)