门户网站:360 | 数字货币钱包安全白皮书
前言
随着区块链技术的普及,各种数字货币得到了长足的发展。 官方币种会发布自己的钱包APP,如Core,第三方数字货币钱包也开发了等APP,以进一步改善用户体验。 、、以及市场上出现的其他钱包应用程序,黑客也瞄准了这一领域。
2017年,该智能合约公司开发的数字货币钱包使用的多重签名技术被黑客发现存在漏洞,导致15.3万枚以太币被盗,损失高达3260万美元。
2018年,在完成7500万美元B轮融资后,全球领先的硬件数字货币钱包制造商被曝钱包设计存在缺陷,导致黑客可以通过恶意软件篡改钱包地址,并将数字货币转移给黑客。
2018年,被曝私钥存储错误,黑客很容易获取私钥并恢复用户的助记词。
为了更准确地了解钱包APP当前的安全状况,我们近期对应用市场上流通的热钱包和冷钱包进行了相关的安全审计和评估,发现了很多安全问题。 我们将它们整理成相关文档发布在这里,以帮助钱包APP厂商。 了解并告知用户存在的安全风险,提请大家注意安全,及时进行自查,避免损失。
数字货币钱包安全威胁
数字货币钱包的使用包括从软件启动到交易的完整流程,其中会涉及到很多业务场景,从传统软件APP的功能来看如核心代码没有加密欧易交易所,软件本身没有验证、中间人数据等劫持等,在钱包APP的业务场景中,危害会被放大,导致用户的资金损失。 同时,钱包APP特有的业务场景,如助记词存储不安全、交易密码设置弱密码、更换币价走势数据等,也会对用户使用时的安全造成极大危害。钱包,如下:列出我们发现的前 5 大安全风险。
1、助记词、交易密码泄露
比特派是由比特币官方推荐的第三方团队Bitai开发的一款钱包应用。 目前,它在 Play 上的安装量已超过 10,000 次。
我们在非Root环境下对其进行了录屏测试,发现助记词生成阶段无法录屏,但导入钱包时可以录屏。 这可能会导致助记词泄露、数字货币账户被盗。 同时,我们发现输入交易密码时还存在录屏漏洞。 通过观察按键顺序可以得出交易密码。
在钱包业务场景中,需要对相关敏感信息输入页面采取防截屏措施,并采取对当前页面添加属性等相关保护...,以免第三方程序直接显示黑屏截图时屏幕不亮,无法录制。
2、钱包APP运行环境不安全
数字货币钱包APP的安全重点之一是运行环境。 是一个非常庞大且复杂的系统。 我们实际进行分析测试时发现,有近四分之三的APP没有测试过相关环境,可以直接对APP进行逆向调试和HOOK注入,分析APP的执行过程,动态分析加密和加密情况。解密算法流程。 我们发现,近80%的钱包APP没有对运行环境的安全进行安全测试,无法保证用户运行APP的环境安全,导致用户资金损失。
从上面360发布的中国手机安全状况报告可以看出,手机存在很多漏洞,导致APP运行时存在很多安全风险,比如以下几点。
扫描手机漏洞
如果一部手机存在已被披露的系统漏洞,那么它就始终面临着被黑客攻击的风险。 如果存在可以提权或者获取助记词等敏感数据的漏洞,那么用户账号将会暴露在极其危险的环境中,所以我们建议增加对已知系统漏洞的检测。
根系环境检测
实现了沙箱机制。 如果设备未Root,其他应用程序在沙箱的保护下无法获取该应用程序的数据。 如果设备已Root,我们无法保证运行环境的安全性。 助记词等极其重要。 这些数据很可能被恶意应用程序获取。
APP完整性检查
APP的完整性是指其是否被篡改,通常可以通过签名验证来实现,防止用户使用重新打包的应用程序。
网络代理检测
如果当前网络使用代理,则在数据交互过程中可能会被第三方监听,造成数据泄露,甚至敏感数据泄露。
针对上述关键点,我们在不同环境下进行了模拟攻击,发现近80%的APP没有采取安全防护措施。 我们可以利用系统的漏洞和软件漏洞来进行攻击测试。 与此同时,近一年来,挖矿木马、钱包APP劫持木马也开始大量出现,导致不少用户遭受直接财产损失。 因此,建议钱包厂商重视该问题,并采取相关漏洞缓解措施。
3、交易密码被强行猜出
大多数数字货币钱包在第一次运行时都会提示用户是否创建新钱包。 当用户创建新的钱包时,数字货币钱包会通过一系列算法生成私钥。 正常情况下,私钥不会被显示。 而是以助记词的形式提示用户进行钱包备份操作。 以下是某数字货币钱包的助记词界面。 这个算法有一套行业标准,私钥可以通过助记词推导出来。 然后从私钥推导出其他数据。
钱包初始化后,将提示用户输入交易密钥。 该交易密钥用于在交易前解密并导出私钥。 当交易发生时,输入的交易密钥与算法相结合,计算出私钥并生成私钥,用于对交易进行签名。 如果数字货币钱包的交易密码强度不够,很容易被暴力破解。 当交易密钥被暴力破解后,整个钱包就相当于处于无保护状态,任何人都可以破解钱包。 执行操作,包括转账等。
下面是一个不使用复杂密码的数字货币钱包。 它直接使用六位数字作为交易密码,并且不设置尝试次数。 可以直接暴力破解进行交易。
建议在APP开发过程中,对用户输入的交易密码进行弱密码测试,并添加字母或特殊符号,增加复杂度,保证密码安全。
4.钱包APP伪造漏洞
钱包APP被黑客逆向添加恶意代码、返回助记词等敏感信息、修改交易收款人地址等,会给用户造成直接的经济损失。 因此,在使用钱包时,一定要通过官方渠道下载。 同时,如果APP本身没有严格验证软件的完整性,也可能导致相关事件的发生。
2017年底出现的Janus签名漏洞可以直接应用在这种场景中。 修改应用程序后,可以利用Janus漏洞进行特殊处理,绕过系统的签名验证来更新原有应用程序。 系统一直使用V1签名验证。 当系统安装并更新应用程序时,会验证是否是相同的签名。 签名验证过程中,系统默认会读取。 是一个ZIP文件,直接从更新包尾部读取数据。 执行更新文件时,从头部读取。 如果是Dex,直接操作就可以得到最新版本。 数字货币钱包安装包修改如下:
取出Dex文件,植入恶意代码并将原安装包拼接到修改后的Dex中,然后对拼接后的Dex文件进行文件头修复。
然后更新的时候,从尾部读取数据。 读取的是原始APK,可以通过系统的签名来验证。 执行时读取到的是我们插入恶意代码后的Dex文件。 如果数币钱包被修改并植入恶意代码,例如将所有转账地址替换为攻击者的付款地址。 如果用户使用假的数字货币钱包进行更新和转账操作,将会造成不可估量的损失和后果。
在我们的分析中,我们发现一些数字货币钱包仍然使用V1签名。 我们进行了模拟攻击,生成了带有恶意代码的APP。
虽然谷歌在收到该漏洞后已经修复了该漏洞,但并不是所有手机厂商都会及时向用户推送补丁。 建议使用V1+V2签名方式对发布的应用进行签名,可以抵御APP伪造漏洞的攻击。
5.核心功能代码未加固
由于应用程序是使用Java语言开发的,因此很容易被反编译到近似源代码,而无需使用加固。
它使用的Smali语言比较容易掌握,所以在没有加固的情况下,数字货币钱包很容易被重新包装。 重新打包的效果和上面提到的伪造漏洞一样,给用户造成直接损失。 同时,关键信息的泄露也会让黑客更容易分析代码逻辑,利用相关算法提取助记词,逆向分析加解密过程,利用其他漏洞窃取助记词等信息。
建议使用加固方案对钱包APP中的关键功能代码进行加固,防止黑客逆向分析,提高安全性。
6. 敏感钱包信息存储不正确
我们知道,在数字货币的世界里,最关键的就是私钥。 所以对于用户来说,数字货币钱包最关键的就是助记词。 有了助记词,我们就可以推导出私钥了。 因此,数字货币钱包如果在本地不当存储助记词或私钥,将是一个非常高的风险。 我们在分析钱包时发现,钱包APP会自动为当前客户端创建一个钱包。 钱包使用错误的方法保存在本地,使得Root设备上的攻击者能够解码钱包文件并获取用户。 助记词、钱包私钥等钱包数据。 下图展示了我们模拟的攻击过程,其中随机生成的助记词被部分编码。
逆向完成后,我们编写相关代码进行数据解密和恢复:
建议开发过程中对本地保存的数据进行加密,防止数据泄露okx,造成用户资金的直接损失。
7、网络数据交互被劫持、篡改
用户通过数字货币钱包进行交易时,是否采用合适的加密算法对交易数据进行加密,是衡量网络连接安全性的一个重要维度。 不仅要关注数据是否加密,还要关注助记词是否使用。 ,私钥和其他数据被传输回服务器。 当助记词等数据传回服务器时,意味着除了用户之外,还有其他人知道用户自己的助记词。 当存储助记词的服务器被黑客攻击时,账户很有可能被盗。
另外,当钱包具有交易功能时,当前币价的显示在网络数据交互过程中可能被劫持和篡改。 如下图所示,我们修改后的BTC、ETH、XRP的实时价格显示在用户手机上。
这样,展示给用户的页面就是黑客想让用户看到的币种价格,间接诱导用户交易币种,炒作某种币种的兑换价值,大量买卖。短期内,间接控制相关价格。
在此过程中,建议厂商对网络交互数据进行严格验证。 如果使用https,会对证书信息进行强验证,防止数据在传输过程中被篡改。
总结
现阶段,市场上存在大量良莠不齐的数字货币钱包,很多开发团队在业务优先的原则下,在保障自家钱包产品的安全方面暂时做得不够。 一旦出现安全问题,就会导致大量用户的账户货币被盗,而由于数字货币实现的特殊性,被盗资产的追回难度非常大。
希望钱包厂商能够在业务功能上更加注重安全性。 一方面保护厂商的利益不受损失,另一方面也保护用户的金钱不受损失。 关于本文档中我们对钱包厂商安全审计相关的技术要点,我们已经发布了相关的数字货币钱包安全白皮书文档,供大家参考。
团队介绍
360 团队(Team)隶属于360信息安全部。 360信息安全部致力于保护内部安全和业务安全,抵御外部恶意网络攻击,逐步形成了自己的安全防御体系,积累了丰富的安全经验。 凭借安全突发事件的运营和应急处置经验,我们建立了完善的安全应急响应体系,及早发现和解决安全威胁,确保安全。 其技术能力处于行业领先水平,培养了众多明星安全团队和研究人员。 其研究成果得到了微软、谷歌、苹果等国内外厂商的正式致谢,并多次受邀在国内外安全会议上发表演讲。 目前主要研究方向包括区块链安全、WEB安全、移动安全(iOS)、网络安全、云安全、物联网安全等,基本覆盖了互联网安全的主要领域。
附录:
360数字货币钱包安全白皮书地址:
网友评论