Am letzten Freitag erkannte unser Überwachungssystem einen Angriff auf den Smart Contract von Coin98 (0x8aaf408e06feed6a6a6182ea3c464035748b9b31 – der betroffene Vertrag) auf der BSC. Wir kontaktierten sofort den Eigentümer des Projekts über Twitter, erhielten jedoch keine Antwort. Da die Schwachstelle zu diesem Zeitpunkt noch bestand, machten wir sie nicht öffentlich. Nach einigen Stunden stellten wir fest, dass der Projektbesitzer einen neuen Vertrag erstellt hatte, der die Schwachstelle behob. Daher ist es für uns sicher, die Schwachstelle und die Behebung hier zusammenzufassen.
Transaktion des Angriffs und die Grundursache
Die Transaktion, die von unserem internen Überwachungssystem ausgelöst wurde, erregte unsere Aufmerksamkeit. Nach sorgfältiger Untersuchung bestätigten wir, dass sie auf die Zugriffskontrolle des route-Parameters (also des Routers) in der Funktion swapExactTokensForTokens zurückzuführen ist, wie folgt:
Dieser Vertrag vertraute blind dem route und rief dann die Funktion swapExactTokensForTokens des Routers auf. Zuvor genehmigte er alle Token, die dem betroffenen Vertrag gehörten, für den route. Der route konnte jedoch vom Angreifer manipuliert werden. In diesem Fall konnte der Angreifer dann alle Token des Betroffenen an sich übertragen und sie dann gegen WBNB tauschen, um Profit zu machen.
Im Folgenden ist eine der Angriffstransaktionen aufgeführt.
Die stille Behebung der Schwachstelle
Wir kontaktierten den Projektbesitzer am letzten Freitag per Direktnachricht auf Twitter, erhielten jedoch keine Antwort. Wir haben den Vertrag heute nochmals überprüft und festgestellt, dass ein neuer Smart Contract (0x83f25d16bdf91f51120032f264dad0e1ab1c8227) bereitgestellt wurde. Dieser neue Vertrag verfügt über eine Whitelist für den route:
Fazit
Wir haben viele Fälle gesehen, in denen übergebene Parameter von Smart Contracts blind vertraut werden. Dies schafft ein ernstes Sicherheitsloch.
VERTRAUEN SIE KEINEN PARAMETERN, DIE AUSSERHALB IHRER KONTROLLE LIEGEN!
Über BlockSec
BlockSec ist ein wegweisendes Blockchain-Sicherheitsunternehmen, das 2021 von einer Gruppe weltweit anerkannter Sicherheitsexperten gegründet wurde. Das Unternehmen hat sich dem Ziel verschrieben, die Sicherheit und Benutzerfreundlichkeit für die aufstrebende Web3-Welt zu verbessern, um deren Massenadoption zu fördern. Zu diesem Zweck bietet BlockSec Dienstleistungen im Bereich Smart-Contract- und EVM-Chain-Sicherheitsaudits, die Phalcon-Plattform für die sichere Entwicklung und proaktive Bedrohungsabwehr, die MetaSleuth-Plattform für die Verfolgung und Untersuchung von Geldern sowie die MetaSuites-Erweiterung für Web3-Entwickler, um effizient in der Krypto-Welt zu navigieren.
Bis heute hat das Unternehmen über 300 angesehene Kunden wie MetaMask, Uniswap Foundation, Compound, Forta und PancakeSwap bedient und in zwei Finanzierungsrunden von namhaften Investoren, darunter Matrix Partners, Vitalbridge Capital und Fenbushi Capital, zweistellige Millionenbeträge US-Dollar erhalten.
Offizielle Website: https://blocksec.com/ Offizielles Twitter-Konto: https://twitter.com/BlockSecTeam



