面对信息化时代,稍不注意就会脱轨,所以及时的补充知识才能让我们与时俱进,今天给大家带来的是关于MyCrypto钱包安全吗和mycryptos钱包APP的一篇文章,相信会给你带来较大的帮助!
近年来,数字钱包安全事件频发。
2019年11月19日,Ars Technica报道称两个加密货币钱包数据遭泄露,220万账户信息被盗。安全研究员Troy Hunt证实,被盗数据来自加密货币钱包GateHub和RuneScape机器人提供商EpicBot的账户。
这已经不是Gatehub第一次遭遇数据泄露了。据报道,去年6月,黑客入侵了大约100 个XRP Ledger钱包,导致近1000万美元的资金被盗。
2019年3月29日,Bithumb失窃事件闹得沸沸扬扬。据猜测,这次事件起因为Bithumb拥有的g4ydomrxhege帐户的私钥被黑客盗取。
随即,黑客将窃取的资金分散到各个交易所,包括火币,HitBTC,WB和EXmo。根据非官方数据和用户估计,Bithumb遭受的损失高达300万个EOS币(约1300万美元)和2000万个XRP币(约600万美元)以上。
由于数字货币的匿名性及去中心化,导致被盗资产在一定程度上难以追回。因此,钱包的安全性至关重要。
2020年8月9日,CertiK的安全工程师在DEF CON区块链安全大会上发表了演讲主题为:Exploit Insecure Crypto Wallet(加密钱包漏洞利用与分析)的主题报告,分享了对于加密钱包安全的见解。
加密钱包是一种帮助用户管理帐户和简化交易过程的应用程序。
有些区块链项目发布加密钱包应用程序来支持本链的发展——比如用于CertiK Chain的Deepwallet。
此外,还有像Shapeshift这样的公司,其构建了支持不同区块链协议的钱包。
从安全的角度来看,加密钱包最需重视的问题是防止攻击者窃取用户钱包的助记词和私钥等信息。
近一年来,CertiK技术团队对多个加密钱包进行了测试和研究,并在此分享针对基于软件不同类型的加密钱包进行安全评估的方法及流程。
加密钱包基础审计清单
要对一个应用程序进行评估,首先需要了解其工作原理→代码实现是否遵循最佳安全标准→如何对安全性不足的部分进行修正及提高。
CertiK技术团队针对加密钱包制作了一个基础审计清单,这份清单反映了所有形式的加密钱包应用(手机、web、扩展、桌面),尤其是手机和web钱包是如何生产和储存用户私钥的。
应用程序如何生成私钥?
应用程序如何以及在何处存储原始信息和私钥?
钱包连接到的是否是值得信任的区块链节点?
应用程序允许用户配置自定义区块链节点吗?如果允许,恶意区块链节点会对应用程序造成什么影响?
应用程序是否连接了中心化服务器?如果是,客户端应用会向服务器发送哪些信息?
应用程序是否要求用户设置一个安全性高的密码?
当用户试图访问敏感信息或转账时,应用程序是否要求二次验证?
应用程序是否使用了存在漏洞且可被攻击的第三方库?
有没有秘密(比如:API密钥,AWS凭证)在源代码存储库中泄漏?
有没有明显的不良代码实现(例如对密码学的错误理解)在程序源代码中出现?
应用服务器是否强制TLS连接?
手机钱包
相比于笔记本电脑,手机等移动设备更容易丢失或被盗。
在分析针对移动设备的威胁时,必须考虑攻击者可以直接访问用户设备的情况。
在评估过程中,如果攻击者获得访问用户设备的权限,或者用户设备感染恶意软件,我们需要设法识别导致账户和密码资产受损的潜在问题。
除了基础清单以外,以下是在评估手机钱包时要增加检查的审计类目:
应用程序是否警告用户不要对敏感数据进行截屏——在显示敏感数据时,安卓应用是否会阻止用户截屏?iOS应用是否警告用户不要对敏感数据进行截屏?
应用程序是否在后台截图中泄漏敏感信息?
应用程序是否检测设备是否越狱/root?
应用程序是否锁定后台服务器的证书?
应用程序是否在程序的log中记录了敏感信息?
应用程序是否包含配置错误的deeplink和intent,它们可被利用吗?
应用程序包是否混淆代码?
应用程序是否实现了反调试功能?
应用程序是否检查应用程序重新打包?
(iOS)储存在iOS Keychain中的数据是否具有足够安全的属性?
应用程序是否受到密钥链数据持久性的影响?
当用户输入敏感信息时,应用程序是否禁用自定义键盘?
应用程序是否安全使用“webview”来加载外部网站?
Web钱包
对于一个完全去中心化的钱包来说,Web应用程序逐渐成为不太受欢迎的选择。MyCrypto不允许用户在web应用程序中使用密钥库/助记词/私钥访问钱包,MyEtherWallet也同样建议用户不要这样做。
与在其他三种平台上运行的钱包相比,以web应用程序的形式对钱包进行钓鱼攻击相对来说更容易;如果攻击者入侵了web服务器,他可以通过向web页面注入恶意的JavaScript,轻松窃取用户的钱包信息。
然而,一个安全构建并经过彻底测试的web钱包依旧是用户管理其加密资产的不二之选。
除了上面常规的基础审计类目之外,我们在评估客户端web钱包时,还列出了以下需要审计的类目列表:
应用程序存在跨站点脚本XSS漏洞吗?
应用程序存在点击劫持漏洞吗?
应用程序有没有有效的Content Security Policy?
应用程序存在开放式重定向漏洞吗?
应用程序存在HTML注入漏洞吗?
现在网页钱包使用cookie的情况很少见,但如果有的话,应检查:
Cookie属性
跨站请求伪造(CSRF)
跨域资源共享(CORS)配置错误
该应用程序是否包含除基本钱包功能之外的其他功能? 这些功能存在可被利用的漏洞吗?
OWASP Top 10中未在上文提到的漏洞。
扩展钱包
Metamask是最有名和最常用的加密钱包之一,它以浏览器扩展的形式出现。
扩展钱包在内部的工作方式与web应用程序非常相似。
不同之处在于它包含被称为content script和background script的独特组件。
网站通过content script和background script传递事件或消息来与扩展页面进行交流。
在扩展钱包评估期间,最重要的事情之一就是测试一个恶意网站是否可以在未经用户同意的情况下读取或写入属于扩展钱包的数据。
除了基础清单以外,以下是在评估扩展钱包时要增加检查的审计类目:
扩展要求了哪些权限?
扩展应用如何决定哪个网站允许与扩展钱包进行交流?
扩展钱包如何与web页面交互?
恶意网站是否可以通过扩展中的漏洞来攻击扩展本身或浏览器中其他的页面?
恶意网站是否可以在未经用户同意的情况下读取或修改属于扩展的数据?
扩展钱包存在点击劫持漏洞吗?
扩展钱包(通常是background script)在处理消息之前是否已检查消息来源?
应用程序是否实现了有效的内容安全策略?
Electron桌面钱包
在编写了web应用程序的代码之后,为什么不用这些代码来建造一个Electron中桌面应用程序呢?
在以往测试过的桌面钱包中,大约80%的桌面钱包是基于Electron框架的。在测试基于Electron的桌面应用程序时,不仅要寻找web应用程序中可能存在的漏洞,还要检查Electron配置是否安全。
CertiK曾针对Electron的桌面应用程序漏洞进行了分析,你可以点击访问此文章了解详情。
以下是基于Electron的桌面钱包受评估时要增加检查的审计类目:
应用程序使用什么版本的Electron?
应用程序是否加载远程内容?
应用程序是否禁用“nodeIntegration”和“enableRemoteModule”?
应用程序是否启用了“contextisolation”, “sandbox” and “webSecurity”选项?
应用程序是否允许用户在同一窗口中从当前钱包页面跳转到任意的外部页面?
应用程序是否实现了有效的内容安全策略?
preload script是否包含可能被滥用的代码?
应用程序是否将用户输入直接传递到危险函数中(如“openExternal”)?
应用程序会使不安全的自定义协议吗?
服务器端漏洞检查列表
在我们测试过的加密钱包应用程序中,有一半以上是没有中心化服务器的,他们直接与区块链节点相连。
CertiK技术团队认为这是减少攻击面和保护用户隐私的方法。
但是,如果应用程序希望为客户提供除了帐户管理和令牌传输之外的更多功能,那么该应用程序可能需要一个带有数据库和服务器端代码的中心化服务器。
服务器端组件要测试的项目高度依赖于应用程序特性。
根据在研究以及与客户接触中发现的服务器端漏洞,我们编写了下文的漏洞检查表。当然,它并不包含所有可能产生的服务器端漏洞。
认证和授权
KYC及其有效性
竞赛条件
云端服务器配置错误
Web服务器配置错误
不安全的直接对象引用(IDOR)
服务端请求伪造(SSRF)
不安全的文件上传
任何类型的注入(SQL,命令,template)漏洞
任意文件读/写
业务逻辑错误
速率限制
拒绝服务
信息泄漏
总结
随着技术的发展,黑客们实施的欺诈和攻击手段也越来越多样化。
CertiK安全技术团队希望通过对加密钱包安全隐患的分享让用户更清楚的认识和了解数字货币钱包的安全性问题、提高警惕。
现阶段,许多开发团队对于安全的问题重视程度远远低于对于业务的重视程度,对自身的钱包产品并未做到足够的安全防护。通过分享加密钱包的安全审计类目,CertiK期望加密钱包项目方对于产品的安全标准拥有清晰的认知,从而促进产品安全升级,共同保护用户资产的安全性。
数字货币攻击是多技术维度的综合攻击,需要考虑到在数字货币管理流通过程中所有涉及到的应用安全,包括电脑硬件、区块链软件,钱包等区块链服务软件,智能合约等。
加密钱包需要重视对于潜在攻击方式的检测和监视,避免多次受到同一方式的攻击,并且加强数字货币账户安全保护方法,使用物理加密的离线冷存储(cold storage)来保存重要数字货币。除此之外,需要聘请专业的安全团队进行网络层面的测试,并通过远程模拟攻击来寻找漏洞。
什么是轻客户端?为什么你需要了解它
播报文章
二师兄的少年心
发布时间: 20-04-0905:04
轻客户端是区块链生态系统中的关键要素。它们帮助用户以安全和去中心化的方式访问并与区块链交互,而无需同步整个区块链。在本文中,我将用简单的语言解释什么是轻客户端,什么不是,以及它从何而来。
在讨论什么是轻客户端之前,让我们先从说清楚什么是客户端开始。计算机科学中的客户端是连接到服务器的硬件或软件的一部分。例如,internet 浏览器是一个连接到网站的服务器以请求其内容的客户端。在区块链的语境中,客户端是以点对点的方式连接到其他客户端的软件。因为所有这些客户端都相互通信,所以它们形成了一个网络,其中每个客户端都是一个节点。这就是为什么节点这个术语也被用来代替客户端的原因。
在以太坊的案例中,过去只有一种类型的节点,现在称为全节点。这个软件负责验证和转播网络上的交易和区块。由于无信任环境(开放的互联网)和区块链的性质,每个全节点需要下载并验证每个区块,所以就是在每个区块中验证每一笔交易。
Parity Ethereum 和 Geth 这两个最受欢迎的以太坊客户端,今天都可以在一台中等功率的笔记本电脑上运行。然而,下载和验证整个区块链的区块是需要时间和资源的。例如,现在需要使用 SSD 来完全同步以太坊区块链。HDD 无法跟上每秒所需的输入/输出操作。
全节点使用案例
现在,组织和个人运行全节点是因为他们的业务需要。想想矿工、区块浏览器、交易所。个人用户可能希望运行全节点,因为这是与区块链交互的最安全方式。在一个更小的范围内,他们也可能是纯粹的利他主义来帮助网络。7*24 小时全天候的运行一个全节点需要良好的知识和资源水平,大多数用户不愿意投资是可以理解的。除了矿工,没有什么内置的激励来运行一个全节点,尽管这部分基础设施对网络至关重要。
因此,大多数与区块链交互的用户,不管是否自愿,都会使用一个中心的基础设施。最流行的软件钱包默认依赖于第三方托管的节点。这些客户端连接到远程节点,并以非密码验证的方式完全信任其响应。它的积极方面显然是增强了用户体验,因为这些钱包的用户不需要运行自己的节点。但是,它们被迫信任第三方节点。默认情况下,Metamask、MyEtherWallet 和 MyCrypto 连接到远程节点,但如果用户愿意,仍然允许他们连接到自己的本地节点。这不是 Jaxx 或 Exodus 钱包的情况,它们默认连接到远程节点,而没有连接到用户自己的本地节点的选项。这里没有提到移动钱包,因为手机无法运行全节点。
像 Infura 这样的公司致力于运行全节点,并免费提供给那些需要它们的人。抽象出同步一个全节点的麻烦,允许任何用户轻松地访问区块链。这样的解决方案有助于让更多用户能够访问以太坊。然而,尽管这一举措是对生态系统的一个重大补充,但它代表了一个中心化的单一失败点,与去中心化的区块链理念背道而驰。直到几个月前,钱包开发商还没有其他选择。
“我们的目标是创建一个兼容不同程度‘轻’的协议,从几乎不存储任何内容的客户端到几乎存储所有内容的客户端。”
— PIP, Parity Light Protocol()
轻量级替代方案:轻客户端
轻客户端或轻节点是连接到全节点与区块链交互的软件。与全节点对应节点不同,轻节点不需要运行 24/7 或读写区块链上的大量信息。事实上,轻客户端并不直接与区块链交互,而是使用全节点作为中介。轻客户端依赖于全节点去执行许多操作,从请求最新的区块头到请求帐户中的余额。
轻客户端协议的设计方式允许它们以最小信任的方式与全节点交互。这是一个需要理解的关键方面,因此让我们回顾一下以太坊区块链的基础知识:
1. 普通用户使用全节点、轻节点或受信任的远程节点在网络上发送交易。
2. 全节点从网络上的对等节点接收交易,检查这些交易的有效性,并将它们广播到网络。
3. 矿工是连接到特定软件的全节点。他们像一个普通的全节点一样从网络上接收和验证交易,但是会额外投入大量的精力来寻找问题的解决方案,才会被允许生成下一个区块。矿工使用的全节点通过应该将哪个区块添加到区块链并构建在其上达成共识。任何在其上构建了至少 10 个块的块都被认为是安全的,因为它包含的交易被还原的概率非常低。
现在,回到我们的轻客户端。作为起点,轻客户端需要下载区块链的区块头。轻客户端不需要为它对全节点的每个请求去信任全节点。这是因为区块头包含一个名为 Merkle 树根的信息。Merkle 树根就是区块链上有账户余额和智能合约存储的所有信息的指纹。如果有任何微小的信息改变,这个指纹也会改变。假设大多数矿工都是诚实的,那么区块头和他们所包含的指纹就被认为是有效的。轻客户端可能需要从全节点请求信息,例如特定帐户的余额。轻客户端知道每个区块的指纹,就可以验证全节点给出的答案是否与其拥有的指纹匹配。这是一个强有力的工具,可以在事先不知情的情况下证明信息的真实性。
由于轻客户端需要发送多个请求来执行简单的操作,因此所需的总体网络带宽高于全节点的带宽。另一方面,所需的资源和存储量比全节点的资源和存储量低几个数量级,同时实现了非常高的安全级别。只需要大约 100MB 的存储空间和较低的计算能力,轻节点就可以在移动设备上运行!这意味着手机可以以去中心化的方式访问区块链。
因为只需要一个全节点的一小部分信息,所以一个轻节点可以更快地与区块链同步。目前,将整个以太坊主网区块链同步,轻客户端大约只需要一个小时,但节点同步超过几秒对任何应用程序来说都太多了。为轻客户端开发的解决方案可以快速与区块链顶部同步,尽管这些解决方案通常需要权衡。目前,轻客户端在其代码中内置了一个可信的区块链检查点。正因为如此,客户端只需要下载最新的区块头文件,就可以在几秒钟内实现同步。轻客户端用户信任客户端开发人员集成有效的检查点。这种折衷被认为是可以接受的,因为用户已经需要信任客户端实现的开发人员。为了以去中心化的方式快速执行同步,Parity Technologie 目前开发了一种替代解决方案,允许轻客户端以与全节点类似的方式执行扭曲同步()。
未来,轻客户端会遍布各地。 — Marty McFly
轻客户端的挑战
轻客户端非常适合主流应用,例如发送一些交易和验证帐户余额。对轻客户端的主要批评是,轻客户端不能直接帮助网络。它们不验证除自己需要的信息以外的任何其他信息,也不从网络向其他对等节点提供或转播信息,它们使用来自全节点的资源,而不提供任何的回报。
与全节点相比,轻客户端提供了更好的最终用户体验,同时允许最终用户以去中心化的和安全的方式访问区块链。关键是要找到一种激励个人和机构的方式去运行全节点、服务轻节点、惩罚服务坏数据的恶意全节点。使轻客户端可持续发展的一种方法是让他们对全节点发出的每个请求执行小额支付。在不久的将来,轻客户端将在以太坊分片中扮演重要角色,让验证节点快速同步不同的分片。轻客户端还可用于报告恶意参与者(验证节点或 plasma 权限)。轻客户端对全节点的激励是一个活跃的研究领域,因为激励是生态系统稳定的关键。
有一些很有前途的想法可以让轻客户端快速同步,同时避免前面提到的折衷方案。一种想法是允许全节点提供最新的已知区块头的零知识证明(例如,zk-STARK )。然后,轻客户端可以验证它并与链的顶部同步,而无需事先知道区块链的状态。
总之,在短期内,轻客户端将成为去中心化应用程序的骨干,这对用户友好的分布式生态系统来说是一个非常好的消息。
近年来,数字钱包安全事件频发。
2019年11月19日,Ars Technica报道称两个加密货币钱包数据遭泄露,220万账户信息被盗。安全研究员Troy Hunt证实,被盗数据来自加密货币钱包GateHub和RuneScape机器人提供商EpicBot的账户。
这已经不是Gatehub第一次遭遇数据泄露了。据报道,去年6月,黑客入侵了大约100 个XRP Ledger钱包,导致近1000万美元的资金被盗。
2019年3月29日,Bithumb失窃事件闹得沸沸扬扬。据猜测,这次事件起因为Bithumb拥有的g4ydomrxhege帐户的私钥被黑客盗取。
随即,黑客将窃取的资金分散到各个交易所,包括火币,HitBTC,WB和EXmo。根据非官方数据和用户估计,Bithumb遭受的损失高达300万个EOS币(约1300万美元)和2000万个XRP币(约600万美元)以上。
由于数字货币的匿名性及去中心化,导致被盗资产在一定程度上难以追回。因此,钱包的安全性至关重要。
2020年8月9日,CertiK的安全工程师在DEF CON区块链安全大会上发表了演讲主题为:Exploit Insecure Crypto Wallet(加密钱包漏洞利用与分析)的主题报告,分享了对于加密钱包安全的见解。
加密钱包是一种帮助用户管理帐户和简化交易过程的应用程序。
有些区块链项目发布加密钱包应用程序来支持本链的发展——比如用于CertiK Chain的Deepwallet。
此外,还有像Shapeshift这样的公司,其构建了支持不同区块链协议的钱包。
从安全的角度来看,加密钱包最需重视的问题是防止攻击者窃取用户钱包的助记词和私钥等信息。
近一年来,CertiK技术团队对多个加密钱包进行了测试和研究,并在此分享针对基于软件不同类型的加密钱包进行安全评估的方法及流程。
加密钱包基础审计清单
要对一个应用程序进行评估,首先需要了解其工作原理→代码实现是否遵循最佳安全标准→如何对安全性不足的部分进行修正及提高。
CertiK技术团队针对加密钱包制作了一个基础审计清单,这份清单反映了所有形式的加密钱包应用(手机、web、扩展、桌面),尤其是手机和web钱包是如何生产和储存用户私钥的。
应用程序如何生成私钥?
应用程序如何以及在何处存储原始信息和私钥?
钱包连接到的是否是值得信任的区块链节点?
应用程序允许用户配置自定义区块链节点吗?如果允许,恶意区块链节点会对应用程序造成什么影响?
应用程序是否连接了中心化服务器?如果是,客户端应用会向服务器发送哪些信息?
应用程序是否要求用户设置一个安全性高的密码?
当用户试图访问敏感信息或转账时,应用程序是否要求二次验证?
应用程序是否使用了存在漏洞且可被攻击的第三方库?
有没有秘密(比如:API密钥,AWS凭证)在源代码存储库中泄漏?
有没有明显的不良代码实现(例如对密码学的错误理解)在程序源代码中出现?
应用服务器是否强制TLS连接?
手机钱包
相比于笔记本电脑,手机等移动设备更容易丢失或被盗。
在分析针对移动设备的威胁时,必须考虑攻击者可以直接访问用户设备的情况。
在评估过程中,如果攻击者获得访问用户设备的权限,或者用户设备感染恶意软件,我们需要设法识别导致账户和密码资产受损的潜在问题。
除了基础清单以外,以下是在评估手机钱包时要增加检查的审计类目:
应用程序156是否警告用户不要6991对敏感数据进行截屏3780——在显示敏感数据时,安卓应用是否会阻止用户截屏?iOS应用是否警告用户不要对敏感数据进行截屏?
应用程序是否在后台截图中泄漏敏感信息?
应用程序是否检测设备是否越狱/root?
应用程序是否锁定后台服务器的证书?
应用程序是否在程序的log中记录了敏感信息?
应用程序是否包含配置错误的deeplink和intent,它们可被利用吗?
应用程序包是否混淆代码?
应用程序是否实现了反调试功能?
应用程序是否检查应用程序重新打包?
(iOS)储存在iOS Keychain中的数据是否具有足够安全的属性?
应用程序是否受到密钥链数据持久性的影响?
当用户输入敏感信息时,应用程序是否禁用自定义键盘?
应用程序是否安全使用“webview”来加载外部网站?
Web钱包
对于一个完全去中心化的钱包来说,Web应用程序逐渐成为不太受欢迎的选择。MyCrypto不允许用户在web应用程序中使用密钥库/助记词/私钥访问钱包,MyEtherWallet也同样建议用户不要这样做。
与在其他三种平台上运行的钱包相比,以web应用程序的形式对钱包进行钓鱼攻击相对来说更容易;如果攻击者入侵了web服务器,他可以通过向web页面注入恶意的JavaScript,轻松窃取用户的钱包信息。
然而,一个安全构建并经过彻底测试的web钱包依旧是用户管理其加密资产的不二之选。
除了上面常规的基础审计类目之外,我们在评估客户端web钱包时,还列出了以下需要审计的类目列表:
应用程序存在跨站点脚本XSS漏洞吗?
应用程序存在点击劫持漏洞吗?
应用程序有没有有效的Content Security Policy?
应用程序存在开放式重定向漏洞吗?
应用程序存在HTML注入漏洞吗?
现在网页钱包使用cookie的情况很少见,但如果有的话,应检查:
Cookie属性
跨站请求伪造(CSRF)
跨域资源共享(CORS)配置错误
该应用程序是否包含除基本钱包功能之外的其他功能? 这些功能存在可被利用的漏洞吗?
OWASP Top 10中未在上文提到的漏洞。
扩展钱包
Metamask是最有名和最常用的加密钱包之一,它以浏览器扩展的形式出现。
扩展钱包在内部的工作方式与web应用程序非常相似。
不同之处在于它包含被称为content script和background script的独特组件。
网站通过content script和background script传递事件或消息来与扩展页面进行交流。
在扩展钱包评估期间,最重要的事情之一就是测试一个恶意网站是否可以在未经用户同意的情况下读取或写入属于扩展钱包的数据。
除了基础清单以外,以下是在评估扩展钱包时要增加检查的审计类目:
扩展要求了哪些权限?
扩展应用如何决定哪个网站允许与扩展钱包进行交流?
扩展钱包如何与web页面交互?
恶意网站是否可以通过扩展中的漏洞来攻击扩展本身或浏览器中其他的页面?
恶意网站是否可以在未经用户同意的情况下读取或修改属于扩展的数据?
扩展钱包存在点击劫持漏洞吗?
扩展钱包(通常是background script)在处理消息之前是否已检查消息来源?
应用程序是否实现了有效的内容安全策略?
Electron桌面钱包
在编写了web应用程序的代码之后,为什么不用这些代码来建造一个Electron中桌面应用程序呢?
在以往测试过的桌面钱包中,大约80%的桌面钱包是基于Electron框架的。在测试基于Electron的桌面应用程序时,不仅要寻找web应用程序中可能存在的漏洞,还要检查Electron配置是否安全。
CertiK曾针对Electron的桌面应用程序漏洞进行了分析,你可以点击访问此文章了解详情。
以下是基于Electron的桌面钱包受评估时要增加检查的审计类目:
应用程序使用什么版本的Electron?
应用程序是否加载远程内容?
应用程序是否禁用“nodeIntegration”和“enableRemoteModule”?
应用程序是否启用了“contextisolation”, “sandbox” and “webSecurity”选项?
应用程序是否允许用户在同一窗口中从当前钱包页面跳转到任意的外部页面?
应用程序是否实现了有效的内容安全策略?
preload script是否包含可能被滥用的代码?
应用程序是否将用户输入直接传递到危险函数中(如“openExternal”)?
应用程序会使不安全的自定义协议吗?
服务器端漏洞检查列表
在我们测试过的加密钱包应用程序中,有一半以上是没有中心化服务器的,他们直接与区块链节点相连。
CertiK技术团队认为这是减少攻击面和保护用户隐私的方法。
但是,如果应用程序希望为客户提供除了帐户管理和令牌传输之外的更多功能,那么该应用程序可能需要一个带有数据库和服务器端代码的中心化服务器。
服务器端组件要测试的项目高度依赖于应用程序特性。
根据在研究以及与客户接触中发现的服务器端漏洞,我们编写了下文的漏洞检查表。当然,它并不包含所有可能产生的服务器端漏洞。
认证和授权
KYC及其有效性
竞赛条件
云端服务器配置错误
Web服务器配置错误
不安全的直接对象引用(IDOR)
服务端请求伪造(SSRF)
不安全的文件上传
任何类型的注入(SQL,命令,template)漏洞
任意文件读/写
业务逻辑错误
速率限制
拒绝服务
信息泄漏
总结
随着技术的发展,黑客们实施的欺诈和攻击手段也越来越多样化。
CertiK安全技术团队希望通过对加密钱包安全隐患的分享让用户更清楚的认识和了解数字货币钱包的安全性问题、提高警惕。
现阶段,许多开发团队对于安全的问题重视程度远远低于对于业务的重视程度,对自身的钱包产品并未做到足够的安全防护。通过分享加密钱包的安全审计类目,CertiK期望加密钱包项目方对于产品的安全标准拥有清晰的认知,从而促进产品安全升级,共同保护用户资产的安全性。
数字货币攻击是多技术维度的综合攻击,需要考虑到在数字货币管理流通过程中所有涉及到的应用安全,包括电脑硬件、区块链软件,钱包等区块链服务软件,智能合约等。
加密钱包需要重视对于潜在攻击方式的检测和监视,避免多次受到同一方式的攻击,并且加强数字货币账户安全保护方法,使用物理加密的离线冷存储(cold storage)来保存重要数字货币。除此之外,需要聘请专业的安全团队进行网络层面的测试,并通过远程模拟攻击来寻找漏洞。
MyCrypto钱包安全吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于mycryptos钱包APP、MyCrypto钱包安全吗的信息别忘了在本站进行查找喔。