闪存盘普及,已经成为最常用的移动存储设备,不过也正因其体积小巧,易丢失,因此也容易成为泄密工具。为防范闪存盘意外丢失引起的资料泄密,市面上出现了带有加密区功能的闪存盘,这种闪存盘一般把物理存储空间分成两个区:其一为公共区,另一个为加密区,用户通过运行特定软件输入正确口令,加密区才可用于存取数据。在没有输入正确口令之前,加密区不能用于存取资料。这样闪存盘即使在丢失后,对于不知道加密区口令的人来说是无法查看到加密区存储的内容。不过它真的可以做到万无一失吗?如果发生问题,该如何更好的做出防范呢?下面我们通过一个真实案例来看看对于闪存盘加密区攻防的实战
本次演示案例的软硬件环境如下图
本次案例中使用慧荣主控的闪存盘加密区的密码创建我们尝试采用了两种方式:一种是直接在量产工具中创建时设定,比如本文案例中针对该部分会使用的量产选项如下图,注意红框处公共区盘符为p,加密区盘符为s,密码为4个0
另一种是使用像uDiskToolBar这样的工具软件进行创建或修改过的,软件运行后第一个按钮即为加密区创建或调整用;第二个按钮为加密区登入登出(这里需要指出,不管是使用量产方式创建加密区还是用uDiskToolBar创建的加密区都需要用到该按钮的功能,才能实现加密区的登入登出,这就是本文开头部分所指的特定软件)
下面首先让我们来看看攻的一方—如何实现窥探加密区密码的实现方法
即通过运行对应版本的SMI MPTool量产工具的Debug模式达到查看目的,点击SMI MPTool界面中的Debug按钮输入密码1111
然后按Read WPRO查看地址栏00000040对应的行内容:01代表激活加密区密码;04代表密码长度,同时在右边字符串栏可见到0000的明文密码
如果你的闪存盘加密区通过uDiskToolBar进行过密码的修改,那么该处的数值将不会是明文,而是加密的,不过这并不影响下文中的移除密码的操作。
移除密码的操作非常简单,就是将地址栏00000040这行全部填零,然后点击Write WPRO按钮进入写入操作
之后使用uDiskToolBar进行尝试登入操作,可能会有一些提示(比如登入失败),不过你不用理会
之后即可登入加密区s,查看到加密区的内容(之前我们事先拷入四个图片文件,由图可见已可正常打开)
至此加密区密码破解操作完成。
接着来讲讲防的部分,如果遇到类似问题我们该如何做出防范:
我们知道就加密而言,并不存在绝对的无法破解的加密技术,有效的办法往往是通过几种加密方式的组合加强暴力破解的难度,比如:银行网银一般会采用一组私人密码加上硬件Key随机密码,二者组合的方式达到安全防护的目的。在本例中我们可以使用VeraCrypt创建文件型加密盘,然后将其再放入加密区,这样即使加密区失守,不怀好意的人得到的也是经VeraCrypt加密的文件。
VeraCrypt是从TrueCrypt衍生出来的。加密算法部分,由下图可见不光支持算法的”单重加密”,还支持多个算法组合成”双重加密”甚至”三重加密”。一般建议:如果你要制作的加密盘是用来备份个人的隐私或敏感文件,并且这个加密盘平时不常使用,那可以选择强度最高的”三重加密”。如果考虑兼顾加解密性能,使用单重加密即可。另外哈希算法部分,哈希值的长度越大,”人为碰撞”和”随机碰撞”的概率就越小,这里一般选择默认即可。
加密盘格式部分,相较TrueCrypt 原格式,VeraCrypt的新格式支持 PIM 功能(“Personal Iterations Multiplier”的缩写),这个 PIM 参数有助于提升加密盘的安全性——主要是对抗“暴力破解”。更多VeraCrypt方面的使用方法请上网搜寻即可。
结语:
存储的本质是数据,数据的安全是保护盾。面对泄密,多种方式组合的加密移动存储安全性会更高,不过有关数据安全方面的攻防会一直延续下去,我们还将在不断学习的道路上!
*原创作者:tgfreebuf,本文属Freebuf原创奖励计划,未经许可不得转载