Learn about CVE-2022-31111 affecting Frontier's Ethereum compatibility layer due to incorrect truncation between EVM and Substrate balance types, causing transfer value discrepancies. Find mitigation steps and patch details.
Frontier is Substrate's Ethereum compatibility layer where an incorrect truncation implementation led to a possible discrepancy between EVM transfer value and actual Substrate value. It is crucial to plan an emergency upgrade and pause EVM execution until patched.
Understanding CVE-2022-20657
In this section, we will explore the details of the CVE-2022-31111 vulnerability affecting Frontier.
What is CVE-2022-31111?
Frontier, a substrate's Ethereum compatibility layer, suffers from an issue where incorrect truncation between EVM and Substrate balance types can cause a mismatch in transferred values.
The Impact of CVE-2022-31111
The vulnerability can lead to discrepancies between the perceived EVM transfer value and the actual Substrate value, affecting EVM internal states.
Technical Details of CVE-2022-31111
Let's delve into the technical aspects of the CVE-2022-31111 vulnerability.
Vulnerability Description
The problem arises from the incorrect truncation implementation when converting EVM balance type to Substrate balance type, potentially affecting EVM transfer values.
Affected Systems and Versions
Affected versions include commits prior to fed5e0a9577c10bea021721e8c2c5c378e16bf66 in the Frontier master branch and polkadot-v0.9.22 branch commit e3e427fa2e5d1200a784679f8015d4774cedc934.
Exploitation Mechanism
Exploiting the vulnerability involves taking advantage of the discrepancy in balance type conversions to manipulate transfer values.
Mitigation and Prevention
Learn how to mitigate and prevent the CVE-2022-31111 vulnerability in this section.
Immediate Steps to Take
Plan an emergency upgrade for Frontier and temporarily halt EVM execution until the necessary patches are applied.
Long-Term Security Practices
Implement robust security practices and conduct regular code reviews to prevent similar vulnerabilities in the future.
Patching and Updates
Ensure that you apply the patches present in the Frontier master branch commit fed5e0a9577c10bea021721e8c2c5c378e16bf66 and polkadot-v0.9.22 branch commit e3e427fa2e5d1200a784679f8015d4774cedc934.