阅读时间: 5 分钟
Web3 的世界是一个协议和标准的世界。 您肯定遇到过几种 ERC 标准。 一些最著名的 ERC 标准是 20 和 721,分别用于代币和 NFT。 但 Web3 不限于此。
我们在 Web3 中看到定期的更新和升级。 最新的升级之一是 ERC 4337,于 2023 年 4337 月部署在以太坊主网上。并非每次更新都一次性成功; ERC 4337 也是如此。在这篇博客中,我们将了解有关标准用户操作部分的漏洞及其影响。 首先让我们先简单介绍一下ERC XNUMX标准。
什么是 ERC 4337?
与比特币的网络不同, 以太坊 支持链上智能合约,这使得以太坊拥有两种不同类型的账户,一种是交易账户,一种是运营账户。 除此之外,智能合约有自己的空间,就像一个账户。 以太坊中的这两类账户都有各自的功能。
大多数与以太坊一起运行的钱包都是 EOA,这意味着用户的账户,而不是智能合约的账户。 这些类型的帐户有其自身的局限性。 一个限制包括用户完全依赖私钥来访问帐户并需要所有签名才能进行交易。 这些限制促使引入了 ERC 4337。
ERC 4337 试图通过结合两种账户类型的最佳特性来提供账户抽象。 是的,EOA 和智能合约账户。 这是通过一个可以同时交易代币和创建合约的合约实现的,而 ERC 4337 是促进这一令人敬畏的新进步的标准。
UserOperation 打包漏洞?
这个标准和项目的一切都很棒,但哪里出了问题? 好吧,有一个实现问题导致基于用于签名的方法的哈希值不一致。 这会导致顺序冲突,尤其是相同 UserOperations 的不同散列和不同 UserOperations 的冲突散列。
受影响的区域仅限于两个漏洞,即 EntryPoint 打包漏洞和 VerifyingPaymaster 打包漏洞。 稍后会详细介绍。 让我们先有个大概的了解,然后再逐个了解它们。
让我们看一下 UserOperation.sol:-
您会看到 UserOperation 参数(一个 Calldata)作为参数传递给 pack 函数。 让我们探索结构:-
这些是 UserOperation 结构携带的字段。 为了将这一大部分 Calldata 复制到内存中,代码段使用汇编。 合约的一些方法旨在捕获 UserOperation 的所有字段,包括可变大小字段,在 ABI 编码中也称为动态字段。 例如,此结构中的动态编码为“initCode”、“callData”和“paymasterAndData”。
某些方法不能包含“paymasterAndData”,因为该字段尚未定义或声明。 方法使用提供给动态数据类型的“.offset”便利字段来做到这一点。 但是使用 ABI 编码参数的合约不会验证字段定义的顺序和偏移量的有效性。 可以在具有异常散列属性的 Calldata 中构造用户操作的有效表示。
入口点打包漏洞
UserOperation 的问题也会影响标准的其他一些部分,EntryPoint Packing 漏洞就是其中之一。 当 EntryPoint 和钱包合约之间使用不同的哈希方案或使用非标准的用户操作编码时,我们会看到哈希差异。
风险表现为 EntryPoint。 现在单个用户操作可以由多个“用户操作哈希”表示,而同一个“用户操作哈希”可以表示多个用户操作。 现在这会产生一些不需要的效果。 让我们讨论一下它可能产生的影响。
Erc 4337 仍处于非常早期的阶段,因为它刚刚在 XNUMX 月份发布,因此这些漏洞的影响尚不完全清楚。 很难从鸟瞰图描述潜在影响。 除此之外,影响取决于实施捆绑器、索引器、用户操作浏览器和其他链下服务。 让我们看一下此漏洞导致的一些问题。
- 这可能会给用户带来混乱的体验,因为用户操作哈希可能会在提交时间和包含时间之间发生变化。 大多数钱包都不知道这种现象,因此它们可能无法解释这种差异。
- 可以更改钱包并将其设计为通过将所有用户操作哈希设置为相同来有意避免索引。
- 如果监控用户操作包含的链下服务错过了给定用户操作的包含,我们可以看到数据和密钥处理不当。
验证 Paymaster 打包漏洞
没有人喜欢从网上购物订购东西并收到完全不同的产品。 在Web3上也是一样,但是这个漏洞降低了用户体验。 用户在签名时间和上链时间之间可能已经更改或不同的内容。 发生这种情况的原因是两个不同的用户操作从“VerifyingPaymaster.getHash()”函数返回相同的哈希值。
VerifyingPaymaster.getHash() 函数接受一些参数,例如“UserOperation”,它是一个结构、“validUnitl”、一个 uint48 值和一个 validAfter 另一个 uint48 值。 签名时间和包含时间之间的不同内容问题影响用户体验和整体安全性。 让我们讨论它引起的一些担忧。
- 在收到用户操作后以 ABI 编码格式进行签名的链下签名者或使用合约集成来准备签名数据的签名者变得容易受到攻击。
- 可以修改散列以覆盖比预期更少的元素,这可能导致一些静态字段(如 initCode 等)被排除在散列之外。 这可能会导致与出纳员赞助签名的用途不同。
- 通过在获得签名后更改 userOp.initCode 和 userOp.callData,我们可以看到违反和绕过规则。 这将允许 paymaster 的本机令牌用于铸造 gasless NFT 以外的目的。
结论
随着不断的进步和发展,我们将见证许多令人敬畏的事物,ERC 4337 就是其中之一。 虽然发展和推进安全是我们永远不能妥协的事情。 值得注意的是,标准中的漏洞被发现的速度有多快,并且正在进行持续的研究和开发以确保其安全。
重要的是要注意,即使是在 Web3 中构建的一些最大和最著名的组织也可能会犯与安全相关的错误,而且其他协议肯定也会犯这些错误。 的持续上升 Web3 事件 近几年可见一斑。
保护您、您的用户和您的协议免受此类安全威胁的一站式解决方案正在进行审核。 我们 QuillAudits 是智能合约审计和区块链安全领域的顶级服务提供商之一,请访问我们的网站以了解更多信息并确保您的项目安全。 请继续关注以享受更多此类内容丰富的博客
34 观点
- SEO 支持的内容和 PR 分发。 今天得到放大。
- 柏拉图区块链。 Web3 元宇宙智能。 知识放大。 访问这里。
- 与 Adryenn Ashley 一起铸造未来。 访问这里。
- Sumber: https://blog.quillhash.com/2023/04/24/understanding-erc-4337-user-operation-packing-vulnerability/
- :是
- :不是
- 20
- 2023
- a
- 关于
- ACCESS
- 账号管理
- 帐户抽象
- 账户
- 横过
- 增加
- 进步
- 后
- 所有类型
- 还
- 改变
- an
- 和
- 另一个
- 保健
- 论点
- 参数
- AS
- 组装
- At
- 尝试
- 审计
- 审计
- 基于
- BE
- 因为
- 成为
- 作为
- 最佳
- 之间
- 最大
- blockchain
- 区块链安全
- 博客
- 违反
- 建筑物
- 但是
- by
- 被称为
- CAN
- 不能
- 捕获
- 原因
- 原因
- 链
- 更改
- 改变
- 码
- 结合
- 如何
- 妥协
- 关注
- 扑朔迷离
- 建设
- Contents
- 连续
- 合同
- 合同的
- 方便
- 可以
- 外壳
- 创建信息图
- data
- 定义
- 依靠
- 部署
- 描述
- 设计
- 发展
- 研发支持
- 差异
- 不同
- 讨论
- 差异
- do
- 动态
- 早
- 早期
- 影响
- 分子
- 享受
- 完全
- ERC-4337
- 等
- 复仇
- 以太坊主网
- 甚至
- 所有的
- 例子
- 排除
- 预期
- 体验
- 探索
- 探险
- 眼
- 促进
- 著名
- 特征
- 少数
- 部分
- 字段
- 找到最适合您的地方
- (名字)
- 针对
- 格式
- 发现
- 止
- 充分
- 功能
- 功能
- 运作
- 其他咨询
- 得到
- 越来越
- 特定
- Go
- 去
- 发生
- 硬
- 哈希
- 散列
- 有
- 创新中心
- HTTPS
- 影响力故事
- 影响
- 履行
- 实施
- 重要
- in
- 包括
- 包括
- 包含
- 包容
- 个别地
- 信息
- 集成
- 打算
- 故意地
- 成
- 介绍
- 问题
- 问题
- IT
- 只是
- 键
- 已知
- 大
- (姓氏)
- 最新
- 铅
- 学习用品
- 喜欢
- 局限性
- 限制
- 有限
- 看
- 制成
- mainnet
- 使
- 制作
- 许多
- 三月
- 最大宽度
- 可能..
- 手段
- 内存
- 方法
- 方法
- 可能
- 造币
- 处理不当
- 错过
- 错误
- 改性
- 监控
- 更多
- 最先进的
- 多
- 本地人
- 本机令牌
- 网络
- 全新
- NFT
- 现在
- of
- on
- 一
- 在线
- 网上购物
- OP
- 操作
- 操作
- 运营
- or
- 秩序
- 组织
- 其他名称
- 其他协议
- 我们的
- 超过
- 最划算
- 己
- 类型
- 参数
- 尤其
- 部分
- 通过
- 现象
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 可能
- 潜力
- Prepare
- 私立
- 私钥
- 产品
- 项目
- 保护
- 协议
- 协议
- 提供
- 提供
- 供应商
- 目的
- 很快
- 散列
- 提高
- 原因
- 接收
- 关于
- 地区
- 定期
- 发布
- 信赖
- 代表
- 表示
- 代表
- 研究
- 研究和开发
- 导致
- 回报
- 上升
- 风险
- 定位、竞价/采购和分析/优化数字媒体采购,但算法只不过是解决问题的操作和规则。
- 同
- 方案
- 部分
- 安全
- 担保
- 保安
- 安全威胁
- 看到
- 中模板
- 服务
- 服务供应商
- 特色服务
- 设置
- 几个
- 购物
- 签署
- 签名
- 签约
- 同时
- 单
- 智能
- 聪明的合同
- 智能合同
- So
- SOL
- 方案,
- 一些
- 东西
- 太空
- 赞助
- 阶段
- 标准
- 标准
- 开始
- 留
- 仍
- 服从
- 成功
- 这样
- 支持
- 一定
- 需要
- 比
- 这
- 其
- 他们
- 那里。
- 博曼
- 他们
- 事
- Free Introduction
- 那些
- 威胁
- 次
- 至
- 象征
- 令牌
- 也有
- 最佳
- 办理
- 交易
- 交易
- true
- 类型
- 理解
- 无用
- 更新
- 最新动态
- 升级
- 使用
- 用过的
- 用户
- 用户体验
- 用户
- 验证
- 折扣值
- 非常
- 查看
- 参观
- 漏洞
- 漏洞
- 脆弱
- 钱包
- 钱包
- 是
- we
- Web3
- 您的网站
- 井
- 知名
- 为
- 什么是
- ,尤其是
- 这
- 而
- 为什么
- 将
- 见证
- 世界
- 错误
- 年
- 完全
- 您一站式解决方案
- 和风网