Sicherheitslücken in Besu in Version 26.7.1 behoben

ETH
Ethereum-ClientSicherheitslückeSicherheitCertiKBesu
vor 1 StundeQuelle: crypto.news
Sicherheitslücken in Besu in Version 26.7.1 behoben

Besu legt fünf von CertiK entdeckte Schwachstellen offen, nachdem sie in Version 26.7.1, veröffentlicht am 27. Juli, behoben wurden.

Zusammenfassung

  • Besu behob fünf von CertiK gemeldete Schwachstellen in Version 26.7.1, bevor die vollständigen technischen Advisories später öffentlich veröffentlicht wurden.
  • CertiK fand Risiken der Ressourcenerschöpfung in den Netzwerk-, RPC-, WebSocket- und Konsensschnittstellen während unabhängiger Sicherheitsforschung.
  • Die koordinierte Offenlegung gab den Betreibern von Besu Zeit, ein Upgrade durchzuführen, bevor detaillierte Informationen zu den Schwachstellen öffentlich wurden.

Besu veröffentlichte am 14. August detaillierte Advisories zu fünf von CertiK gefundenen Sicherheitslücken, die in Version 26.7.1, veröffentlicht am 27. Juli, behoben wurden.

Die Probleme betrafen den Java-basierten Ethereum-Client in den Schnittstellen für Peer-to-Peer, RPC, WebSocket und Konsens. Unter betroffenen Konfigurationen konnten sie den Speicher oder die Thread-Kapazität erschöpfen und die Verfügbarkeit von Knoten oder die Konsensverarbeitung stören. CertiK fand die Schwachstellen durch selbstgesteuerte Tests auf einem privaten Multi-Node-Besu-Netzwerk und meldete sie privat an das Projektteam.

Besu 26.7.1 vor technischen Details veröffentlicht

Besu veröffentlichte Version 26.7.1 zunächst am 27. Juli als Sicherheitsupdate und forderte Benutzer zum Upgrade auf. Das Release behob alle fünf CertiK-Funde sowie separate Sicherheitsprobleme. Die GitHub-Release-Seite von Besu identifiziert 26.7.1 als sicherheitsfokussiertes Update und würdigt CertiK und EF Security für die verantwortungsvolle Offenlegung. Die Versionshinweise führten auch Grenzwerte für JSON-RPC-Filter und WebSocket-Abonnements ein.

Technische Details wurden am 14. August öffentlich, als Besu vier Advisories zu den fünf CertiK-Funden veröffentlichte. Jedes Advisory identifizierte Version 26.7.1 als die gepatchte Version. Das Timing bedeutete, dass Betreiber Zugang zum Fix hatten, bevor detaillierte Informationen über die Schwachstellen öffentlich wurden. Diese koordinierte Abfolge gab Benutzern Zeit für ein Upgrade und reduzierte unnötige Exposition gegenüber Details, bevor eine Behebung verfügbar war.

Koordinierte Offenlegung und unabhängige Tests

CertiK meldete alle fünf Funde direkt an das Besu-Team. Die Forscher lieferten auch reproduzierbare Proof-of-Concept-Testumgebungen, die Besu zur Untersuchung des Verhaltens verwenden konnte. Die beiden Teams koordinierten vertraulich, während Besu die Probleme bewertete und behob. Sie machten technische Informationen erst nach der Verfügbarkeit der gepatchten Version öffentlich, gemäß einem verantwortungsvollen Offenlegungsprozess, der im Quellmaterial beschrieben ist.

CertiK identifizierte die Besu-Sicherheitslücken während selbstgesteuerter Forschung unter Verwendung der Chain-Scan-Adversarial-Testing-Methodik. Die Arbeit nutzte ein privates Multi-Node-Besu-Testnetzwerk. Die Forscher führten kontrollierte Fehler in den Peer-to-Peer-, HTTP-RPC-, WebSocket-RPC- und Konsensschnittstellen ein. Sie verwendeten diese Tests, um Verfügbarkeits- und Ressourcenerschöpfungsrisiken unter kontrollierten Bedingungen zu untersuchen, nicht im Rahmen eines Kundenauftrags.

Besu-Sicherheitslücken erhöhten Ressourcenrisiken

Die Forschung hatte keinen kommerziellen Umfang. CertiK bewertete die fünf Funde von gering bis schwerwiegend. Die betroffenen Bereiche umfassten die Verarbeitung von Blockankündigungen, die Pufferung von Konsensvorschlägen für zukünftige Höhen, WebSocket-Abonnementgrenzen und die Erstellung von JSON-RPC-Filtern ohne effektive Obergrenzen. Diese Bereiche betreffen, wie ein Knoten Netzwerknachrichten, Abonnements, Remote-Anfragen und konsensbezogene Daten verarbeitet.

In betroffenen Konfigurationen konnten die Schwachstellen den Speicher oder die verfügbaren Threads des Knotens verbrauchen. Dieser Ressourcendruck konnte die Verfügbarkeit des Knotens oder die Konsensverarbeitung beeinträchtigen. Zwei in Version 26.7.1 sichtbare Behebungen fügten Grenzwerte für aktive JSON-RPC-Filter und WebSocket-Abonnements hinzu und schlossen damit Wege für unbegrenztes Ressourcenwachstum. Besu forderte Betreiber auf, auf die gepatchte Version zu wechseln, als das Update veröffentlicht wurde.

Advisories schaffen öffentlichen Nachweis der Behebung

Die Veröffentlichung der Advisories durch Besu schuf einen öffentlichen Nachweis der fünf Funde und ihrer Behebung. Die Versionshinweise des Projekts würdigten auch CertiK und EF Security für ihre jeweiligen verantwortungsvollen Offenlegungen. Besu ist ein Open-Source-Ethereum-Client, der in Java geschrieben und unter Apache 2.0 lizenziert ist, laut Linux Foundation Decentralized Trust. Das Projekt unterstützt Anwendungsfälle für öffentliche und private Netzwerke.

Besu dient als Ausführungsclient im Ethereum-Mainnet und in Testnets und unterstützt gleichzeitig private Unternehmensnetzwerke. Es bietet eine Befehlszeilenschnittstelle, eine JSON-RPC-API und eine Plugin-API für den Betrieb und die Erweiterung von Knoten. CertiK, 2017 von Professoren der Yale University und der Columbia University gegründet, gibt an, mehr als 119.000 Schwachstellen erkannt und über 600 Milliarden US-Dollar an digitalen Vermögenswerten in über 150 Ländern und Regionen geschützt zu haben.