Headline
GHSA-3w94-vq2x-v5wr: ethereum does not check transaction malleability for EIP-2930, EIP-1559 and EIP-7702 transactions
Impact
Prior to ethereum
crate v0.18.0, signature malleability (according to EIP-2) was only checked for “legacy” transactions, but not for EIP-2930, EIP-1559 and EIP-7702 transactions.
This is a specification deviation and therefore a high severity advisory if the ethereum
crate is used for Ethereum mainnet. Note that signature malleability itself is not a security issue, and therefore if the ethereum
crate is used on a single-implementation blockchain, it’s a low/informational severity advisory.
Patches
The issue is fixed in ethereum
v0.18.0
Workarounds
You can also manually check transaction malleability outside of the crate. But it’s recommended to simply upgrade the version.
References
See PR: https://github.com/rust-ethereum/ethereum/pull/67
Impact
Prior to ethereum crate v0.18.0, signature malleability (according to EIP-2) was only checked for “legacy” transactions, but not for EIP-2930, EIP-1559 and EIP-7702 transactions.
This is a specification deviation and therefore a high severity advisory if the ethereum crate is used for Ethereum mainnet. Note that signature malleability itself is not a security issue, and therefore if the ethereum crate is used on a single-implementation blockchain, it’s a low/informational severity advisory.
Patches
The issue is fixed in ethereum v0.18.0
Workarounds
You can also manually check transaction malleability outside of the crate. But it’s recommended to simply upgrade the version.
References
See PR: rust-ethereum/ethereum#67
References
- GHSA-3w94-vq2x-v5wr
- rust-ethereum/ethereum#67