Close Menu

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    What's Hot

    Why does Kamala Harris think she needs to protect black men’s crypto?

    August 14, 2025

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025
    Facebook X (Twitter) Instagram
    Ai Crypto TimesAi Crypto Times
    • Altcoins
      • Bitcoin
      • Coinbase
      • Litecoin
    • Blockchain
    • Crypto
    • Ethereum
    • Lithosphere News Releases
    X (Twitter) Instagram YouTube LinkedIn
    Ai Crypto TimesAi Crypto Times
    Home » Analysis of Storage Corruption Bug

    Analysis of Storage Corruption Bug

    Michael JohnsonBy Michael JohnsonJuly 23, 2025No Comments5 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Reddit Telegram Email
    Share
    Facebook Twitter LinkedIn Pinterest Email


    This blog post provides an update on our findings following the discovery of the storage corruption bug last week. In summary, the bug was much less severe than we initially thought. The small number of affected contracts we found is either only exploitable by the owner, or the exploit can only cause a disruption in the user interface and not in the actual contract logic. All exploitable contracts/dapps we reviewed can be fixed without having to upgrade the contract itself. Of course, please still check your contracts to be safe.

    Following the discovery of the storage corruption bug in the Solidity compiler and the realization that it may have serious effects on already-deployed contracts that cannot be updated, we started analyzing how common the bug is and how exploitable contracts can be addressed.

    We focused on contracts with source code published on etherscan because important or popular smart contracts usually have their source code published there in order to gain trust from their users, who can then verify the compilation. Furthermore, if the source code is not available, it is also much harder for an attacker to find a suitable exploit. Finally, contracts that are privately used (and thus do not require publishing their source code) usually check that they are called from a certain address, and thus an attacker has no means to write to their storage.

    In order to automate the process of checking all contracts on etherscan, we created a modified version of the Solidity compiler that can automatically detect the conditions for triggering the bug. This technique has already reduced the number of potentially vulnerable contracts to 167. We then manually checked those contracts for potential corruption of storage that would make them vulnerable to attacks.

    It turns out that only ten contracts were vulnerable, so we were able to contact most of the contract owners/developers. Seven out of ten of those contracts are only exploitable by the owner in that they are allowed to change certain parameters outside their permitted range, or allowed to unlock a previously locked contract. One contract is exploitable by unprivileged users but have other major flaws in its design. The other two contracts found to be exploitable by unprivileged users either provided no advantages if exploited or only affected the user interface.

    Why are only so few contracts exploitable?

    First, let us define what we mean by “exploitable”:

    The storage corruption bug is exploitable if it can be used to modify a variable in storage in a way that would not be possible without the bug, and this modification has consequences for the behaviour and use of the smart contract. For example, we do not consider a contract exploitable in the following situations:

    • The same account would be able to overwrite the variable in the same state of the contract by regular means.
    • Overwriting can only happen at construction time (note that we did not check whether overwriting occurred at that time).
    • Overwriting is only triggered in unlikely situations where the contract logic was broken anyway (for example, a 32-bit counter that is incremented once per block, oveflows).
    • Variables can be overwritten that are unused in the smart contract and look non-critical, but may be part of the public interface.

    Why is this critical bug only exploitable in so few cases?

    It is a combination of the following factors that together multiply and dramatically reduce the probability of exploitability.

    1. Since small types only provide an advantage in very rare cases, they are seldomly used.
    2. Small types must be adjacent to each other in storage – a single large type in between them prevents the bug from being triggered.
    3. State variables are often assigned one after the other, which removes the corruption at the second assignment.
    4. The combination of “address” and “bool” is most common among the cases that are left, but here, the address variable is often an “owner” that is assigned from msg.sender and thus not exploitable. Even if the owner can be changed, the flag is often a flag that can be still be set by the owner through other means.

    How to fix affected contracts

    A large majority of the exploitable contracts are only exploitable by the contract owner, administrator or developer, particularly though a single function that allows the owner to be changed. The exploit allows a further escalation of privileges for the owner. In order to prevent the owner from taking advantage of this exploit, a proxy contract can be installed between the owner and the affected contract. This proxy contract forwards calls from the owner, but disallows calling the exploitable functions. If calling the exploitable functions is still necessary, the proxy contract can prevent malicious data from being forwarded to the contract.

    If you have specific questions or concerns regarding your contracts, please contact us on gitter.


    A FRIENDLY IMPORTANT NOTE FROM LEGAL
    The statements in this post are recommendations to address the storage corruption bug in the Solidity compiler. As you know, we are working in an emergent and evolving technical space. The same elements that make this work exciting – the innovation, the impact, the growing understanding of how contracts function – are the same ones that make it risky. If you choose to implement the recommendations in this post and continue to participate, you should make sure you understand how it impacts your specific contract and you should understand that there are risks involved. By choosing to implement these recommendations, you alone assume the risks of the consequences.



    Source link

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Michael Johnson

    Related Posts

    SIGN price soars 11% as Sign Foundation completes $12M token buyback

    August 13, 2025

    Fear & Greed Index hits 63 as Bitcoin, ETH, and SOL rebound

    August 7, 2025

    SEC staff statement on liquid staking may pave way for staking in spot Ether ETFs

    August 6, 2025
    Leave A Reply Cancel Reply

    Don't Miss

    Why does Kamala Harris think she needs to protect black men’s crypto?

    Coinbase August 14, 2025

    For some reason, Kamala Harris made protecting the crypto investments of black men one of…

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025

    Shiba Inu price prediction – SHIB will lead the dog meme season soon?

    August 14, 2025
    Stay In Touch
    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • Vimeo
    Our Picks

    Imagen Network (IMAGE) Boosts User Engagement Using XRP for Instant Social Transactions

    August 13, 2025

    AGII Delivers Live Intelligence for Rapidly Evolving Web3 Smart Contracts

    August 13, 2025

    AGII Launches Advanced Diagnostics to Enhance AI Decision Auditing in Decentralized Systems

    August 13, 2025

    Imagen Network (IMAGE) Integrates Grok AI To Elevate Dynamic Community Interactions

    August 12, 2025

    Subscribe to Updates

    Get the latest creative news from SmartMag about art & design.

    Demo
    • Popular
    • Recent
    • Top Reviews

    IREN’s $550m convertible offering, Hypernative’s $40m raise

    June 15, 2025

    Introducing 101 Crypto: Your One-Stop Destination for Everything Bitcoin, Blockchain & Beyond

    June 15, 2025

    Polyhedra’s ZKJ token collapses following ‘abnormal on-chain activity’

    June 17, 2025

    Why does Kamala Harris think she needs to protect black men’s crypto?

    August 14, 2025

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025
    Latest Galleries
    [latest_gallery cat="all" number="5" type="slider"]
    Latest Reviews
    Demo
    Top Posts

    Imagen Network (IMAGE) Boosts User Engagement Using XRP for Instant Social Transactions

    August 13, 20250 Views

    AGII Delivers Live Intelligence for Rapidly Evolving Web3 Smart Contracts

    August 13, 20250 Views

    AGII Launches Advanced Diagnostics to Enhance AI Decision Auditing in Decentralized Systems

    August 13, 20250 Views

    Imagen Network (IMAGE) Integrates Grok AI To Elevate Dynamic Community Interactions

    August 12, 20250 Views
    Don't Miss

    Why does Kamala Harris think she needs to protect black men’s crypto?

    Coinbase August 14, 2025

    For some reason, Kamala Harris made protecting the crypto investments of black men one of…

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025

    Shiba Inu price prediction – SHIB will lead the dog meme season soon?

    August 14, 2025
    Stay In Touch
    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • Vimeo

    Subscribe to Updates

    Get the latest creative news from SmartMag about art & design.

    Demo
    Top Posts

    ProfitFarmers Review – Is it Legit? July 2025

    July 7, 20251 Views

    Why does Kamala Harris think she needs to protect black men’s crypto?

    August 14, 20250 Views

    What is Rekt? Guide to history, uses, and future trends

    August 14, 20250 Views

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 20250 Views
    Don't Miss

    Why does Kamala Harris think she needs to protect black men’s crypto?

    Coinbase August 14, 2025

    For some reason, Kamala Harris made protecting the crypto investments of black men one of…

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025

    Shiba Inu price prediction – SHIB will lead the dog meme season soon?

    August 14, 2025
    Stay In Touch
    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • Vimeo

    Subscribe to Updates

    Get the latest creative news from SmartMag about art & design.

    X (Twitter) Instagram YouTube LinkedIn
    Our Picks

    Why does Kamala Harris think she needs to protect black men’s crypto?

    August 14, 2025

    What is Rekt? Guide to history, uses, and future trends

    August 14, 2025

    Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT

    August 14, 2025
    Recent Posts
    • Why does Kamala Harris think she needs to protect black men’s crypto?
    • What is Rekt? Guide to history, uses, and future trends
    • Marc Andreessen gave an AI agent $50,000 of bitcoin — it endorsed GOAT
    • Shiba Inu price prediction – SHIB will lead the dog meme season soon?
    • Do Kwon transferred crypto from prison after police failed to seize keys, report
    © 2025 - 2026

    Type above and press Enter to search. Press Esc to cancel.