导语:VeraCrypt在经过审计后发现了数个安全漏洞,好在已经修复,建议用户尽快更新补丁,以防造成更大的安全问题。

VeraCrypt在经过审计后发现了数个安全漏洞,好在已经修复,建议用户尽快更新补丁,以防造成更大的安全问题。

2016年8月,在DuckDuckGo和VikingVPN的资助下,QuarksLab开始对开源加密软件VeraCrypt进行安全审计。VeraCrypt是TrueCrypt的分支,主要开发者是法国的Mounir Idrassi,他在TrueCrypt基础上强化了防暴力破解功能。安全审计对于一款加密软件至关重要,QuarksLab将致力于寻找软件的漏洞和后门,审计结果将首先提供给VeraCrypt的开发者,以避免将新发现的0day漏洞泄漏,在主要漏洞修复之后,安全审计报告将正式公布。

近日,QuarksLab 公布了审计报告。Quarkslab的安全研究员Jean-Baptiste Bédrune和密码破译专家 Marion Videau在主流加密平台VeraCrypt上发现大量安全漏洞。最新的硬盘加密软件审计结果显示,VeraCrypt平台存在8个高危漏洞,3个介质(medium)以及15个中低威胁级别漏洞。

VeraCrypt是基于TrueCrypt7.1a的项目,由IDRIX负责维护。2014年TrueCrypt停止服务后,VeraCrypt正式发布。

专家分析了VeraCrypt 1.18版本和DCSEFI引导装载程序1.18(UEFI),他们的分析集中于2015年4月TrueCrypt安全审计后推出的一些新功能上。

攻击者可从VeraCrypt的UEFI模块找回密码

VeraCrypt 1.18版本最重要的特征之一就是UEFI支持,代码单独存储在一个库中,库名为“VeraCrypt-DCS”(硬盘加密服务)。这个新模块被认为不如项目中其它模块成熟,因为有些部分仍是不完整,或未能实现的。

正如加密激活时可以计算的密码长度,启动时,击键存储在BIOS数据区的特定缓冲区。UEFI能实现并行:每个驱动程序都具有包含击键的缓冲区。缓冲区地址未知,并且完全依赖实现(implementation)。用户提供的密码通过VeraCrypt引导装载程序的GetKey函数读取每个字符。这样很难确保驱动程序实现将清除包含击键的缓冲区。

他们发现,攻击者能找回UEFI模式下的启动密码,因为当用户修改密码时,该应用程序无法清除密码。

专家发布的审计报告指出:

该引导装载程序处理的数据很少清除。用户密码在启动时适当清除。但是,当用户修改密码时,包含新密码的Password结构将不会被删除(查看DcsInt / DcsInt.c中的SecRegionChangePwd函数)。TrueCrypt加密软件的开发人员会仔细检查是否正确清除内存的敏感数据。而这种级别的检查并未体现在DCS中。

其它高危漏洞与实现GOST 28147-89对称分组密码有关。GOST 28147-89对称分组密码被实现错误(implementationerrors)所影响。

报告指出,“将GOST 28147-89与更普通的任何64位分组密码从可用的分组密码中移除。”最重要的一点是,目前VeraCrypt 1.9已解决了高危、中危和许多低危漏洞。无论如何,大量漏洞仍未解决是因为修复的复杂性较高。 

报告称,“审计出的所有漏洞已经被正确修复(除了其中一个漏洞遗漏)。特别是OCAP审计后,James Forshaw在TrueCrypt缓冲区中发现的导致特权升级的漏洞已经解决。要求大量修改代码或项目架构的漏洞还未修复。”

这类审计对用户的安全至关重要,审计帮助开发者加速发现和修复漏洞的过程。 

开源技术改进基金会(Open Source Technology ImprovementFund)提到审计时表示:“VeraCrypt在经过审计后更加安全,及时修复更新补丁意味着,使用该软件时世界更加安全。”

源链接

Hacking more

...