TL;DR
Ein Sicherheitsaudit für intelligente Verträge bietet eine detaillierte Analyse der intelligenten Verträge eines Projekts. Diese sind wichtig, um die über sie investierten Mittel zu schützen. Da alle Transaktionen auf der Blockchain endgültig sind, können Gelder im Falle eines Diebstahls nicht zurückgefordert werden. In der Regel prüfen Prüfer den Code intelligenter Verträge, erstellen einen Bericht und stellen ihn dem Projekt zur Verfügung, damit sie damit arbeiten können. Anschließend wird ein Abschlussbericht veröffentlicht, in dem alle ausstehenden Fehler und die bereits geleistete Arbeit zur Behebung von Leistungs- oder Sicherheitsproblemen aufgeführt sind.
Einführung
Sicherheitsüberprüfungen von Smart Contracts sind im Ökosystem der dezentralen Finanzen (DeFi) sehr verbreitet. Wenn Sie in ein Blockchain-Projekt investiert haben, könnte Ihre Entscheidung teilweise auf den Ergebnissen einer Überprüfung des Smart-Contract-Codes beruhen.
Obwohl die meisten Menschen die Bedeutung von Audits für die Cybersicherheit verstehen, vertiefen sich nicht viele in die Codezeilen. Werfen wir einen Blick auf die Methoden, Tools und Ergebnisse, die typischerweise bei Sicherheitsaudits für Smart Contracts zu sehen sind, damit Sie fundiertere Entscheidungen treffen können.
Was ist ein Smart-Contract-Audit?
Ein Smart-Contract-Sicherheitsaudit untersucht und kommentiert den Smart-Contract-Code eines Projekts. Normalerweise werden diese Verträge in der Programmiersprache Solidity geschrieben und über GitHub bereitgestellt. Sicherheitsaudits sind besonders wertvoll für DeFi-Projekte, bei denen Blockchain-Transaktionen im Wert von mehreren Millionen Dollar oder mit einer großen Anzahl von Akteuren abgewickelt werden sollen. Die Audits folgen normalerweise einem vierstufigen Prozess:
1. Dem Prüfteam werden Smart Contracts zur Erstanalyse zur Verfügung gestellt.
2. Das Prüfungsteam legt dem Projekt seine Erkenntnisse vor, damit dieses entsprechend handeln kann.
3. Das Projektteam nimmt auf Grundlage der gefundenen Probleme Änderungen vor.
4. Das Prüfteam veröffentlicht seinen Abschlussbericht und berücksichtigt dabei etwaige neue Änderungen oder noch bestehende Fehler.
Für viele Krypto-Nutzer sind Smart-Contract-Audits unverzichtbar, wenn sie in neue DeFi-Projekte investieren. Sie sind zu einem Standard für Projekte geworden, die ernst genommen werden wollen. Bestimmte Audit-Anbieter werden auch als Branchenführer angesehen, was ihre Audits in den Augen der Anleger wertvoller macht.
Warum brauchen wir Smart-Contract-Audits?
Da enorme Werte über Smart Contracts abgewickelt oder in ihnen gesperrt werden, werden sie zu attraktiven Zielen für bösartige Angriffe von Hackern. Kleine Programmierfehler können dazu führen, dass riesige Geldsummen gestohlen werden. Beispielsweise wurden beim DAO-Hack auf der Ethereum-Blockchain ETH im Wert von rund 60 Millionen Dollar gestohlen und es kam sogar zu einem Hard Fork des Ethereum-Netzwerks.
Da Blockchain-Transaktionen unumkehrbar sind, ist es unerlässlich, sicherzustellen, dass der Code eines Projekts sicher ist. Die hohe Sicherheit der Blockchain-Technologie macht es schwierig, Gelder abzurufen und Probleme im Nachhinein zu lösen. Daher ist es besser, Schwachstellen um jeden Preis zu vermeiden.
Wie prüft man einen Smart Contract?
Der Prozess eines Smart-Contract-Audits ist bei Audit-Anbietern ziemlich standardisiert. Während die Vorgehensweise jedes Auditors leicht unterschiedlich sein kann, sieht der typische Prozess wie folgt aus:
1. Bestimmen Sie den Umfang der Prüfung. Die Smart Contract- und Projektspezifikationen werden durch das Projekt (ihren beabsichtigten Zweck) und die Gesamtarchitektur definiert. Eine Spezifikation hilft dem Prüfungsteam, die Ziele des Projekts beim Schreiben und Verwenden des Codes zu verstehen.
2. Erstellen Sie ein erstes Angebot basierend auf dem erforderlichen Arbeitsaufwand.
3. Führen Sie Tests durch. Ihre genaue Art hängt vom Prüfteam, seinen Analysetools und seinen Methoden ab. Normalerweise werden sowohl manuelle als auch automatisierte Tests durchgeführt.
4. Erstellen Sie einen ersten Entwurf des Berichts mit den gefundenen Fehlern und stellen Sie ihn dem Projektteam zur Verfügung, um Feedback und nachfolgende Korrekturen zu erhalten.
5. Veröffentlichen Sie den Abschlussbericht und berücksichtigen Sie darin alle Maßnahmen, die das Team zur Behebung der angesprochenen Probleme ergriffen hat.
Prüfmethoden für Smart Contracts
Gaseffizienz
Bei Smart-Contract-Audits steht nicht nur die Blockchain-Sicherheit im Mittelpunkt. Sie befassen sich auch mit Effizienz und Optimierung. Manche Verträge führen eine komplizierte Reihe von Transaktionen durch, um ihre beabsichtigte Funktion zu erfüllen. Da die Gasgebühren in Netzwerken wie Ethereum relativ hoch sind, können effiziente Verträge eine Menge Transaktionskosten einsparen.
Die Optimierung ihrer Leistung ist auch ein Indikator für die Fähigkeiten des Entwicklers. Ineffiziente Schritte bieten mehr Fehlerquellen und sollten vermieden werden. Bei hohen Gaskosten kann die Ausführung von Smart Contracts fehlschlagen, insbesondere wenn ein niedriges Gaslimit verwendet wird.
Vertragsschwachstellen
Der Großteil der Arbeit bei Audits besteht darin, Verträge auf Sicherheitslücken zu prüfen. Während einige Probleme leicht zu erkennen sind, beinhalten viele Exploits fortgeschrittene Techniken und Strategien, um Gelder abzuschöpfen. Beispielsweise kann Marktmanipulation mit schwachen Smart Contracts verwendet werden, um Flash-Loan-Angriffe durchzuführen. Um diese Probleme zu finden, starten die Prüfer den Break-Test-Prozess und simulieren böswillige Angriffe auf den Smart Contract. Zu den häufigsten Schwachstellen gehören:
1. Reentrancy-Probleme: Wenn ein Smart Contract einen externen Aufruf an einen anderen externen Contract durchführt, bevor irgendwelche Effekte aufgelöst wurden. Der externe Contract kann dann rekursiv den ursprünglichen Smart Contract aufrufen und mit ihm auf eine Weise interagieren, die eigentlich nicht möglich sein sollte, da der Saldo des ursprünglichen Contracts noch nicht aktualisiert wurde.
2. Integer-Überläufe und -Unterläufe: Wenn ein Smart Contract eine Rechenoperation durchführt, die Ausgabe jedoch die Speicherkapazität (normalerweise 18 Dezimalstellen) überschreitet. Dies kann dazu führen, dass falsche Beträge berechnet werden.
3. Frontrunning-Chancen: Schlecht strukturierter Code kann Vorwarnungen für Marktkäufe oder -verkäufe geben. Dies wiederum kann es anderen ermöglichen, die Informationen zu nutzen und zu ihrem eigenen Vorteil damit zu handeln.
Sicherheitsmängel der Plattform
Bei den meisten Audits wird das Netzwerk untersucht, in dem die Verträge gehostet werden, und sogar die API, die zur Interaktion mit der DApp verwendet wird. Ein Projekt kann anfällig für einen DDoS-Angriff sein oder die Benutzeroberfläche seiner Website kann kompromittiert sein, was bedeutet, dass Benutzer ihre Wallets tatsächlich mit bösartigen Blockchain-Anwendungen verbinden.
Was ist ein Prüfbericht?
Der Prüfbericht wird am Ende des Prüfprozesses bereitgestellt. Aus Gründen der Transparenz wird von Projekten erwartet, dass sie ihre Ergebnisse mit der Community teilen. In den meisten Berichten werden Probleme nach Schweregrad kategorisiert, z. B. kritisch, schwerwiegend, geringfügig usw. Der Bericht listet auch den Status des Problems auf, da den Projekten Zeit gegeben wird, sie vor der Veröffentlichung des Abschlussberichts zu lösen.
Neben einer Zusammenfassung enthält ein Standardbericht Empfehlungen, Beispiele für redundanten Code und eine vollständige Aufschlüsselung der vorhandenen Codierungsfehler. Dem Projekt wird Zeit gegeben, auf die Ergebnisse des Berichts zu reagieren, bevor die endgültige Version veröffentlicht wird.
Wo kann ich ein Smart-Contract-Audit erhalten?
Eine Reihe von Smart-Contract-Audit-Diensten sind für ihre Leistungen bekannt geworden. Zwei davon sind besonders beliebt, und um ein Audit von ihnen zu erhalten, ist zunächst ein Angebot und die Übergabe von Informationen erforderlich.
CertiK
CertiK ist einer der Branchenführer im Bereich der Prüfung von Smart Contracts. Hunderte von Projekten haben ihre Smart Contracts von ihnen prüfen lassen. PancakeSwap, BSCs größter Automated Market Maker (AMM), ist ein Beispiel dafür. Nachfolgend finden Sie einen Abschnitt von Certiks Prüfung von PancakeSwap.
Außerdem hat die überwiegende Mehrheit der von Binance Labs unterstützten Projekte ihre Verträge mit CertiK geprüft. CertiK veröffentlicht eine Rangliste geprüfter Projekte, die Ihnen einen Vergleich der einzelnen Projekte sowie eine Sicherheitsbewertung ermöglicht. Beachten Sie, dass CertiK neben Ethereum auch BSC- und Polygon-Projekte abdeckt.
ConsenSys Sorgfalt
ConsenSys wird von Joseph Lubin, einem Mitbegründer von Ethereum, geleitet und ist einer der größten Namen der Kryptowährungsbranche in der Blockchain-Entwicklung. Im Rahmen von ConsenSys Diligence bietet das Unternehmen Ethereum-Smart-Contract-Audits an. Es bietet auch einen automatisierten Dienst an, der Ethereum Virtual Machine (EVM)-Verträge auf häufig auftretende Fehler überprüft.
Wie viel kostet ein Smart-Contract-Audit?
Die genauen Kosten einer Prüfung hängen von der Anzahl der zu prüfenden Smart Contracts ab. Normalerweise kostet eine Prüfung mehrere Tausend Dollar. Ein besonders großes Projekt kann leicht über 10.000 Dollar kosten. Das Prüfunternehmen, das Ihre Prüfung durchführt, und sein Ruf wirken sich ebenfalls auf die Höhe der Kosten aus.
Abschließende Gedanken
Zum Glück für Investoren und Benutzer sind Smart-Contract-Audits zum Goldstandard geworden. Wenn jedoch jedes Projekt eines hat, ist es kein einfacher Wertindikator mehr. Deshalb ist es unglaublich wichtig, das Audit selbst zu lesen. Auch wenn Sie nicht über das technische Wissen verfügen, ist es hilfreich, einen Blick auf die Kommentare und die Schwere potenzieller Probleme zu werfen.
Wenn Sie auf eine Prüfung stoßen, sollte es Ihnen nun zumindest leichter fallen, deren Inhalt zu verstehen. Stellen Sie wie immer sicher, dass Sie bei jeder Anlageentscheidung das Gesamtbild betrachten und alle Informationen berücksichtigen.
Weitere Informationen:
Was ist die formale Verifizierung von Smart Contracts?
Vier Möglichkeiten zum DYOR auf DeFi Yield Farms
Was ist die Realrendite bei DeFi?
Haftungsausschluss und Risikowarnung: Dieser Inhalt wird Ihnen „wie besehen“ nur zu allgemeinen Informations- und Bildungszwecken präsentiert, ohne Zusicherungen oder Gewährleistungen jeglicher Art. Er ist nicht als finanzielle, rechtliche oder sonstige professionelle Beratung zu verstehen und soll auch nicht den Kauf eines bestimmten Produkts oder einer bestimmten Dienstleistung empfehlen. Sie sollten sich von geeigneten professionellen Beratern beraten lassen. Wenn der Artikel von einem Drittanbieter stammt, beachten Sie bitte, dass die geäußerten Ansichten dem Drittanbieter gehören und nicht unbedingt denen von Binance Academy entsprechen. Weitere Einzelheiten finden Sie in unserem vollständigen Haftungsausschluss. Die Preise digitaler Vermögenswerte können volatil sein. Der Wert Ihrer Investition kann fallen oder steigen und Sie erhalten möglicherweise nicht den investierten Betrag zurück. Sie sind allein für Ihre Investitionsentscheidungen verantwortlich und Binance Academy haftet nicht für etwaige Verluste, die Ihnen entstehen können. Dieses Material ist nicht als finanzielle, rechtliche oder sonstige professionelle Beratung zu verstehen. Weitere Informationen finden Sie in unseren Nutzungsbedingungen und Risikowarnungen.

