Trendande ämnen
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Välkommen tillbaka till Sherlocks Vulnerability Spotlight, där vi lyfter fram en effektfull sårbarhet som upptäcktes under en Sherlock-granskning.
Den här veckan undersöker vi en överbelastningsattack som hittades i @GMX_IO-tävlingen av @0xdeadbeef____ och @IllIllI000.
Tacka @int0x1catedCode för uppdelningen.

Sammanfattning av sårbarheten:
Sårbarheten gör det möjligt för en angripare att manipulera orderexekveringsflödet genom att tillhandahålla falska återställningsorsakslängder som inte matchar faktiska data. Detta gör att protokollets felhantering läser felaktiga minnesregioner, vilket kan störa körningsprocessen eller orsaka oväntat beteende vid bearbetning av misslyckade order.
Attacksteg:
1. Installationsfas
Distribuera ett skadligt kontrakt som implementerar anpassat återställningsbeteende
Det skadliga kontraktet ska kunna anropas av målprotokollet (t.ex. som återanropshanterare).
2. Skapa skadliga återställningsdata
Strukturera återställ data med en förfalskad längdparameter.
3. Utför order genom protokoll
Skapa en order som utlöser interaktion med det skadliga kontraktet
När protokollet bearbetar ordern och anropar det skadliga kontraktet återgår det med de skapade data.
Protokollets felhantering försöker avkoda återställningsorsaken med hjälp av den falska längden.
4. Lässpill för utlösarminne
Protokollet läser minne baserat på parametern för falsk längd
Detta gör att den läser utanför de faktiska återställningsdatagränserna.
Vad är effekten?
Denial of Service: Order kan misslyckas med att utföras korrekt, vilket blockerar legitima protokolloperationer som likvidation av dåliga positioner
Avbrott i orderutförandet: Batchorderbearbetning kan stoppas, vilket påverkar flera användare
Gasgriefing: Bearbetning av felaktiga återställningsdata kan förbruka för mycket gas
Grundorsaken:
1. Omarkerade längdparametrar: Protokollet litar på längdvärdet som anges i återställningsdata utan validering
2. Gränskontroller saknas: Ingen verifiering av att den påstådda längden matchar den faktiska datastorleken
Åtgärden:
1. Validera alltid Återställ datalängd
2. Implementera gränser för maximal längd
Vi är stolta över att ha hjälpt till att säkra @GMX_IO genom denna upptäckt.
När det absolut måste vara säkert är Sherlock det rätta valet.
2,32K
Topp
Rankning
Favoriter