Vyper 外部调用可能会溢出返回数据以返回输入缓冲区 (CVE-2024-24560)
CVE编号
CVE-2024-24560利用情况
暂无补丁情况
N/A披露时间
2024-02-03漏洞描述
Vyper是一种面向以太坊虚拟机的Python智能合约语言。当调用外部合约时,我们将输入缓冲区从字节28开始写入,并分配返回缓冲区从字节0开始(与输入缓冲区重叠)。在检查动态类型的RETURNDATASIZE时,只将其大小与该类型的最小允许大小进行比较,而不是与返回值的长度进行比较。结果是,格式错误的返回数据可能导致合约将输入缓冲区的数据误认为是返回数据。当被调用的合约返回无效的ABIv2编码数据时,调用合约可以读取不同的无效数据(来自脏缓冲区),而不是被调用的合约返回的数据。解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。
参考链接 |
|
---|---|
https://github.com/vyperlang/vyper/security/advisories/GHSA-gp3w-2v2m-p686 |
- 攻击路径 网络
- 攻击复杂度 高
- 权限要求 无
- 影响范围 未更改
- 用户交互 无
- 可用性 无
- 保密性 低
- 完整性 无
CWE-ID | 漏洞类型 |
CWE-119 | 内存缓冲区边界内操作的限制不恰当 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论