对Thecus NAS进行取证分析
2020-03-19 11:00:00 Author: www.4hou.com(查看原文) 阅读量:166 收藏

NAS(Network Attached Storage:网络附属存储)按字面简单说就是连接在网络上,具备资料存储功能的装置,因此也称为“网络存储器”。它是一种专用数据存储服务器。它以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽、提高性能、降低总拥有成本、保护投资。其成本远远低于使用服务器存储,而效率却远远高于后者。

作为NAS网络存储器的老牌生产商,Thecus已生产NAS设备超过15年。该公司开发了基于Linux的内部NAS操作系统ThecusOS。目前,操作系统的最新版本是ThecusOS 7,该公司宣称其大部分NAS设备的数据加密都是安全的。ThecusOS 7.0基于64位架构并可支持最新一代HTML5,并提供最佳设计、效能以及使用体验。随着ThecusOS 7.0的发布,所有Thecus用户皆能体验到最新一代用户接口的全新强大功能,更多的存储功能及应用模块让色卡司NAS的使用方式更丰富、多元甚至深入所有人的生活层面。ThecusOS 7.0让用户能更直接有效的管理诸如照片、音乐及影片等多媒体档案,影音串流更是支持多种方式如HDMI、VGA、Google Chromecast、 Apple TV及USB装置。

Thecus基于卷的加密工具使用户可以完全加密其整个RAID卷,从而在物理设备被盗时保护重要数据。我们发现Thecus的加密实施有些独特,在本文的研究中,我们将验证制造商的安全思路,并检查Thecus实施256位AES加密的安全性。

Thecus NAS的安全性分析

1. Thecus使用基于卷的256位AES加密和一个固定的,不可更改的加密密钥。当用户根据用户的密码(仅4-16个字符,0-9,a-z,A-Z)创建新的加密卷时,将生成3968字节(31744位)的加密密钥文件,使用相同的密码创建多个加密卷将生成不同的加密密钥文件。

2. 加密密钥存储在外部USB驱动器上(唯一的强制选项),没有任何其他保护。

3. 用户插入包含正确加密密钥的USB驱动器后,加密卷将自动解锁。

4. 用户在创建加密卷时输入的原始密码在任何地方都不会再使用,用户无法更改加密密码,用户无法加密现有数据,用户无法永久解密加密的卷。对加密的任何更改都需要删除并重新创建卷,并用数据填充它,整个加密方案缺少任何类型的技术文档。

5. 整个保护方案是完全没有记录的,例如,由于用户不必再输入密码来加载或访问加密卷,因此不清楚密码的用途。

6. 由于SED受ThecusOS支持,所以在我们的实验室中无法进行测试。

Test Bench

testbench是一种验证的手段。首先,任何设计都是会有输入输出的。但是在软环境中没有激励输入,也不会对你设计的输出正确性进行评估。那么此时便有一种,模拟实际环境的输入激励和输出校验的一种“虚拟平台”的产生。在这个平台上你可以对你的设计从软件层面上进行分析和校验,这个就是testbench的含义

我们分析了一个基于Intel Celeron处理器N2810的Thecus N2810设备,非SED WD Red HDD用于设置NAS执行分析,NAS运行在最新版本的ThecusOS 7上。

基于卷的加密

ThecusOS支持基于卷的加密,与基于文件夹的加密可以保护(或不保护)单个共享不同,基于卷的加密可以保护整个RAID卷。与基于卷的加密最相似的是Microsoft Windows中的BitLocker或Apple macOS中的FileVault 2。不过,与苹果或微软的全磁盘加密工具相比,Thecus的实现过程要简单得多。

加密过程

1. 用户只能加密新创建的空RAID卷,无论磁盘数量如何,单磁盘RAID卷可以像跨多个物理磁盘的卷一样简单进行加密。

2. 无法加密现有卷,若要加密必须首先删除该卷,创建一个新卷,然后勾选“加密”框。因此,不支持使用现有数据加密卷。

第一步是创建一个新卷:

1.png

2.png

