因此,从Android 3开始,设备可以对应用程序存储区域(不是SD卡/可移动存储)执行启动时动态加密/解密-本质上是全磁盘加密。这需要将密码/密码/ PIN设置为屏幕解锁代码和解密密钥,无法使用解锁模式。

我怀疑启用加密实际上没有任何好处,主要是因为用作“硬盘驱动器”的内存芯片无法像计算机中的真正硬盘驱动器那样容易地卸下。我想知道其他人是否可以对我的推理发表评论。

方案1:设备丢失或被机会主义小偷(即不老练)偷走了
使用加密-> Finder /小偷可以” t获得访问权限
没有加密但具有屏幕锁定功能-> Finder /小偷无法获得访问权限

方案2:设备被老练的攻击者偷走,但他们必须留下任何痕迹攻击(因此,排除碎片方法,必须在发现丢失之前返回手机)
使用加密-> Finder /小偷无法访问
不使用加密但使用屏幕锁定- >查找者/小偷无法访问

情形3:设备被坚定的攻击者偷走,所有者在胁迫下泄露了密码。 Android没有Truecrypts的合理可否认性功能。
使用加密->攻击者获得访问权限
不进行加密但使用屏幕锁定->攻击者获得访问权限

我有任何情况吗?已经错过了吗?因此,我的结论是,没有必要在Android上启用完整的设备加密-屏幕锁即可。讨论! (很高兴被证明是错误的,我只是看不出它有什么好处)

评论

既然您提出来了... xkcd.com/538

我没有Android 3.0或更高版本,所以我有一个问题:开机时键入的加密密码与解锁密码不同吗?为磁盘加密选择20个字符以上的密码,并为解锁选择一个简短的模式密码是很有意义的。

有人可以评论UFED是否将通过Android加密停止吗?还是仅仅获得屏幕锁定密码(也恰好是解密密钥),并使UFED操作员能够解密设备所有者已加密的/ data和/ sdcard中的任何一个? forensicfocus.com/Forums/viewtopic/t=9118

@ user11820,从kitkat开始,您不能使用其他引导密码和屏幕解锁密码。有一个流行的bug要求它。

怎么样:设备被老练的攻击者偷走了,不在乎他是否留下了攻击的痕迹?

#1 楼

优点是有限的,但是在某些情况下,加密是有帮助的。

在任何情况下,只要攻击者获得密码¹(使用铅管密码,或者更实际地通过读取屏幕上的解锁图案或PIN上的暴力破解),全盘加密显然没有任何优势。那么,攻击者如何在不获取密码的情况下获取数据?

攻击者可能利用软件漏洞绕过登录屏幕。例如,adbd中的缓冲区溢出。

攻击者可能无需启动设备即可访问内置闪存。也许是通过软件攻击(设备是否可以被欺骗从SD卡启动?调试端口是否保持打开状态?);也许是通过硬件攻击(您假设一个小偷用引线管,我假设一个小偷用烙铁)。

全盘加密的另一个用例是,攻击者没有密码时然而。密码用于解锁无法强行使用的唯一密钥。如果小偷在解锁之前不经意间让设备连接到网络,并且您已经注意到盗窃,则可以触发快速远程擦除-只需擦除密钥,而无需擦除整个设备。 (我知道此功能在最近的iPhone和Blackberry上已经存在;大概是在具有全盘加密的Android设备上也已经存在或即将存在。)认证失败后擦拭。如果您不知所措,则只需从备份中还原密钥(您备份密钥,对吗?可用性101)。但是,小偷访问您的备份的可能性远小于您的手机。

¹密码,密码,PIN码,密码等。

评论


谢谢你的意见。我还偶然发现了一个错误报告,该错误报告的准确性未知,声称即使屏幕锁定(但在首次启动时解密密钥已解锁后),启用USB调试的加密设备也容易通过ADB受到攻击。 / issues / detail?id = 17918

– scuzzy-delta
2012年1月10日,下午1:41

在我的日常工作中,我在Infosec办公室的.edu工作-我可以解释一下并将您的评论纳入我们博客的文章中吗?乐于提供归属信息(让我知道您的偏好是什么)

– scuzzy-delta
2012年1月13日,0:13

