Sicherheits- und Datenschutzbedenken von privaten Transaktionsdiensten auf Binance Smart Chain

Der Artikel untersucht Datenschutz- und Sicherheitsherausforderungen privater Transaktionstechnologien beim Schutz von Nutzern

Sicherheits- und Datenschutzbedenken von privaten Transaktionsdiensten auf Binance Smart Chain

Hintergrund des privaten Transaktionsdienstes

Der private Transaktionsdienst zielt darauf ab, die Transaktionen von Benutzern zu schützen, ohne sie in der Kette zu veröffentlichen. Dieser Dienst kann zum Aufbau eines gesunden Ökosystems beitragen, indem er Benutzer vor Sandwich-Angriffen schützt. Zum Beispiel kann ein Angreifer den Pending Pool nicht abhören, um andere Transaktionen zu front-runnen. Darüber hinaus kann der private Transaktionsdienst den Gasgebührenkrieg zwischen MEV-Bots abmildern. Das liegt daran, dass MEV-Bots einen solchen Dienst nutzen können, anstatt im Pending-Tool zu konkurrieren, was den Gaspreis erhöhen würde – und normale Transaktionen schwer zu packen macht.

Flashbots ist ein bekannter privater Dienstleister auf Ethereum und verfügt über ausgezeichnete Dokumentationen zur Funktionsweise des Systems. Es bietet auch klare APIs für private Transaktionsdaten. BNB48 hat einen ähnlichen Dienst (Enhanced RPC) auf Binance Smart Chain (BSC) angeboten.

Private Transaktionen wurden von Angreifern missbraucht

Allerdings kann der private Transaktionsdienst von Angreifern missbraucht werden, um die Angriffstransaktion schnell (und unbemerkt) in der Kette zu packen.

Kürzlich haben wir eine „interessante“ Transaktion auf BSC gesehen. Der Angreifer missbrauchte den privaten Transaktionsdienst von BNB48, um seine Angriffstransaktion zu verstecken (der Angriffsgewinn beträgt rund „150.000 USD“). Aus dem folgenden Screenshot können wir ersehen, dass diese Transaktion vom BNB48-Validator mit einer Gasgebühr von „15 Gwei“ gepackt wurde.

Leider haben wir keinen öffentlichen Dienst gefunden, der Transaktionen abfragen kann, die über den privaten Transaktionsdienst von BNB48 gepackt wurden. Wir vermuten jedoch aus den folgenden zwei Gründen stark, dass dies der Fall ist.

  • Laut der BNB48-Dokumentation muss der Transaktionssender, um den Enhanced RPC nutzen zu können, die Gasgebühr auf 15 Gwei setzen. Natürlich besteht immer noch eine geringe Chance, dass der Angreifer nicht den BNB48-privaten Transaktionsdienst genutzt hat, sondern zufällig einen normalen RPC-Endpunkt für die Transaktion verwendet und die Gasgebühr auf „15 Gwei“ gesetzt hat.
  • Außerdem verfügt der Vertrag des Angreifers über einen Code, der einschränkt, dass die Angriffstransaktion nur auf dem BNB48-Validator ausgeführt werden kann (siehe folgende Abbildung).

Aufgrund der Gasgebühr und der Code-Logik vermuten wir stark, dass diese Transaktion den privaten Transaktionsdienst von BNB48 missbraucht hat.

Die IP-Adresse des Angreifers wurde enthüllt

Interessanterweise behauptete das Opfer, es habe erfolgreich die IP-Adressen und den Zeitpunkt der Angriffstransaktion identifiziert. Anschließend sendete das Opfer eine Nachricht in der Kette, um den Angreifer aufzufordern, die Gelder zurückzugeben.

Der Angreifer gab die Gelder in einer Reihe von Transaktionen zurück [ 1 | 2 | 3 | 4 | 5 | 6].

Dies wirft die Frage auf, d. h., wenn die Angriffstransaktion den privaten Transaktionsdienst von BNB48 missbraucht hat (durch das Senden von Transaktionen an den BNB48 RPC-Endpunkt), wie können dann die IP-Adressen des Angreifers identifiziert und geleakt werden? Basierend auf dem Ergebnis, dass die Gelder zurückgegeben wurden, sollten die IP-Adresse und die Geolocation in der Nachricht echt sein.

Sicherheits-/Datenschutzbedenken bei privaten Transaktionsdiensten

Wir sind der Meinung, dass der private Transaktionsdienst eine kritische Einheit im Ökosystem ist, da er die Transaktion vor der Veröffentlichung und vor Sandwich-Angriffen schützt. Dies birgt jedoch auch andere Sicherheits-/Datenschutzbedenken.

  • Wie verhindert werden kann, dass der private Transaktionsdienst von Angreifern missbraucht wird, ist eine offene Frage. Ob ein Filterdienst im privaten Transaktionsdienst erforderlich ist, wird in der Community (immer noch) diskutiert. Wir entwickeln derzeit ein System, das dem Anbieter des privaten Transaktionsdienstes helfen kann, den Angriffsdienst zu überwachen (die Kenntnis des Angriffs ist wertvoll).
  • Wie kann die Privatsphäre der Benutzer geschützt werden, die den privaten Transaktionsdienst nutzen? Der Endpunkt, der die private Transaktion akzeptiert, kann beispielsweise die Informationen des Absenders protokollieren, wie z. B. die IP-Adresse und die Uhrzeit. Ob diese Informationen gut geschützt sind, ist unbekannt.

Über BlockSec

BlockSec ist ein wegweisendes Unternehmen für Blockchain-Sicherheit, das 2021 von einer Gruppe weltweit renommierter Sicherheitsexperten gegründet wurde. Das Unternehmen engagiert sich für die Verbesserung der Sicherheit und Benutzerfreundlichkeit der aufkommenden Web3-Welt, um deren Massenadoption zu fördern. Zu diesem Zweck bietet BlockSec Audit-Dienstleistungen für Smart Contracts und EVM-Ketten an, die Phalcon-Plattform für sichere Entwicklung und proaktive Bedrohungsabwehr, die MetaSleuth-Plattform für die Verfolgung und Untersuchung von Geldern sowie die MetaDock-Erweiterung für Web3-Entwickler, die effizient im Krypto-Bereich surfen.

Bis heute hat das Unternehmen über 300 angesehene Kunden wie MetaMask, Uniswap Foundation, Compound, Forta und PancakeSwap betreut und in zwei Finanzierungsrunden von namhaften Investoren wie Matrix Partners, Vitalbridge Capital und Fenbushi Capital Dutzende Millionen US-Dollar erhalten.

Offizielle Website: https://blocksec.com/

Offizielles Twitter-Konto: https://twitter.com/BlockSecTeam

Sign up for the latest updates