离线暴力破解漏洞:Verbatim安全便携SSD加密缺陷分析

本文披露了Verbatim Store 'n' Go安全便携SSD存在的高危加密漏洞。即使安装最新安全更新v1.0.0.6,攻击者仍可通过离线暴力破解获取密码和数据加密密钥,访问加密数据。漏洞涉及AES-XTS加密模式实现缺陷和密钥派生机制问题。

安全公告:[SYSS-2025-016]:Verbatim Store ’n’ Go安全便携SSD(安全更新v1.0.0.6)- 离线暴力破解攻击

公告ID:SYSS-2025-016
产品:Store ’n’ Go安全便携SSD
制造商:Verbatim
受影响版本:部件号#53402(GDMSLK02 C-INIC3637-V1.1)
测试版本:部件号#53402(GDMSLK02 C-INIC3637-V1.1)
漏洞类型:使用具有风险实现的加密原语(CWE-1240)
风险等级:高
解决方案状态:未解决
制造商通知:2025-02-21
解决方案日期:-
公开披露:2025-10-20
CVE参考:尚未分配
公告作者:Matthias Deeg, SySS GmbH

概述

Verbatim Store ’n’ Go安全便携SSD是一款便携式USB驱动器,采用AES 256位硬件加密,并配备用于输入密码的集成键盘。

制造商对该产品的描述如下:

“AES 256位硬件加密通过集成键盘实时无缝加密驱动器上的所有数据。该硬盘不会在计算机或系统易失性内存中存储密码,使其比软件加密更安全。此外,如果落入他人手中,在20次密码尝试失败后,硬盘将锁定并需要重新格式化。”

由于不安全的设计,即使安装了最新安全更新,Verbatim Store ’n’ Go安全便携SSD仍然容易受到离线暴力破解攻击,攻击者可以找出正确密码和相应的数据加密密钥,从而未经授权访问存储的加密数据。

漏洞详情

在分析安装了最新安全更新的Verbatim Store ’n’ Go安全便携SSD外部存储设备时,Matthias Deeg发现由于不安全的设计,仍然可以对此设备执行离线暴力破解攻击。

与2022年发布的关于旧固件版本的暴力破解攻击相比,具有最新固件版本的Verbatim Store ’n’ Go安全便携SSD使用了不同的AES加密模式(AES-XTS替代AES-ECB),并且验证输入密码的逻辑已更改。

尽管如此,攻击者仍然可以获取执行离线暴力破解攻击所需的所有数据。

该设备由以下四个主要部分组成:

  1. 采用M.2规格的SSD
  2. USB转SATA桥接控制器(INIC-3637EN)
  3. 包含INIC-3637EN固件的SPI闪存芯片(XT25F01D)
  4. 键盘控制器(未知芯片,标记为"SW611 2201")

对于存储在SSD上的数据加密,使用了INIC-3637EN的硬件AES引擎。最新安全更新的固件版本使用AES-XTS-256(基于XEX的带密文窃取的调整码本模式)。此操作模式需要512位XTS密钥和所谓的128位调整值来解密不同的磁盘扇区。

实际数据加密的加密密钥,即所谓的数据加密密钥(DEK),存储在SSD的特殊扇区中,该扇区又使用所谓的密钥加密密钥(KEK)进行加密。

该KEK源自输入的密码,密码长度在5到12位之间,可由键盘控制器生成。

当按下Verbatim Store ’n’ Go安全便携SSD上的解锁按钮时,生成的AES-XTS密钥的前半部分(32字节)通过SPI通信从键盘控制器传输到USB转SATA桥接控制器INIC-3637EN,与静态的AES-XTS密钥后半部分(32字节)一起配置相应的硬件AES引擎。

为了验证输入的密码,INIC-3637EN的固件使用提供的KEK读取并解密SSD上的特殊扇区,并检查特定数据偏移量以查找已知的字节模式。

如果此检查成功,则输入的密码及其派生的AES-XTS密钥被视为正确,使固件能够访问解密的DEK,然后可用于解密实际用户数据。

Verbatim Store ’n’ Go安全便携SSD的上述设计允许对正确密码和相应DEK进行离线暴力破解攻击。攻击者可以为所有可能的密码生成派生的AES-XTS密钥(KEK),然后尝试正确解密特定SSD扇区的数据。如果生成的明文满足特定条件,则找到了正确的密码和数据加密密钥,从而允许未经授权访问加密的用户数据。

概念验证(PoC)

为了演示离线暴力破解攻击,Matthias Deeg开发了一个暴力破解软件工具,该工具检查5到12位所有可能密码的完整搜索空间。

以下输出示例显示了成功的攻击:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# ./vks-cracker 8 /dev/sda
 █████   █████ █████   ████  █████████       █████████ 
             █████
░░███   ░░███ ░░███   ███░  ███░░░░░███     ███░░░░░███ 
           ░░███
 ░███    ░███  ░███  ███   ░███    ░░░     ███     ░░░  ████████ 
██████    ██████  ░███ █████  ██████  ████████
 ░███    ░███  ░███████    ░░█████████    ░███         ░░███░░███ 
░░░░░███  ███░░███ ░███░░███  ███░░███░░███░░███
 ░░███   ███   ░███░░███    ░░░░░░░░███   ░███          ░███ ░░░ 
███████ ░███ ░░░  ░██████░  ░███████  ░███ ░░░
  ░░░█████░    ░███ ░░███   ███    ░███   ░░███     ███ ░███ 
███░░███ ░███  ███ ░███░░███ ░███░░░   ░███
    ░░███      █████ ░░████░░█████████     ░░█████████  █████ 
░░████████░░██████  ████ █████░░██████  █████
     ░░░      ░░░░░   ░░░░  ░░░░░░░░░       ░░░░░░░░░  ░░░░░ 
░░░░░░░░  ░░░░░░  ░░░░ ░░░░░  ░░░░░░  ░░░░░
 ... finds out your passcode.

Verbatim Keypad Secure Cracker v0.8 by Matthias Deeg 
<matthias.deeg () syss de> (c) 2022,2025
- - ---
[*] Initialize passcode hash table
[*] Found 16 CPU cores
[*] Reading magic sector from device /dev/sda
[*] Initialize passcode hash table
[*] Start cracking ...
[+] Success!
    The passcode is: 13372025
    The DEK is: 
a715e0b4523eb8fd3651b291bd7bb976a6ebeff3c5a0ebacdf3cf41a8ef1bb82f244b6809e86b5cecab0bb109b2c9119da78f8d49725ae479e479f6c3320b139
[*] Have a nice day.

解决方案

SySS GmbH尚未知悉针对所述安全问题的解决方案。

披露时间线

  • 2025-02-21:向制造商报告漏洞
  • 2025-03-10:再次向制造商报告漏洞
  • 2025-10-20:公开发布安全公告

参考资料

[1] Verbatim Store ’n’ Go安全便携SSD产品网站
[2] Verbatim Store ’n’ Go便携SSD安全更新1.0.0.6
[3] SySS安全公告SYSS-2022-043
[4] 维基百科:磁盘加密理论 - XTS
[5] SySS安全公告SYSS-2025-016
[6] SySS GmbH,SySS负责任披露政策

致谢

此安全漏洞由SySS GmbH的Matthias Deeg发现。

免责声明

本安全公告中提供的信息"按原样"提供,不作任何担保。此安全公告的详细信息可能会更新,以提供尽可能准确的信息。此安全公告的最新版本可在SySS网站上获取。

版权

知识共享 - 署名(by)- 版本3.0

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计