NachrichtenKryptoCore Lightning veröffentlicht v26.06.10 mit Sicherheitsfixes und fordert Bitcoin-Node-Betreiber zum Rotieren der Runes auf

Core Lightning veröffentlicht v26.06.10 mit Sicherheitsfixes und fordert Bitcoin-Node-Betreiber zum Rotieren der Runes auf

Autor: Coincentral·

Wichtige Erkenntnisse

  • •Core Lightning Version 26.06.10 enthält Sicherheitsfixes, und die Maintainer bitten alle Nutzer um eine baldmögliche Aktualisierung — begleitet von einer separaten Überprüfung der Credentials für Remote-Befehle.
  • •Das Update schließt eine Umgehung der Rune-Limits für Parameternamen über Duplikate oder Zeichenvariationen, behebt einen Commando-Absturz durch Wiederverwendung einer Command-ID und lehnt überdimensionierte Runes nun komplett ab.
  • •Betreiber wird empfohlen, jede Commando-Rune an die Node-ID ihrer App zu binden, alle nicht zuordenbaren Runes auf die schwarze Liste zu setzen und neue Runes mit strengeren Einschränkungen auszustellen.
  • •Das Release ergänzt Prüfungen der Transaktionssignaturen beim Öffnen von Dual-Funding-Channels und beim Splicing, lehnt Dust-Limits über 5.000 Satoshis bei Channel-Opens ab und blockiert v2-Zero-Confirmation-Opens, sofern dies für den Peer nicht ausdrücklich erlaubt ist.
  • •Dies ist das dritte aufeinanderfolgende Point-Release ohne Embargo-Frist; die Sicherheitstests werden zurückgehalten, um die Umwandlung der Fixes in funktionsfähige Exploits zu erschweren und den Nutzern mehr Zeit zum Aktualisieren zu geben.
Core Lightning veröffentlicht v26.06.10 mit Sicherheitsfixes und fordert Bitcoin-Node-Betreiber zum Rotieren der Runes auf

Core Lightning, eine der wichtigsten Software-Implementierungen zum Betreiben von Bitcoin-Lightning-Payment-Nodes, hat die Version 26.06.10 mit einer Reihe neuer Sicherheitsfixes veröffentlicht, und die Maintainer bitten alle Nutzer, so bald wie möglich zu aktualisieren. Das Update verbindet den Software-Patch mit einer zweiten Aufgabe für Betreiber: der Überprüfung der Credentials, die Remote-Befehle auf ihren Nodes erlauben — ein Schritt, den die Maintainer als unabhängig von der Installation der neuen Version beschreiben. Es kombiniert die Härtung des Plugins für Remote-Befehle mit Änderungen daran, wie Nodes Channel-Opens und Zahlungsbedingungen bewerten.

Dies ist das dritte aufeinanderfolgende Point-Release, das ohne Embargo-Frist veröffentlicht wurde. Die Versionen 26.06.8 und 26.06.9 folgten demselben Ansatz, wobei die Fixes sofort öffentlich gemacht wurden. Wie bei diesen Releases haben die Maintainer auch diesmal die Tests zu den Sicherheitsfixes zurückgehalten. Laut den Release-Hinweisen erschwert dies die Umwandlung der Fixes in funktionsfähige Exploits und gibt den Nutzern mehr Zeit zum Aktualisieren. Das Offenlegungsmodell erhöht zudem den Druck auf die Betreiber: Sobald ein Release öffentlich ist, sind es auch die Schwachstellen, die es behebt — ein Node, der hinterherhinkt, läuft also mit Software mit dokumentierten Schwachstellen.

Credential-Überprüfung ergänzt die Update-Checkliste

Runes und Commando stehen im Zentrum der Sicherheitsarbeit dieses Updates. Commando ermöglicht einem direkt verbundenen Peer, einen Node zur Ausführung eines Befehls aufzufordern; dafür benötigt der Peer in der Regel eine Rune — ein Authorization-Credential.

