Ein weiterer Hack, den ich mir kürzlich angesehen habe, ist Vicuna Finance aus dem März dieses Jahres. Sie haben 700.000 $ durch Manipulation des LP-Token-Orakels auf der Sonic-Chain verloren. Der Angriff nutzte einen grundlegenden Preisfehler aus, der mit einer einfachen Assertion hätte verhindert werden können. LP-Token wurden mit einer einfachen Summenformel (preis_token1 * menge_token1 + preis_token0 * menge_token0) anstelle einer fairen Preisgestaltung, die die konstante Produktformel des Pools berücksichtigt, bepreist. Angriffssequenz: - Großer Swap von token0 zu token1, der den LP-Token-Orakelpreis künstlich in die Höhe trieb - Überbewertete LP-Token als Sicherheiten hinterlegen - Maximale Vermögenswerte gegen den überbewerteten Sicherheitenwert ausleihen - Umgekehrter Swap, der den LP-Preis drückt und das Protokoll mit schlechten Schulden zurücklässt Preismanipulation ist ein Muster, das wir immer wieder sehen, und es ist ein Muster, gegen das Assertions gut schützen. In diesem Beispiel experimentieren wir mit einem neuen Cheatcode, der die Inspektion von Aufrufen im Callstack ermöglicht, was ideal ist, um Preismanipulationen innerhalb von Transaktionen zu erkennen. Wir überprüfen, dass ein "Swap"-Aufruf nicht dazu führen kann, dass der Preis während der Ausführung der Transaktion zu irgendeinem Zeitpunkt um mehr als 5 % vom Basiswert abweicht. Es ist eine einfache, aber leistungsstarke Möglichkeit, sich beispielsweise gegen Flash-Loan-Angriffe zu schützen.
2,28K