@ scuzzy-delta正如页面页脚所示,我们的贡献已根据CC BY-SA的许可并带有署名要求。感谢您提出问题,但只要您提供适当的归因,您就已经有权这样做。

–吉尔斯'所以-不再是邪恶的'
2012年1月13日,0:23

#2 楼

对于确定的攻击者设置:

Android 3中使用的加密技术是dm-crypt。这里的相关部分如下:加密使用对称密钥,该对称密钥从用户键入的密码/ PIN派生;派生参数存储在设备本身的LUKS格式块中。 PBKDF2对密码派生进行了加密,并使用了许多迭代。结果是攻击者可以进行脱机词典攻击:当他获得设备时,将原始分区转储到PC中,然后“尝试”密码。 LUKS块包含足够的信息来验证潜在密码是否正确。

PBKDF2使用盐和迭代来使搜索效率降低,但是PBKDF2可以实现的功能有限。 PBKDF2会使攻击者和移动电话本身(从密码)派生密钥变慢。它不能使用太多的迭代,因为用户在启动时没有等待多于3或4秒的等待。攻击者具有更大的计算能力(他拥有一台或几台多核PC,每个核都比电话CPU拥有更多的原始功率,并且他可以使用GPU来增强性能)和更多的耐心(如果数据有价值,则攻击者准备投入一两个小时的计算时间。因此,在这种情况下,4位PIN不会持续很长时间。另一方面,您是否准备好在每次启动时在手机上输入一个较长的高熵密码?

(如果您一次只启动一次手机,则可能已经准备好这样做了。很长的时间-即只有当您忘记为电池充电时,另一方面,如果您的密码太高密码并且不经常输入,很可能会忘记它,这很不方便。)

这种情况假设攻击者可以转储原始设备的内容,这需要打开设备并访问芯片。或以某种方式以足以支持ADB的恢复模式启动电话-显然,这可以用某些硬件修改最少的电话来完成,因此这甚至可能是隐身攻击(攻击者握住电话,进行转储并放下用一块空的电池将手机放回口袋中,这样您就不必怀疑重启了;您只是说自己“该死,忘了再给血腥的东西充电”,以及一些有关智能手机充电寿命低的通用诅咒旧时代的手机一次充电可以持续10天)。

评论


在我的日常工作中,我在Infosec办公室的.edu工作-我可以解释一下并将您的评论纳入我们博客的文章中吗?乐于提供归属信息(让我知道您的偏好是什么)

– scuzzy-delta
2012年1月13日,0:13

@ scuzzy-delta:实际上,stackexchange中的所有问题,答案和评论都是根据CC-BY-SA许可分发的(请参阅法律条款)。因此,您甚至无需询问。但是,无论如何,您可以随意解释我,我不在乎。

–托马斯·波宁(Thomas Pornin)
2012年1月13日12:56

实际上比这更糟。因为每当手机锁定(例如,关闭屏幕)时您都必须输入密码/密码,而您在屏幕上输入的字词不正确,因此实际上会强制您输入密码/短密码,否则您将花光所有的钱。解锁手机的一天。

– SCdF
2012年7月2日在22:40

有一个应用程序可以单独更改cryptfs密码:github.com/nelenkov/cryptfs-password-manager或在adb shell中:vdc cryptfs changepw

–阿蒂拉·伦德瓦(Attila Lendvai)
13年5月23日在9:12

有趣的事实:假设每次迭代用4s,一个4位数的PIN最多需要11,1h,而用5位数的PIN大约需要4.6天。图案锁(假设9个点)最多可能需要半年时间。

– Sebb
16年7月2日在19:03

#3 楼

全盘加密的一个好处是,它可以非常快速地擦除闪存。

设备上存储的所有数据都以特定的加密密钥K加密存储。系统还存储了加密要擦除整个驱动器,您要做的就是擦除存储K加密的位置(仅一个块)。一旦该块消失了,就无法解密驱动器上的数据(因为无法恢复K),因此整个驱动器的性能与擦除状态一样好。擦拭过程可以很快完成,因为它只需要擦除一个块。这意味着安全/防盗应用程序可以在设备被盗时检测到您的设备被盗,并且擦除后立即生效。如果没有全盘加密,则擦拭设备可能需要更长的时间。

评论


+1,有效且快速的擦除是一个巨大的优势。此外,对于非技术用户来说,在将其出售之前,有效擦除其设备非常简单,并且不需要第三方软件。用户友好的安全性要好得多,因为它将被实际使用。

–科林·皮卡德(Colin Pickard)
2014年4月1日上午10:51

#4 楼


我想念任何情景吗?因此,我的结论是,
没有必要在Android上启用完整的设备加密-屏幕锁即可。讨论! (我很高兴被证明是错误的,我只是不能看到它有什么好处)


您忘记了政府可以抛弃政府的可能性了。存储设备/ SIM卡/ SD卡中的内容。至少在英国,这可能是在没有逮捕令的情况下完成的,但德国政府仍然予以拒绝。

在这种情况下,您将需要对数据进行完全加密,并且至少在德国,它们仍然不能强迫您透露您的秘密(密码)。因此,一般来说,如果某天包括sd卡区域并提供一种将数据保留在手机中且不包含在SIM卡中的方法,它可能会很有用。这仅取决于您的宪法权利对您是否重要。

#5 楼

如果您居住在美国并且可以访问合同NDA涵盖的PII(个人身份信息),PHI(受保护的健康信息)或机密数据。联邦/州法规以及保险公司或商业伙伴协议可能要求对端点设备进行加密,即使它们不直接包含相关数据也是如此。在当今世界,不正当信息披露日益普遍且代价高昂的情况下,必须遵守这些严格的准则。

个体实体通常通过转移给保险公司来冲销风险。但是请相信我,我们都会为安全性不足而付出代价。

我为这一功能感到高兴,并且随着当今处理器的发展,我希望看到消费设备制造商采用默认方法来实施安全性...尽管有执法部门的反对。您仍然需要通过法院命令或越境时公开钥匙。我不认为执法部门易于访问的数据的价值不只是无形的,但由于金融欺诈,我们所有人都要为此付出巨大的代价。

评论


加密作为深度防御,即使您无法指出明显有必要的主要情况。

–池
2014年5月4日在6:53

#6 楼

我看到的是:

场景1:您说得对。他们将启动至恢复状态,并且恢复出厂设置。至多:场景2:如果您的手机已启动并启动,则它们将使用adb复制未加密的数据。如果未启动,则它们将卡住。

方案3:Finder / theif持有密钥并引导到引导加载程序/恢复模式。从那里,它们闪烁一个自定义恢复或自定义内核(根)映像。即使电话未植根,自定义恢复也允许根ADB。如果启用了ADB,则有根目录的内核映像将允许它们绕过锁屏。

在方案3中,自定义恢复无法访问加密的设备。至少在我的Galaxy Nexus上,除了经过加密之外,这些闪存芯片甚至都不会与系统对话,直到它们使用图钉/密码解锁为止。从自定义恢复中,选择“恢复出厂设置”无效。内核闪烁不起作用。一个人可以还原原始的引导加载程序,但仅提供恢复出厂设置作为选项,这会擦除整个电话。 (或至少手机未扎根),以及用于解锁设备的强密码。

#7 楼

我完全不理解你的意思。用户为什么要透露密码?最有可能发生的情况是电话被盗,小偷也不太可​​能(至少可以说)小偷抬头看所有者,用枪在密码上抬头。第二种最可能的情况是某个管家的政府官员要求输入密码,然后,如果您不满意,可以拒绝该请求,或者只是说您不记得了,这就是结束了(如果您活着的话)在一个比较自由和民主的国家)。

使用武力意味着一切赌注都没有了。但是,除非您生活在一个不民主的政权或一个非常暴力的国家而没有保护自己的手段,否则这与加密的讨论无关。

评论


请注意,根据您的定义,英国不是“有点免费”的国家,因为它有一些疯狂的“您必须告诉密码”法。

– CodesInChaos
2012年4月15日15:51

正如@codeinchaos所说-在英国,如果您拒绝提供加密密钥,则可能会被逮捕和监禁-因此,我认为这个答案不太合适。

–Rory Alsop♦
2012年4月15日在21:29

一个场景:您已经飞越海洋到另一个国家。边防部队要求您解锁手机。您可能会或可能不会选择下降,转身和飞回家。但是,有些受到胁迫的人会同意是可以理解的。

–池
2014年5月4日下午6:51