报告日期: 2023-12-20
事件日期: 2023-12-14
检测到的事件类型: 未经授权的访问和恶意代码
执行摘要
Ledger 于 14 年 2023 月 XNUMX 日星期四检测到使用 Ledger Connect Kit 的漏洞。该漏洞在使用 Ledger Connect Kit 的 DApp 中注入了恶意代码,欺骗 EVM DApp 用户签署交易,从而耗尽钱包。该漏洞很快被发现,并在不久后实施了解决方案。与此同时,少量用户陷入攻击并签署交易,耗尽了他们的钱包。
时间线
时间表时间使用中欧时间 (CET) 时区详细说明:
2023年12月14日:上午: 一名前 Ledger 员工成为复杂网络钓鱼攻击的受害者,该攻击使用该个人的会话令牌绕过 2FA,获得了对其 NPMJS 帐户的访问权限。
2023年12月14日 – 09:49AM / 10:44AM / 11:37AM: 攻击者在 NPMJS(应用程序之间共享的 Javascript 代码的包管理器)上发布了 Ledger Connect Kit 的恶意版本(影响版本 1.1.5、1.1.6 和 1.1.7)。恶意代码使用流氓 WalletConnect 项目将资产重新路由到黑客的钱包。
2023-12-14: 1.45PM: 由于生态系统中不同参与者的迅速反应,Ledger 意识到了正在进行的攻击,其中包括 Blockaid,他联系了 Ledger 团队并分享了 X 的更新。
2023-12-14: 2.18PM: Ledger 的技术和安全团队收到了有关攻击的警报,Ledger 团队在意识到这一情况后 40 分钟内就部署了正版 Ledger Connect Kit 修复程序。由于 CDN(内容分发网络)的性质和互联网上的缓存机制,恶意文件的访问时间会更长一些。从NPMJS妥协到彻底解决,已经过去了大约5个小时。恶意代码的可用性之所以延长,是因为 CDN 使用文件的最新正版版本在全球范围内传播和更新其缓存所花费的时间。尽管该文件存在了五个小时,但我们根据调查估计,用户资产被主动耗尽的窗口总共被限制在不到两个小时。
Ledger 与我们的合作伙伴 WalletConnect 迅速协调,后者禁用了用于窃取用户资产的恶意 WalletConnect 实例。
2023-12-14: 2.55 下午 经过我们的协调,Tether 冻结了攻击者的 USDT(参见 TX).
根本原因分析、发现和预防措施
语境
莱杰 连接套件 是一个 Java Script 开源库,允许开发人员将他们的 DApp 连接到 Ledger 硬件。它可以使用集成 连接套件加载程序 允许 DApp 在运行时从 CDN 加载 Connect-Kit 的组件。这使得 DApp 开发者始终拥有最新版本的 连接套件 无需手动更新软件包版本并发布新版本。 Ledger 用于分发的 CDN 是 NPMJS。大多数 DApp 都集成了 连接套件 使用提到的 Connect-Kit-loader。
在 Ledger Connect Kit 漏洞中,攻击者在任何时候都无法访问任何 Ledger 基础设施、Ledger 代码存储库或 DApp 本身。攻击者能够在 CDN 中推送恶意代码包来代替 Connect-Kit 本身。然后,已经集成 Connect-Kit-loader 的 DApp 会动态加载该恶意 Connect-Kit 代码。
Ledger Connect Kit 漏洞凸显了 Ledger 和整个行业在保护用户方面共同面临的风险,同时也提醒我们,我们需要共同继续提高 DApp 的安全标准,用户将在这些 DApp 中进行基于浏览器的签名。这次是 Ledger 的服务被利用,但将来其他服务或图书馆可能会发生这种情况。
根本原因
为了能够在 NPMJS 上推送恶意代码包,攻击者对一名前员工进行了网络钓鱼,以利用该人对 NPMJS 的访问权限。前员工对 Ledger 系统(包括 Github、基于 SSO 的服务、所有内部 Ledger 工具和外部工具)的访问权限已被正确撤销,但不幸的是,前员工对 NPMJS 的访问权限并未被正确撤销。
我们可以确认这是一起不幸的孤立事件。 Ledger 员工对 Ledger 基础设施的访问在员工离职期间会自动撤销,但是,由于当前技术服务和工具目前在全球范围内的运行方式,我们无法自动撤销对某些外部工具(包括 NPMJS)的访问,而这些必须使用每个人的员工离职清单。 Ledger 有一个现有的并定期更新的离职程序,我们可以将离职员工从所有外部工具中删除。在本例中,NPMJS 上的访问权限并未被手动撤销,对此我们感到遗憾,并且正在与外部第三方合作伙伴一起进行审核。
这是攻击者实施的一次复杂的攻击。尽管对 NPMJS 目标帐户实施了双因素身份验证 (2FA)(这通常会阻止许多尝试),但攻击者还是通过利用与前员工帐户关联的 API 密钥来规避此安全措施。
这种特定的攻击使攻击者能够上传 Ledger Connect Kit 的新恶意版本,其中包含所谓的 Angel Drainer 恶意软件。 Angel Drainer 是一种恶意软件即服务,专门用于制作签名后会耗尽钱包的恶意交易。它是专门针对 EVM 链的完整基础设施,可按需部署智能合约并制作定制交易,以最大限度地减少损害。
不幸, NPMJS.com 不允许自动进行多重授权或签名验证 出版。我们正在努力添加临时机制,以在部署阶段实施进一步的控制。
发现
这是一次由经验丰富的攻击者执行的精心准备的攻击。所实施的网络钓鱼技术并不关注凭据(这是我们在影响生态系统的大多数前端攻击中看到的),而是攻击者直接对会话令牌进行操作。
使用的恶意软件是 Angel Drainer,Ledger 安全团队在过去三个月中发现使用该恶意软件的犯罪活动有所增加(请参阅这篇已发布的文章) 封锁援助报告)。我们还可以在链上看到被盗的资金正在被分割:85% 给了利用者,15% 给了 Angel Drainer,这可以被视为恶意软件即服务。
这个 Angel Drainer 会根据当前目标资产的类型,诱骗用户签署不同类型的交易。对于ERC20和NFT代币,它要求用户签名 批准 和 允许 消息。对于原生代币,Drainer 会要求用户签署虚假的“声明”交易,其中 要求 方法只是简单地清扫资金,或者简单的代币转账,稍后可以通过在相应地址部署智能合约来清扫。
这就是为什么我们继续鼓励行业内的 Clear Signing,以便用户可以验证他们在 Ledger 硬件设备上的可信显示屏上看到的内容。
补救措施
Ledger 安全和技术团队,包括 Ledger 执行团队,目前正在审查和审计我们使用的 Ledger 内部和外部工具和系统的所有访问控制。
Ledger 将在代码审查、部署、分发和访问控制方面强化其政策,包括将所有外部工具添加到我们的维护和下线检查中。我们将在相关时继续推广代码签名。此外,我们正在进行定期内部审计,以确保其得到正确实施。
Ledger 已经组织了安全培训课程,包括网络钓鱼培训。 2024 年初,还将针对各自部门的所有员工加强内部安全培训计划。 Ledger 已经定期组织第三方安全评估,并将继续优先考虑这些评估。
2024 年初,将进行专门的第三方审核,重点关注访问控制、代码升级和分发。
此外,我们将加强我们的基础设施监控和警报系统,以便能够更快地检测未来的事件并做出反应。
最后,我们将加倍努力防止盲签名,将其作为 Ledger 用户的一个选项删除,以确保最大程度的安全实践,并教育用户在没有安全显示或不了解他们正在签名的内容的情况下签署交易的潜在影响清晰的签名。
我们再次感谢生态系统中的合作伙伴与 Ledger 团队迅速合作,识别并解决该漏洞。
- :具有
- :是
- :不是
- :在哪里
- 09
- 1
- 10
- 11
- 15%
- 2023
- 2024
- 26
- 2FA
- 40
- 51
- 53
- 7
- a
- Able
- ACCESS
- 无障碍
- 账号管理
- 积极地
- 活动
- 演员
- Ad
- 添加
- 增加
- 另外
- 地址
- 影响
- 后
- 再次
- 所有类型
- 让
- 允许
- 允许
- 已经
- 还
- 时刻
- an
- 分析
- 和
- 天使
- 另一个
- 任何
- API
- 约
- 应用
- 保健
- 围绕
- AS
- 评估
- 财富
- 办公室文员:
- 相关
- At
- 攻击
- 攻击
- 尝试
- 审计
- 审计
- 审计
- 认证
- 自动
- 可用性
- 察觉
- 酒吧
- 基于
- BE
- 成为
- 作为
- 之间
- 盲人
- 简要地
- 建立
- 但是
- by
- CAN
- 不能
- 案件
- 原因
- 中央
- 一定
- 链
- 支票
- 清除
- 码
- 代码审查
- 统
- 购买的订单均
- 完成
- 元件
- 进行
- 开展
- 确认
- 分享链接
- 包含
- 内容
- 继续
- 合同
- 合同的
- 控制
- 控制
- 协调
- 协调
- 相应
- 可以
- 手艺
- 资历
- 刑事
- 电流
- 目前
- 损伤
- DAPP
- DApp开发者
- DApps
- 十二月
- 交货
- 需求
- 部门
- 根据
- 部署
- 部署
- 部署
- 部署
- 设计
- 尽管
- 详细
- 检测
- 检测
- 开发
- 设备
- DID
- 不同
- 直接
- 禁用
- 屏 显:
- 分配
- 不
- 翻番
- 向下
- 排水
- 倒掉
- 两
- ,我们将参加
- 动态
- 每
- 早
- 生态系统
- 教育
- 或
- 员工
- 员工
- 启用
- 鼓励
- 强制执行
- 从事
- 确保
- ERC20
- 评估
- 醚(ETH)
- 欧洲
- 甚至
- EVM
- 执行
- 执行
- 现有
- 有经验
- 利用
- 剥削
- 扩展
- 外部
- 面部彩妆
- 假
- 快
- 文件
- 发现
- 五
- 固定
- 专注焦点
- 重点
- 针对
- 前
- 止
- 资金
- 资金被盗
- 进一步
- 未来
- 获得
- 真正
- GitHub上
- 在全球范围内
- 发生
- 硬件
- 硬件设备
- 有
- 有
- 亮点
- 小时
- HOURS
- 创新中心
- 但是
- HTTP
- HTTPS
- 确定
- 影响力故事
- 实施
- in
- 事件
- 事故
- 包括
- 包含
- 增加
- 个人
- 行业中的应用:
- 基础设施
- 内
- 例
- 代替
- 整合
- 集成
- 内部
- 网络
- 成
- 调查
- 孤立
- IT
- 它的
- 本身
- 爪哇岛
- JavaScript的
- 键
- 试剂盒
- 后来
- 最新
- 莱杰
- 减
- 杠杆作用
- 自学资料库
- 小
- 加载
- 不再
- 低
- 制成
- 保养
- 使
- 恶意软件
- 经理
- 手动
- 许多
- 最大宽度
- 生产力
- 与此同时
- 衡量
- 机制
- 提到
- 条未读消息
- 分钟
- 监控
- 个月
- 早晨
- 最先进的
- 必须
- 本地人
- 自然
- 需求
- 网络
- 全新
- NFT
- nft代币
- 通常
- of
- on
- 链上
- 正在进行
- 打开
- 开放源码
- 操作
- 附加选项
- or
- 秩序
- 举办
- 我们的
- 输出
- 包
- 合伙人
- 伙伴
- 党
- 通过
- 过去
- 钓鱼
- 网络钓鱼攻击
- 地方
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 请
- pm
- 政策
- 潜力
- 做法
- 准备
- 存在
- 预防
- 优先
- 程序
- 曲目
- 项目
- 提升
- 正确
- 保护
- 出版
- 推
- 很快
- 提高
- 达到
- 应对
- 反应
- 最近
- 经常性的
- 参考
- 简称
- 遗憾
- 定期
- 经常
- 加强
- 释放
- 相应
- 保持
- 提醒
- 去掉
- 删除
- 报告
- 知识库
- 要求
- 分辨率
- 解决
- 那些
- 导致
- 检讨
- 回顾
- 风险
- s
- 脚本
- 安全
- 保安
- 看到
- 看到
- 服务
- 特色服务
- 会议
- 招生面试
- 共用的,
- 签署
- 签名
- 签
- 签约
- 简易
- 只是
- 智能
- 聪明的合同
- 智能合同
- So
- 极致
- 来源
- 专门
- 具体的
- 特别是
- 分裂
- 阶段
- 开始
- 被盗
- 肯定
- 如飞
- 产品
- 量身定制
- 拍摄
- 针对
- 瞄准
- 团队
- 队
- 技术
- 专业技术
- 系链
- 比
- 感谢
- 谢谢
- 这
- 未来
- 其
- 他们自己
- 然后
- 博曼
- 他们
- 第三
- Free Introduction
- 三
- 星期四
- 次
- 至
- 象征
- 令牌
- 工具
- 合计
- 产品培训
- 交易
- 交易
- 转让
- 信任
- 二
- 类型
- 类型
- 理解
- 不幸
- 不幸
- 更新
- 最新动态
- USDT
- 使用
- 用过的
- 用户
- 用户
- 运用
- 极
- 企业验证
- 确认
- 版本
- 受害者
- 体积
- 钱包
- 钱包
- 是
- we
- 井
- 为
- 什么是
- 什么是
- ,尤其是
- 这
- WHO
- 为什么
- 将
- 窗口
- 中
- 也完全不需要
- 工作
- 加工
- 将
- X
- 和风网