基于“启发式判定”的TrueCrypt/VeraCrypt容器文件定位突破

admin 2026-11-13 10:44:18 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

基于“启发式判定”的TrueCrypt/VeraCrypt容器文件定位突破

原创

MicroPest
MicroPest

MicroPest

2026年11月11日 19:35
安徽

去阅读

一直在搜寻Truecrypt/Veracrypt加密容器文件的准确性上进行“孜孜不倦地改进”,有《搜寻VC/TC容器文件的进一步研究》等佐证,但始终未有一个突破性进展。

一、定位突破

移植了上一篇《TC/VC加密容器的密码破解(二):测试验证》中py代码实现原理到delphi中,以前模棱两可的文件,现在基本可以作出判定了(引入了“启发式判定”),迎来了新突破。如下图:

二、一些思考

1、判定器本身(打分 0–10)

信号 判据 加分/扣分
扇区对齐 大小是 512 倍数 +2
卷头随机性 4 个候选偏移 512B 熵 ≥ 7.0 +2(偏移0),+1(≥2处)
全文件熵 采样熵 ≥ 7.8 +3
已知格式魔数 命中 ZIP/PDF/PNG/RAR/7z/ISO…(23 种) −4
文本启发式 头部可打印字符 ≥ 75% −2

Verdict 判定映射:

≥8 → 可能是 TrueCrypt/VeraCrypt 容器(high);

≥6 → 同串(medium);

≥4 → 可能是加密数据(特征不全);

<4 → 不太像是加密容器。

2、实测验证

样本 score Verdict 评价
检测样本二/1、/2、/4(真容器) 8 / high 可能是 TC/VC 容器 ✅ 正确
检测样本二/3.part1.rar(RAR 分卷) 2 不太像是加密容器 ✅ 魔数命中排除
检测样本二/3.7z.001(7z 分卷) 4 可能是加密数据(特征不全) ✅ 7z 魔数扣分
检测样本一/20200501(20MB 随机) 8 / high 可能是 TC/VC 容器 ⚠️ 已知误报

3、核心结论(最重要的一点)

启发式 Verdict 只能预筛,不能定性。

  • 加密数据与纯随机数据在字节层面统计同分布(卷头熵都 ~7.5–7.63,全文件熵 ~8.0),所以随机文件也会被误判为\"可能是容器\"——上面第 4 行就是实例。
  • 因此判定结论列的 Verdict 只是初步排序/筛查,最终结论必须由这两级给出:
  1. uVCDetect(结构判定)

:魔数 + 卷结构特征,给出确认/排除——这也是为什么判定结论列要附加 结构排除 / VC/TC-…,用来纠正误报;
2. uVeraCrypt.VcVerify(密码验证)

:双 CRC-32 + 魔数,误判率 2⁻⁹⁶,唯一确定性结论。

评论:0   参与:  0