MEGA云存储服务加密可被攻破

VSole2022-06-29 13:41:38

研究人员发现攻破MEGA云存储服务加密的新方法。

ETH Zurich安全研究人员发现MEGA云存储服务中的关键安全问题,可被攻击者利用来打破用户数据的机密性和完整性。

背景

MEGA是top级的云存储服务平台,有超过2.5亿用户、1000万日活用户和1000 PB的数据存储量,旨在为用户提供用户控制的端到端加密。与DropBox、Google Drive、iCloud和微软 OneDrive等竞争平台不同的是,MEGA称其可以为用户提供的安全保证:MEGA称其是一家隐私公司,可以为用户提供用户控制的端到端加密(User-Controlled end-to-end Encryption,UCE)。

MEGA分层密钥

MEGA客户端的分层密钥如上图所示,分层密钥的根本是用户选择的密码。基于该密码,MEGA客户端可以派生出认证密钥和加密密钥。认证密钥用于识别用户,加密密钥用于加密随机生成的master key,然后master key用于加密用户的其他密钥材料。

对每个账户来说,密钥材料包括一系列非对称密钥,包括RSA密钥对、Curve25519密钥对、Ed25519密钥对。此外,对于用户上传的每个文件或文件夹,会生成一个名为node key的新对称加密密钥。客户端用户给AES-ECB模式和master key对私有的非对称密钥和node key进行加密,保存在MEGA服务器上以支持多设备的访问。新设备上的用户可以输入密码,进行认证,并取回加密密钥材料,并用通过密码派生出的加密密钥解密。

5种攻击

研究人员一共发现了5种针对MEGA云存储服务加密的攻击,分别是RSA密钥恢复攻击、明文攻击、framing攻击、完整性攻击和GaP-Bleichenbacher攻击。其中后4类攻击是RSA密钥恢复攻击的扩展。

RSA密钥恢复攻击

MEGA 使用RSA加密用于在用户之间共享node key,交换用户登录时的session ID。每个用户都有一个公开的RSA key pkshare和skshare,MEGA或其他用户使用pkshare来加密数据,使用skshare来解密数据。RSA私钥以加密的形式保存在MEGA服务器上。

由于MEGA服务器上保存的用户加密密钥缺乏完整性保护,因此任何控制MAGA核心基础设施的实体都可以篡改加密RSA使用,并使客户端泄露session ID交换时使用的RSA模的大素数。具体来说,客户端使用使用解密并发送给服务器过程中的session ID会泄露大素数大于或小于攻击者选择的值。因此,攻击者可以在1023次客户端登录尝试后恢复出RSA私钥。如果使用格密码分析,所需的登录次数可以减少到512次。

明文恢复攻击

MEGA加密用于分享的私钥、会话密钥转移等都使用AES-ECB模式。此外,文件和文件夹密钥也使用相同的加密方式。对于给定密文,MEGA可以使用用户的master key计算明文。因此,攻击者可以访问加密的敏感密钥材料,并解密受害者的数据。

使用RSA公钥加密的加密后的RSA私钥、session ID从MEGA服务器发送给用户时,认证过程中解密oracle会增加。MEGA就可以覆写2个目标密文区块的session ID交换过程中的部分RSA私钥密文。然后使用客户端返回的session ID来恢复2个目标区块的明文。由于master key没有进行密钥隔离,且所有的密钥材料都使用AES-ECB模式保护,因此攻击者在恢复RSA私钥后,就可以利用这一论点解密node key,受害者的ed25519签名密钥和curve25519会话密钥等。

Framing攻击

Framing攻击允许MEGA以受害者的名义伪造数据,并保存在目标的云存储中。前几种攻击允许攻击者使用被黑的密钥修改现有文件,而本攻击允许敌手在保留现有文件的同时新增文件。

为创建新的文件密钥,攻击者使用MEGA用作node key的特殊格式。在加密之前,node key会编码为混淆的密钥对象,其中包含node key和用于文件或文件夹加密的信息。攻击者首先通过密文恢复攻击解密随机的样本密钥密文,解密过程一定会成功,因为用于加密密钥材料的AES-ECB加密模式不需要提供检密文完整性保护。最终生成的字符串是在攻击者控制下的,但是可以用作混淆的密钥对象,因为文件密钥和完整性信息都可以是任意字符串。因此,攻击者可以分解解密的字符串为文件密钥、随机数、MAC标签。然后修改要插入到受害者云的目标文件,以绕过完整性保护。攻击者可以插入单个AES区块到选定位置的文件中,最后,使用已知的文件密钥来加密文件,并将结果上传到受害者云存储中。

