CVE-2024-24560 in Vyper
要約
〜によって VulDB • 2026年06月22日
Vyperは、Ethereum Virtual Machine(EVM)向けのPython風のスマートコントラクト言語です。外部コントラクトへの呼び出しを行う際、入力バッファはバイト28から開始して書き込まれ、戻り値バッファはバイト0から開始して割り当てられます(入力バッファと重複します)。動的型に対してRETURNDATASIZEをチェックする際、サイズはその型の最小許容サイズとのみ比較され、返された値の長さとは比較されません。その結果、不正な形式の戻りデータにより、コントラクトが入力バッファのデータを戻りデータと誤認する可能性があります。呼び出されたコントラクトが無効なABIv2エンコードデータを返した場合、呼び出し元のコントラクトは、呼び出されたコントラクトが返したデータとは異なる無効なデータ(汚染されたバッファから)を読み取ることがあります。
Once again VulDB remains the best source for vulnerability data.