可选的加密功能需要输入密码,密码长度必须为4至16个字符,支持0-9、a-z、a-z字符组(不支持特殊字符和本地字符)。

3.png

用户不必记住该密码,因为他们不必再次输入密码即可访问加密的数据。相反,ThecusOS将生成一个3968字节(31744位)的加密密钥,并将该密钥存储在一个外部USB驱动器上,该驱动器必须在创建加密卷时连接到NAS。

4.png

用户将外部USB驱动器(例如闪存驱动器)插入可用的USB端口后,NAS将加密密钥保存在该驱动器上,并创建和加载加密卷。

加载加密卷

当用户将包含卷加密密钥的USB驱动器插入到Thecus NAS上的任何可用USB端口时,将自动加载加密卷。此时没有其他提示,也无需打开Web UI。

加载过程会出现在以下场景中

1. 启动或重新启动NAS,没有插入包含加密密钥的USB驱动器。在这种情况下,加密的卷被锁定,数据无法访问。

6.png

2. 但是,由于主操作系统和某些配置文件存储在小型NAND存储芯片上而不是硬盘驱动器上,因此NAS仍可以完成启动。

3. 启动或重新启动NAS,插入包含加密密钥的USB驱动器。在这种情况下,加密卷将在设备完成启动顺序时安装。

7.png

最有趣的场景是,在没有插入USB驱动器的情况下打开或重新启动NAS,然后用户在稍后插入包含加密密钥的USB驱动器。在这种情况下,操作系统将自动识别USB驱动器,读取加密密钥,并自动加载加密卷。

锁定加密卷

正如我们所指出的,当用户插入正确的USB驱动器时,将自动加载加密卷。删除USB驱动器后会发生什么?在这种情况下,NAS保持已加密的卷加载。此时,该卷将保持加载状态,直到关闭或重新启动NAS,或者直到用户通过Web UI手动锁定卷为止。

8.png

解密

如果你习惯使用BitLocker,你可能知道很容易从加密卷中删除密码。有趣的是,BitLocker不会解密任何已经加密的数据。相反,它只将打开的加密密钥存储在卷标头中,以允许系统获取密钥并在没有密码的情况下访问信息,保存在这些BitLocker卷上的任何新信息都将不加密保存。

有了Thecus,情况就简单多了。用户无法删除加密或永久解密加密卷,这意味着永久解密数据的唯一方法是删除已加密的卷,在不加密的情况下重新创建卷并使用数据填充它。

更改密码是不可能的

早在几十年前,制造商想出了一个好主意,将用于加密和解密数据的二进制密钥与用于访问数据的用户提供的秘密分开。在对称密码学中,只能使用一个唯一的二进制加密密钥对数据进行加密和解密,这称为媒体加密密钥或数据加密密钥。然而,用户可以使用多种不同类型的凭证来解锁加密数据,如纯文本密码、存储在安全智能卡或TPM模块上的凭证、二进制密钥(文件)或它们的组合。这些凭证(密钥加密密钥)用于加密(封装)媒体加密密钥。多个不同的密钥加密密钥可用于封装相同的媒体加密密钥,允许用户立即更改其明文密码,添加或删除智能卡和其他凭据。

ThecusOS 7没有使用密钥加密密钥的概念,用户的原始纯文本密码用于生成单个固定的媒体加密密钥。卷加密后,密码和加密密钥均无法更改。

虽然用户在加密卷时需要输入密码,但是在ThecusOS接口的任何地方都不会再次使用该密码,我在Thecus的技术文档或在线知识库中找不到有关此密码的任何参考资料。密码不用于解密数据或加载加密的分区。用户再也不用输入密码了,换句话说,在这个设置中,密码似乎是完全多余的。这个缺乏适当的解释,更不用说全面的技术文档。

在创建使用相同密码保护的卷时,ThecusOS生成不同的加密密钥。这是一个很好的提示,说明密码中包含了一些随机数据。

Thecus和SED加密

ThecusOS支持SED(自加密驱动器)加密,如下图所示:

9.png