Das Update schließt einen Weg, die Rune-Limits für Parameternamen mithilfe von Duplikaten oder zeichenvariationen zu umgehen. Es behebt außerdem einen Commando-Absturz, der durch die Wiederverwendung einer Command-ID nach einem fehlgeschlagenen Befehl verursacht wurde. Überdimensionierte Runes werden nun komplett abgelehnt; zuvor konnte die Software quadratische Zeit für deren Dekodierung aufwenden.

Die Maintainer empfehlen, jede über Commando verwendete Rune an die Node-ID der App zu binden, die sie nutzt. Mit dieser ID-Einschränkung kann die Rune von keinem anderen Ort aus verwendet werden. Betreiber werden zudem angewiesen, alle Runes, die sie nicht zuordnen können, mit dem Befehl blacklistrune auf die schwarze Liste zu setzen und anschließend neue Runes mit strengeren Einschränkungen auszustellen. Zusammengenommen ergibt dies eine Prüfung jedes Credentials, das Remote-Befehle auf einem Node auslösen kann, wobei unerklärbare Runes gesperrt werden, bevor Ersatz ausgestellt wird.

Channel- und Zahlungsfixes

Die neue Version prüft die Transaktionssignaturen eines Peers beim Öffnen von Dual-Funding-Channels und beim Splicing, dem Vorgang, der die Mittel eines Channels anpasst, ohne ihn zu schließen. Dies entspricht der BOLT-2-Spezifikation des Lightning-Protokolls, die die Channel-Einrichtung und den normalen Peer-to-Peer-Betrieb abdeckt, so das Changelog.

Ein weiterer Fix betrifft einen bedingten Zahlungsvertrag, der als HTLC bekannt ist. Ein gerade entfernter HTLC konnte mit einem aktiven verwechselt werden, der denselben Payment-Hash, denselben Betrag und dieselbe Ablaufzeit aufwies, wodurch der Node die aktive Zahlung fehlschlagen ließ, während der Peer sie dennoch einfordern konnte.

Auch die Handhabung von Channel-Opens ist strenger. Nodes lehnen Channel-Opens nun ab, wenn ein Peer ein Dust-Limit vorschlägt — die Schwelle, unter der Outputs als Dust behandelt werden — von mehr als 5.000 Satoshis; das Changelog erklärt, das alte Verhalten habe einem Peer ermöglicht, bei einer erzwungenen Schließung den Saldo des Nodes in Gebühren umzuwandeln. Bei Dual-Funding-Opens wird zudem ein Dust-Limit des Peers überhalb des Channel-Reserve abgelehnt, und ein v2-Zero-Confirmation-Open — ein Channel, der live geht, bevor seine Funding-Transaktion bestätigt ist — wird abgelehnt, sofern der Betreiber den Node nicht so konfiguriert hat, dass er einen solchen von diesem Peer akzeptiert. Dual Funding bleibt experimentell, und die Maintainer raten von Zero-Confirmation-Channels mit nicht vertrauenswürdigen Peers ab.

Weitere Änderungen sorgen für eine sichere Standardantwort, wenn ein Plugin-Hook fehlschlägt, anstatt eines Absturzes oder Hängens. Splice-Fee-Erhöhungen verwenden nun mindestens 25/24 der vorherigen Feerate, was Peers wie Eclair verlangen. Nodes, die Development-Builds ausgeführt haben, können nicht auf die 26.06.x-Serie heruntergestuft werden, da ihr Datenbank-Schema neuer ist. Das Release enthält reproduzierbare Binaries für Ubuntu 22.04, 24.04 und 26.04 sowie Docker-Images.

Offenlegung und Release-Timing

Die in diesem Release behobenen Schwachstellen wurden von fast 20 namentlich genannten Quellen gemeldet, darunter The Bitcoin Red Team, Matt Morehouse und Niklas Gögge. Andere baten darum, nicht namentlich genannt zu werden.

GitHub listet als Release-Datum der Version den 4. November, während das getaggte Changelog den 5. November zeigt. Das Update folgt auf einen separaten Stored-Trigger-Absturz, der am 2. November offengelegt wurde. Zum Zeitpunkt der Berichterstattung notierte Bitcoin bei rund 76.002 $, ein Minus von 5,29 % innerhalb von 24 Stunden.