Das Bitcoin-Core-Team hat am 28. Oktober drei Schwachstellen offengelegt, die durch automatisierte Code-Scans mit einem Large Language Model identifiziert worden waren. Die Fehler konnten den Speicherverbrauch von Nodes erhöhen oder sie zum Absturz bringen, woraufhin die Entwickler Korrekturen für alle unterstützten Hauptversionen veröffentlichten und ihre Offenlegungsregeln änderten.
Ein automatisierter Analyzer identifizierte alle drei Schwachstellen im Rahmen von Project Loupe, das Elias Rohrer bei Spiral entwickelt. Entwickler Gregory Sanders prüfte die Ergebnisse, bevor sie dem Sicherheitsteam von Bitcoin Core vorgelegt wurden.
Drei Schwachstellen betreffen Bitcoin-Core-Nodes
Die erste Schwachstelle, die am 23. Oktober gemeldet wurde, betraf die Verarbeitung dringender TCP-Daten auf Nicht-Linux-Systemen. Ein verbundener Angreifer konnte speziell präparierte Daten senden, die Größenlimits der Nachrichtenwarteschlange umgingen und ein unbegrenztes Speicherwachstum verursachten, wodurch Bitcoin-Core-Nodes unter Windows, macOS und BSD potenziell abstürzen konnten.
Die Entwickler stuften die Schwachstelle als mittelschwer ein. Linux-Nodes waren nicht betroffen, weil sie einen anderen Mechanismus zur Überwachung von Netzwerkverbindungen verwenden.
Der zweite Fehler führte ebenfalls zu einer unkontrollierten Ansammlung von Daten im Speicher. Ein verbundener Node konnte behaupten, eine veraltete Protokollversion zu verwenden, und die Nachrichtenverarbeitung verzögern. Laut der Mitteilung von Bitcoin Core konnte der Speicherverbrauch pro eingehender Verbindung um bis zu 2 Megabyte pro Stunde und pro ausgehender Verbindung um 5 Megabyte pro Stunde steigen.
Der automatisierte Scanner entdeckte die zweite Schwachstelle am 15. September. Ein anderer Entwickler fand sie am 21. September unabhängig davon.
Die dritte Schwachstelle, die als gering schwerwiegend eingestuft wurde, betraf Dateien, in denen Daten gespeichert werden, die für Reorganisationen der Blockchain benötigt werden. Miner konnten Blöcke erzeugen, die einen Überlauf dieser Undo-Dateien verursachten. Wenn später eine entsprechende Reorganisation eintrat, konnten einige Nodes abstürzen.
Auf 64-Bit-Systemen hätte die Ausnutzung des Fehlers erhebliche Ressourcen erfordert. Die Entwickler schätzten, dass die Vorbereitung eines Angriffs etwa einen Monat Block-Mining durch das gesamte Netzwerk dauern könnte. Unter Windows und auf 32-Bit-Systemen konnte ein Absturz ohne eine solche Reorganisation auftreten, und laut der offiziellen Mitteilung hätte ein Neustart des Nodes das Problem nicht behoben.
Die Korrektur beseitigt das Problem nicht vollständig für 32-Bit-Systeme oder Nodes, die Blöcke auf älteren Laufwerken mit dem FAT32-Dateisystem speichern. In anderen Fällen behoben die Entwickler die Schwachstelle teilweise, indem sie für die Speicherung von Dateipositionen auf 64-Bit-Ganzzahlen umstellten.
Entwickler überarbeiten Offenlegungsrichtlinie
Die Entwickler veröffentlichten Korrekturen in den Bitcoin-Core-Versionen 29.5, 30.4, 31.2 und 32.1. Die Versionen 31.2 und 32.1 wurden am 27. Oktober verfügbar, gefolgt von den Versionen 29.5 und 30.4 am 28. Oktober. Details zu den Schwachstellen wurden am 28. Oktober veröffentlicht.
Bitcoin Core hatte zuvor zugelassen, dass mittelschwere Schwachstellen bis zu einem Jahr lang unveröffentlicht blieben, um Node-Betreibern Zeit für Aktualisierungen zu geben. Am 22. Oktober änderte das Projekt seine Richtlinie für Schwachstellen, die mit einem LLM schnell entdeckt werden können.
Nach der neuen Richtlinie müssen Entwickler so schnell wie möglich Korrekturen für jede unterstützte Hauptversion vorbereiten, wenn eine Schwachstelle als leicht entdeckbar gilt. Sie werden die zugehörige Sicherheitswarnung veröffentlichen, sobald diese Korrekturen verfügbar sind, statt auf das Ende der üblichen Sperrfrist zu warten.
Andere Schwachstellen unterliegen weiterhin dem üblichen Offenlegungszeitplan. Bitcoin Core veröffentlicht Details zu Fehlern mit geringer Schwere zwei Wochen nach der Veröffentlichung der Hauptversion, die die Korrektur enthält. Mittel- und hochschwere Schwachstellen werden zwei Wochen nach dem Ende des Lebenszyklus der zuletzt betroffenen Version offengelegt.
In den Bitcoin-Core-Release-Notes hieß es außerdem, die Entwickler planten, in zwei Wochen drei weitere mittelschwere und hochschwere Schwachstellen offenzulegen, die in Version 30.0 behoben wurden.
Quelle: HODL Press
