文章转载来源: 慢雾科技
作者:Lisa & Aro
编辑:Liz
在当今互联网环境中,恶意软件、病毒、钓鱼攻击等威胁层出不穷,安装杀毒软件(如 AVG、Bitdefender、Kaspersky、Malwarebytes 等国际知名产品)可以帮助用户防范恶意程序,提高系统安全性。然而,杀毒软件的作用在于提供基本的安全防护,它只能减少风险,并不能保证绝对的安全。对抗是一个动态过程,安装杀毒软件只是提升安全性的第一步。同时,杀毒软件本身也可能出现误报的情况,带来额外的风险。
近期,有用户反馈,在使用杀毒软件后,部分浏览器扩展程序(特别是加密货币钱包扩展)被误报为恶意软件,导致扩展的 JavaScript 文件被隔离或删除,最终扩展钱包损坏,无法正常使用。
对于 Web3 用户而言,这种情况尤为严重,因为加密钱包扩展通常存储着私钥,如果处理不当,可能会导致钱包数据丢失,甚至无法找回资产。因此,了解如何正确恢复被误报隔离的扩展数据至关重要。
如果发现杀毒软件误报导致浏览器扩展受损,建议按以下步骤进行恢复:
1. 从隔离区恢复文件,切勿卸载扩展
如果发现某个软件或扩展无法运行,第一时间检查杀毒软件的“隔离区”(Quarantine) 或“历史记录”(History),寻找被误报的文件,切勿删除隔离文件。
2. 备份并查找本地扩展数据
扩展的数据通常存储在本地磁盘,即使扩展无法打开,仍然可以找到相关数据进行恢复(扩展 ID 以 MetaMask 为例:nkbihfbeogaeaoehlefnkodbefgpgknn):
~/Library/Application Support/Google/Chrome/Default/Local Extension Settings/nkbihfbeogaeaoehlefnkodbefgpgknn
需要注意的是,如果 Chrome 采用了多个账号配置,路径中的 Default 可能变成 Profile 1/Profile 2,需要检查具体的 Profile 目录,根据实际情况调整路径。建议第一时间备份目标扩展的完整目录,以便在发生问题时进行恢复。
3. 粗暴恢复方法:覆盖本地扩展目录
如果误报导致扩展损坏,最直接的方法是在新电脑或新浏览器环境下,将备份的扩展数据直接覆盖到本地路径对应的扩展目录,然后重新打开扩展程序。
4. 高级恢复方法:手动解密私钥数据
如果扩展仍然无法打开或数据缺失,可以尝试更高级的恢复方式,即手动解密私钥数据来恢复。以 MetaMask 为例:
如果 MetaMask 扩展仍能打开某些页面(如 chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/home.html),可以尝试运行以下代码获取加密私钥数据:
chrome.storage.local.get('data', result => { var vault = result.data.KeyringController.vault; console.log(vault);});
然后,将 vault 数据复制到 MetaMask Vault 解密工具进行解密。
5. 编写自定义恢复工具
如果上述方法无法恢复钱包数据,用户可以自行编写脚本,从本地数据库文件中提取扩展存储的数据,再进行解密。此处以 PhantomKeyRetriever 为模版,编写不同钱包恢复工具的底层原理与实现如下:
钱包插件通常将敏感数据存储在本地系统的数据库或文件中。浏览器扩展钱包(如 Phantom、MetaMask 等)利用浏览器提供的存储 API,将加密后的数据保存在浏览器的本地存储区域,通常是 LevelDB 或 IndexedDB 等数据库系统中。无论钱包类型如何,一个关键原则是数据始终以加密形式存储,确保即使数据被复制,没有正确的密码也无法访问。
大多数加密钱包采用多层加密架构以增强安全性。首先,用户的主密码用于加密一个中间密钥(通常称为"加密密钥"或"解密密钥")。然后,这个中间密钥用于加密实际的私钥或助记词。这种设计使得即使钱包应用的代码被篡改,攻击者也需要知道用户密码才能获取私钥。这种多层设计还允许钱包应用在用户登录后只解密中间密钥,而不必每次操作都重新输入主密码。
编写钱包恢复工具的流程通常包括:
这个过程需要精确了解钱包的加密方案和数据存储格式,这通常需要通过逆向工程或分析钱包的开源代码获得。
以 PhantomKeyRetriever 工具来说,这是一款专门设计用于从 Chrome 浏览器数据中提取 Phantom 钱包助记词或私钥的脚本,慢雾(SlowMist) 目前已将此工具在GitHub 开源 (https://github.com/slowmist/PhantomKeyRetriever),其核心原理如下:
在这个双层解密过程中,脚本支持 PBKDF2 和 Scrypt 两种密钥派生函数,并使用 NaCl 库的SecretBox 进行安全解密。最终,根据解密后数据的类型,脚本会生成 BIP39 标准的助记词或提取 Base58 编码的私钥。
需要注意的是,其他支持扩展钱包的浏览器(比如 Edge、Firefox)也是类似的原理,此处不再赘述。
为了降低误报风险,用户可以采取以下措施:
对抗永远是动态变化的,安全策略也需要不断调整。安装杀毒软件固然重要,但最终,用户才是自己资产的最后一道防线,遇到误报时,用户应冷静处理,避免直接删除关键文件,并采用适当的恢复手段。只有掌握正确的安全知识,才能真正保障自己的数据安全。
来源:慢雾科技
发布人:暖色
声明:该文观点仅代表作者本人,不代表火讯财经立场。火讯财经系信息发布平台,仅提供信息存储空间服务。
如文章涉及侵权, 请及时致函告之,本站将第⼀时间删除⽂章。邮箱:840034348@qq.com