元宇宙非小号金色财经交流群社区官网

区块链钱包漏洞修复策略解析

浏览:146|时间:2023-06-23 20:05:40
如何修补区块链钱包漏洞?

区块链钱包漏洞可窃取加密货币

CheckPoint研究人员在Everscale区块链钱包中发现安全漏洞,可以窃取用户加密货币。

EverSurf

EverSurf是一个跨平台的消息应用,一个区块链浏览器,也是Everscale区块链的加密货币钱包。使用React Native开发框架编写,同时上传到了Google Play Market和Apple Store应用市场。同时,还有一个可运行在任意平台的EverSurf web版本。

图1 EverSurf web版

漏洞分析

Surf钱包中用于对交易进行签名的密钥只保存在用户设备上。所有对区块链的操作都是在客户端来实现的。因此,与其他非托管钱包类似,无需注册过程。

用户首次运行应用时,会被建议创建一个新的钱包。Surf会生成一个seed词组和公私钥对。此外,用户会被要求创建一个6位数字的PIN码。

然后该PIN码被用于登录应用和确认交易。Surf有应对暴力破解PIN码的保护机制:

图2 EverSurf预防暴力破解PIN码

即使没有这类保护机制,创建的密钥和seed词组都保存在浏览器的本地存储中。本地存储是使用localstorage特征从JS访问的key-value存储。

Surf以下面的格式将密钥和seed词组保存在本地存储的“surf.ton.wallet”key中:

图3 保存在浏览器localStorage中的加密的钱包数据

本地存储在web浏览器中并不是受保护的。比如,在Firefox中本地存储以非加密的SQLite数据库的形式存储:

Mozilla\Firefox\Profiles\{profile_name}\webappstore.sqlite

Chrome将localstorage以非加密的levelDB数据库的形式存储:

Google\Chrome\UserData\Default\LocalStorage\leveldb\

也就是可以通过物理或恶意软件访问用户计算机的用户就可以获得这些数据。

此外,本地存储还可以被浏览器扩展访问,然后浏览器扩展可以泄露保存的数据。研究人员创建了一个简单的Chrome web扩展实现了该功能:

alert(localStorage.getItem("surf.ton.wallet"));

安装该扩展后,打开Surf网站后,就可以看到包含加密的keystone的消息:

图4 使用浏览器扩展从localStorage中提取加密的钱包数据

因为控制用户钱包的数据是保存在用户计算机上的,因此对用户资金的唯一保护就是强加密。

Keystore加密

Surf应用会在用户输入正确PIN码后加密seed词语并向用户显示:

图5 Surf要求用户输入PIN码

研究人员分析发现askForPassword函数会被调用,并接收加密的keystore。

图6 负责取回seed词语的函数

askForPassword函数会调用validatePassword函数来执行PIN码验证。

图7 askForPassword函数读取和验证PIN码

最重要的动作是PIN码验证。通过调用deriveKeyFromPasswordAndSalt函数,Surf会生成派生密钥,用于解密keystore。然后在isDerivedKeyCorrect函数中使用nacl_secret_box_open执行解密过程。

在deriveKeyFromPasswordAndSalt函数中,Surf会使用使用Scrypt密钥派生函数从PIN码中派生出解密密钥:

图8–Surf派生keystore解密密钥

攻击场景

CheckPoint研究人员

{"encSeed":{"encStr":"6rjkbh88WXkrJWl4os3cjRzvZkQGlnV39U3YvLYUrM7yzf6h79XxXX/VziNde2bkPeSnJZ11Yi4T8CFgPJMyI1W+EN0Yzw+FDdtTq5gaKHjk5nF60CSHZ4qKXObIQ7zBbped","nonce":"2Tdr9FFP0RcpjecwcS8XtcC5M2/FRY+I"}}

攻击过程只花费了38分钟。最后成功获得了派生密钥,并解密了seed词组,可以用于恢复另一个设备上的密钥。

图9 PIN码暴力破解结果

漏洞修复

CheckPoint研究人员将该漏洞提交给了EverSurf开发者,开发团队通过发布桌面版的方式修复了该漏洞。目前,该web版本只用于开发用途。账户的seed词组不在EverSurf web版中使用。

参考及来源:https://research.checkpoint.com/2022/check-point-research-detects-vulnerability-in-the-everscale-blockchain-wallet-preventing-cryptocurrency-theft/

责任编辑:

区块 区块链 区块链钱包 漏洞 钱包

  • 区块链钱包开发的图片 区块链数字钱包开发方案介绍

    区块链钱包开发的图片 区块链数字钱包开发方案介绍

    2022-04-08 14:28:10

    区块链技术开发联盟链开发联盟链只处理特殊群体的成员,缺乏第三方。车牌的几个连接点被指定为记者区块链钱包开发的图片,每个连接点由车牌的所有连接点决定。根据联盟链互联网的分散程度开发区块链钱包的图片_ios开发区块链钱包_开...

  • 一文解释区块链钱包的地址、私钥、转币交易活动的内容

    一文解释区块链钱包的地址、私钥、转币交易活动的内容

    2022-02-17 15:25:13

    建立钱包后会转化成一个以 0x 开始的 42 位字符串数组,这一字符串数组便是钱包详细地址,一个钱包相匹配一个钱包详细地址,地址唯一且不可以改动,换句话说一个钱包中全部代币总的汇款收付款详细地址是一样的。例如,一个钱包中...

  • 区块链钱包是如何发展起来的?可以安全的存交易币吗

    区块链钱包是如何发展起来的?可以安全的存交易币吗

    2022-02-22 10:53:49

     首次使用该技术制作的加密货币非常有名,被认为是迄今为止开发的最佳虚拟资产程序。比特币在一些国家被禁止使用,但主要用作虚拟资产。加密货币在推出时并没有取得太大的成功。但是,随着技术的进步,它在商业世界中的地位逐...

  • 今天要和大家分享的是区块链钱包的骗局

    今天要和大家分享的是区块链钱包的骗局

    2022-04-01 14:25:44

    今天要和大家分享的是区块链钱包的骗局。目前市场上有各种区块链项目,哪个行业流行就会产生哪种链,哪种货币!这些区块链项目是金融投资项目,不同于我国重点发展方向所倡导的区块链技术。属于以区块链技术为诱饵,进行包装、投机、炒作...

本站分享的区块链、Web3.0元宇宙、NFT、数字藏品最新消息等相关数藏知识快讯NFR资讯新闻,与金色财经非小号巴比特星球前线Btc中国官网无关,本站资讯观点不作为投资依据,市场有风险,投资需谨慎!不提供社区论坛BBS微博微信交流群等相关币圈信息发布!
本站内容来源于互联网,如存在侵权及违规内容投诉邮箱( [email protected] )
皮卡丘 2021-2024© YangKaTie.Com All