PoC参见:https://mega-awry.io/videos/framing_attack_poc.mp4

完整性攻击

攻击利用MEGA的混淆密钥对象结构来操纵加密的node key使得解密的密钥变成全0。攻击者知道密钥,因此密钥操纵攻击可以用于伪造文件。与framing攻击不同的是,攻击者只需要访问单个明文块和对应的密文即可。比如,攻击者使用MEGA协议作为公共文件分析来获取对:用户公共分享文件或文件夹时,会创建一个对应node key密文的链接。获得该链接的恶意云服务提供商知道明文和对应的密文,因此文件创建时后者被上传到MEGA。这可以用作密钥操纵的开始点,允许伪造的文件密文被上传到受害者云。

GaP-Bleichenbacher攻击

GaP-Bleichenbacher攻击是PKCS#1 v1.5 padding Bleichenbacher攻击的一个变种,研究人员将其命名为Guess-and-Purge (GaP) Bleichenbacher攻击。MEGA使用该攻击利用MEGA会话功能中会话密钥交换过程中的padding oracle可以解密RSA密文。

补丁

MEGA决定在RSA私钥格式中引入额外的客户端检查以应对RSA密钥恢复攻击。该检查可以直接预防RSA密钥恢复攻击,因此也可以应对其他4类攻击。 

论文下载地址:https://mega-awry.io/pdf/mega-malleable-encryption-goes-awry.pdf

PoC代码参见:https://github.com/MEGA-Awry/attacks-poc

参考及来源:

https://mega-awry.io/

原文来源:嘶吼专业版

云存储mega
本作品采用《CC 协议》,转载必须注明作者和本文链接
纽西兰存储服务公司MEGA修复了可能导致数据泄露的高危漏洞,对这种体量来说绝对是好事一件。
Black Kingdom是针对易受攻击的Microsoft Exchange服务器的最新威胁。
在他们获得初始访问权限、绕过安全功能并窃取敏感信息后,犯罪分子会转向加密。该团伙还威胁说,如果该组织不支付赎金,就将窃取的数据公布在其HiveLeaks网站上。
研究人员发现攻破MEGA存储服务加密的新方法。
去年12月初,加拿大的一家医疗服务提供商先后遭到了两个不同黑客组织采用同一攻击策略的攻击。
让安全能力长在
2022-07-22 16:19:04
安全领域更是成为攻击各国关键基础设施领域的重要跳板。公有面临信任威胁。私有安全能力存在不确定性。从应用安全防护层、内容安全治理层、业务安全防护层、全球威胁情报协同治理层四个层级保护主安全,以实现统一安全管理、安全防护、风险监测、安全合规和态势感知。该服务支持快速远程上线部署与运维值守,能够分钟级完成对系统的无接触接入、布防和监控,及时守护上系统安全。
大数据时代,计算、大数据和虚拟化技术的涌现和普及,数字化转型推动企业上数量持续激增。随着技术的深度使用,各种针对原生技术的新型攻击手法不断涌现,促使网络安全运维管理变得日益复杂,云端已然成为红蓝对抗的新战场!
在西方计算供应商撤出俄罗斯后,俄罗斯面临严峻的IT存储危机,在数据存储耗尽之前,俄罗斯只剩下两个月的时间。
据俄罗斯新闻媒体《生意人报》(Kommersant)声称有消息来源证实了这一提议,各方估计在可用存储空间耗尽之前,他们大约还有两个月的时间。由于受到制裁,在西方存储服务切断与该国的业务联系后,所有俄罗斯公司被迫转向国内存储服务提供商。 例如,俄罗斯移动运营商MegaFon对本地存储容量的需求增加了五倍,MTS增加了十倍,而VK在短短一周内不得不寻求增加20%的存储资源。这造成了一个无法克服的
3月15日,据外媒kommersant报道称,在西方提供商决定撤出俄罗斯后,所有俄罗斯公司被迫转向国内存储服务提供商,俄罗斯的数据存储空间距离耗尽只剩下两个月,俄罗斯面临着严重的 IT 存储危机。 俄罗斯与乌克兰的武装冲突仍在持续,俄乌谈判已经进入第四轮。俄乌冲突引发了西方国家对俄罗斯的一系列制裁。谷歌、Meta(Facebook 的母公司)、苹果等科技公司关闭了在俄罗斯的业务,多
VSole
网络安全专家