Dexible-aggregator gehackt voor $ 2 miljoen via 'selfSwap'-functie

De multichain exchange-aggregator Dexible is getroffen door een exploit en als gevolg daarvan is $ 2 miljoen aan cryptocurrency verloren gegaan, volgens een post-mortem rapport van 17 februari dat door het team is vrijgegeven op de officiële Discord-server van het project.

Vanaf 6 uur UTC op 35 februari toont de Dexible-frontend een pop-upwaarschuwing over de hack wanneer gebruikers ernaartoe navigeren.

Om 6:17 uur UTC meldde het team dat het "een mogelijke hack op Dexible v2-contracten" had ontdekt en het probleem aan het onderzoeken was. Ongeveer negen uur later bracht het een tweede verklaring uit dat het nu wist dat “$ 2,047,635.17 werd uitgebuit vanaf 17 handelsadressen. 4 op mainnet, 13 op arbitrage.”

Een autopsierapport werd om 4 uur UTC uitgegeven als pdf-bestand en vrijgegeven op Discord, en het team zei dat het "actief werkte aan een herstelplan".

In het rapport stelt het team dat het had gemerkt dat er iets mis was toen een van de oprichters $ 50,000 aan crypto uit zijn portemonnee liet halen om redenen die op dat moment onbekend waren. Na onderzoek ontdekte het team dat een aanvaller de selfSwap-functie van de app had gebruikt om meer dan $ 2 miljoen aan crypto te verplaatsen van gebruikers die de app eerder hadden geautoriseerd om hun tokens te verplaatsen.

Met de selfSwap-functie konden gebruikers het adres van een router en bijbehorende oproepgegevens opgeven om het ene token voor het andere te wisselen. Er was echter geen lijst met vooraf goedgekeurde routers in de code geschreven. De aanvaller gebruikte deze functie dus om een ​​transactie van Dexible naar elk tokencontract te routeren, waarbij de tokens van gebruikers uit hun portemonnee naar het eigen slimme contract van de aanvaller werden verplaatst. Omdat deze kwaadaardige transacties afkomstig waren van Dexible, die gebruikers al hadden geautoriseerd om hun tokens uit te geven, blokkeerden de tokencontracten de transacties niet.

Zie ook: NFT-influencer wordt slachtoffer van cyberaanval en verliest $300K+ CryptoPunks

Nadat de aanvaller de tokens in hun eigen slimme contract had ontvangen, trok hij de munten via Tornado Cash terug naar onbekende BNB (BNB) portemonnees.

Dexible heeft zijn contracten gepauzeerd en er bij gebruikers op aangedrongen om tokenautorisaties voor hen in te trekken.

De gangbare praktijk om tokengoedkeuringen voor grote bedragen te autoriseren, heeft soms geleid tot verliezen voor crypto-gebruikers als gevolg van contracten met fouten of ronduit kwaadaardige contracten, waardoor sommige experts gebruikers waarschuwden om goedkeuringen regelmatig intrekken. De front-ends voor de meeste Web3-apps stellen gebruikers niet rechtstreeks in staat om het aantal goedgekeurde tokens te bewerken, dus gebruikers verliezen vaak het volledige saldo van hun tokens als een app een beveiligingsfout blijkt te hebben. MetaMask en andere portefeuilles hebben geprobeerd dit probleem op te lossen door gebruikers tokengoedkeuringen te laten bewerken bij de bevestigingsstap van de portefeuille, maar veel crypto-gebruikers zijn zich nog steeds niet bewust van het risico om deze functie niet te gebruiken.