由于缺少兼容的硬盘驱动器,我们尚未测试SED实施。考虑到Thecus N2810的成本和市场定位,该型号可能会与诸如Western Digital Red或Seagate Ironwolf系列之类的消费级NAS硬盘一起使用,这两种硬盘均缺乏SED支持。

Thecus安全模型涵盖了哪些风险?

关于Thecus安全模型,我有以下几点看法。

目前尚不清楚,如果密码不能用于解锁卷且无法更改,系统为何会提示输入密码。如果仅将用户密码用作某种随机种子,则必须正确披露并被记录下来。

令人沮丧的是,缺少有关数据保护方案的任何技术文档。对于家庭用户和小型办公室用户来说,这可能是可以接受的,但是对于其他任何大型用户来说,这都是不可接受的。

加密密钥存储在单独的USB驱动器上,用户可以随时方便地插入该USB驱动器以自动解锁加密卷。因此,整个保护计划完全基于“你所拥有的东西”。这意味着,任何能够访问持有加密密钥的USB驱动器的人都可以加载加密卷。

可以看出,这一切都取决于攻击者是否能够访问包含加密密钥的USB驱动器。

如果USB加密密钥单独存储在NAS单元中,并且关闭了NAS,则加密的数据将受到保护,以防止硬盘驱动器和整个NAS单元被窃取。

如果攻击者可以访问NAS单元和包含加密密钥的USB驱动器,则保护无效。

Thecus加密与Microsoft BitLocker的安全性比较

Windows BitLocker驱动器加密通过加密Windows操作系统卷上存储的所有数据可以更好地保护计算机中的数据。BitLocker使用TPM帮助保护Windows操作系统和用户数据,并帮助确保计算机即使在无人参与、丢失或被盗的情况下也不会被篡改。 BitLocker还可以在没有TPM的情况下使用。若要在计算机上使用BitLocker而不使用TPM,则必须通过使用组策略更改BitLocker安装向导的默认行为,或通过使用脚本配置BitLocker。使用BitLocker而不使用TPM时,所需加密密钥存储在USB闪存驱动器中,必须提供该驱动器才能解锁存储在卷上的数据。

说到全磁盘加密,首先想到的是微软的BitLocker和苹果的FileVault 2,其中TrueCrypt和VeraCrypt是最受欢迎的第三方实现。所有这些加密容器都支持安全加密、全面的密钥管理以及加密和解锁卷的多种方法。

当谈到NAS加密时,一个典型的NAS 256位AES加密缺乏任何类型的密钥管理,通常情况下,如果不删除整个卷,重新创建,重新加密和重新填充数据,用户甚至无法更改加密密码。许多NAS制造商不知道存在单独的媒体加密密钥和密钥加密密钥,更不用说对此的防护了。出售给家庭或小型办公室用户的典型NAS不允许加密现有数据或从加密卷中删除密码,除非你不再需要保护已加密的卷。

基于对ThecusOS的介绍,我们可以知道Thecus NAS缺乏基本的密钥管理、无法更改加密密码以及无法加密或解密现有卷,使得Thecus NAS加密成为最不灵活的加密技术。保护系统缺乏透明度或任何种类的技术文件,系统如何根据用户的4到16个字符的密码提供3968字节的加密密钥?如果发生数据丢失,是否可以使用用户密码而不是加密密钥来解密数据?密钥是否包含用户的密码,密码的哈希值,或者主要是随机数据?这些问题在技术文档中都没有答案。

同时,Thecus NAS的加密实现既简单又直接。基于存储在可移动USB驱动器上的文件,如果没有上述USB驱动器,数据将无法解密(除非找到漏洞)。这种加密可能足以保护家庭和小型办公室用户存储的大多数数据,但对于大型机构,则慎重选择使用。

本文翻译自:https://blog.elcomsoft.com/2020/01/attached-storage-forensics-security-analysis-of-thecus-nas/如若转载,请注明原文地址:


文章来源: https://www.4hou.com/posts/P5wy
如有侵权请联系:admin#unsafe.sh