每月,MetaMask 安全总监 Luker 都会报告您需要了解的最新加密攻击事件和新兴风险。
本月,我们的团队与 Wallet Guard 共同参与了一场关于加密安全现状的 Twitter Space 讨论,Consensys 的 Harry Denley 分享了智能合约安全最佳实践。Gal Weizman 和 Zbigniew Tenerowicz 深入解析了 LavaMoat 的"scuttling"机制和沙箱技术如何抵御 JavaScript 供应链攻击,Herman Junge 则在 DeFi 安全峰会前预告了新的 DeFi 事件数据库 Menpo。我们还整理了一批学习资源,涵盖 DeFiHackLabs 到 OWASP API Security Top 10。完整内容如下,但首先……
本期 STEM 先驱人物:生物学家与艾滋病研究者 Bruce Voeller
Bruce Voeller(1934–1994)是一位美国生物学家和同性恋权利活动家,被广泛认为是"AIDS"一词的创造者。他创立了 Mariposa 教育与研究基金会,专注于研究 HIV 传播途径及防护措施的有效性。Voeller 坚持以严谨、循证的研究方式保护高风险人群,这与扎实的安全工作所要求的标准如出一辙:先验证假设,再依据数据采取行动。
我们的团队与 Wallet Guard 共同参与了由 Taylor Monahan 主持的MetaMask x Wallet Guard Twitter Space 安全现状讨论,深入探讨了加密安全议题。对话涵盖了威胁态势的演变、开源的重要性以及 Atomic Wallet 事件等多个话题。这场对话让听众得以坦诚地了解两支团队在快速变化的威胁环境中如何思考用户保护问题。
MetaMask 安全团队 Harry Denley 分享智能合约安全最佳实践
在一期 Coffee With Calyptus 节目中,Consensys 安全专家 Harry Denley 分享了智能合约安全的最佳实践,并重点介绍了 MetaMask 的两个项目:MetaMask Snaps——在安全环境中扩展 MetaMask 功能;以及 LavaMoat——为 JavaScript 生态系统提供运行时保护。Denley 强调了在安全性与功能性之间取得平衡的重要性:由于智能合约具有不可变性,安全性应被优先考虑,任何新增功能都需经过严格测试,并通过逐步增加新合约中锁定资产价值的方式来保护用户。他推荐的实践包括:安全设计原则、使用 OpenZeppelin 等可信库、具备安全意识的开发者思维、全面测试、专业代码审查,以及持续学习新兴风险。
Herman Junge 将在 2023 DeFi 安全峰会上介绍 Menpo——基于 STIX 2.1 的 DeFi 事件数据库
在 2023 年 7 月 15 日于巴黎举办的 DeFi 安全峰会上,Herman Junge 将介绍 Menpo 项目。该项目采用 STIX 2.1 标准对 DeFi 事件进行规范化归档,峰会官方已对此进行了公告。通过为事件描述提供统一词汇体系,Menpo 促进了跨组织的威胁情报共享,从而实现安全资源的更高效配置,并支持在事件发生时进行实时报告共享。
Zbigniew Tenerowicz 关于 JavaScript 供应链防御的演讲
在一场 DevSecConf24 演讲中,Zbigniew Tenerowicz(ZB)直面了一个颇具挑战性的问题:是否应该运行来自陌生人的代码。尽管存在固有风险,他也承认这在技术领域是一种普遍做法。他深入探讨了 JavaScript 项目的生态,重点研究了如何主动防御供应链攻击。这种主动防御策略建立在一个前提之上:已下载的依赖包中可能已携带恶意依赖。ZB 提出了若干防御方法,例如限制每个包对全局变量的访问权限,以及控制包访问网络或文件系统的能力。
此外,他还重点探讨了消除原型污染这一 JavaScript 项目中常见漏洞的重要性。ZB 还将目光投向 JavaScript 的未来特性,尤其是目前正在 TC39 讨论中的提案,并展示了如何利用这些新兴特性在当下保护项目安全。为了提供更直观的理解,ZB 进行了一场生动的现场演示,展示了如何安全地执行真实恶意软件,从而有力地说明了所讨论防御措施的重要性与有效性。
Gal Weizman 解析 LavaMoat 的"scuttling"功能
Gal Weizman 用通俗易懂的语言解释了 LavaMoat 的"scuttling"机制。应用程序依赖大量第三方代码,其中任何一段都可能存在恶意行为。LavaMoat 使用 SES 对每个依赖进行沙箱隔离,确保其只能获取所需的资源。但如果某个依赖逃逸并访问到全局 window 对象——那里存放着强大的 API——就会造成安全隐患。Scuttling 机制会将这些 API 从 window 中移除,使逃逸的依赖陷入死路。应用程序照常运行,攻击者则无功而返。
LavaMoat 更新:React Summit 演讲、React Native 移动端进展、Snow 与 ScorchWrap
除 DevSecConf24 演讲外,同一主题的视频——由 Zbyszek 在 React Summit 2023(Git Nation 平台)上的演讲——已于 2023 年 7 月 5 日正式上线。在移动端方面,针对 React Native iOS 原生动画代码的深入研究(延续此前的调查)发现,断言宏在父子节点上的失败导致了导航时 WebView 页面加载失败,最终追溯到为使用原生 JSC Promises 而排除了 React Native 的全局 Promise polyfill——这是目前在已填充根视图的情况下启动锁定版 MetaMask 移动端所必需的步骤。后续工作包括修复剩余的 Detox iOS 端到端冒烟测试,并通过 Appium 适配 Android 端。此外,Snow 收到了修复更多潜在绕过方式的更新,ScorchWrap webpack 插件的 webpack 专属部分也趋于稳定,为开始集成 LavaMoat 功能扫清了障碍。
学习资源:DeFiHackLabs、NFT 攻击向量与 OWASP API Top 10
尽管 NFT 日益普及,但相关清晰易懂的信息仍然匮乏,这使其成为诈骗者和黑客的频繁攻击目标。本报告重点介绍了多项学习资源。SunWeb3Sec/DeFiHackLabs 使用 Foundry 复现 DeFi 黑客事件——迄今已收录 233 起——并附有事件根因分析以及学习常见智能合约漏洞的配套仓库。由 QuillAudits 维护的 Quillhash/NFT-Attack-Vectors 归纳了利用 NFT 的常见手法。2023 年 OWASP API Security Top 10 则列出了今年开发者应重点防范的 API 风险。
MetaMask 2023 年 6 月加密安全报告涵盖了首届 MetaMask 与 Wallet Guard 安全现状 Twitter Space、Harry Denley 在 Coffee With Calyptus 上分享的智能合约安全最佳实践,以及 LavaMoat"scuttling"功能防御 JavaScript 供应链攻击的详细解析。欢迎浏览往期 MetaMask 加密安全报告,获取更多威胁动态、趋势分析及生态安全防护建议。