In het kort:
- Core Lightning-versies 25.02 tot en met 26.04 kunnen crashen door een verkeerd opgebouwd netwerkbericht.
- Een opgeslagen schadelijk bericht kan de server ook na een update bij iedere herstart opnieuw uitschakelen.
- Getroffen beheerders moeten het bericht handmatig verwijderen en de nieuwste software installeren.
Een bericht blijft de server uitschakelen
Core Lightning is software waarmee computers betalingen verwerken op Lightning, een netwerk bovenop Bitcoin. Via dat netwerk kunnen gebruikers snel kleine bedragen versturen zonder iedere betaling afzonderlijk op de bitcoinblockchain te zetten.
Onderzoeker Nishant Bansal ontdekte dat versies 25.02 tot en met 26.04 een verkeerd opgebouwd netwerkbericht accepteren. In dat bericht lijkt een betaalkanaal twee verschillende kanten te hebben, terwijl beide kanten naar dezelfde computer verwijzen. De software slaat het bericht eerst op en loopt daarna vast wanneer zij het netwerk ermee probeert bij te werken.
Het vervelende zit in die volgorde. Na een herstart leest de server hetzelfde opgeslagen bericht opnieuw, waarna de software opnieuw crasht. Volgens de technische bekendmaking kan een aanvaller het bericht bovendien door het netwerk laten verspreiden zonder rechtstreeks met iedere kwetsbare server verbonden te zijn.
Update wist het oude bericht niet
De fout is sinds Core Lightning 26.04.1 verholpen. Nieuwe schadelijke berichten worden vanaf die versie geweigerd voordat ze op de schijf belanden. Wie al eerder is geraakt, heeft daar niet automatisch genoeg aan: de update verwijdert het oude bericht niet uit de opslag.
Daarom moeten getroffen beheerders de betreffende regel handmatig uit het zogenoemde gossip_store-bestand verwijderen. De onderzoekers adviseren daarnaast de nieuwste Core Lightning-versie te installeren. De gewone gebruiker hoeft zelf geen walletinstelling te veranderen.
Een langdurig uitgeschakelde Lightning-server is meer dan alleen tijdelijk onbereikbaar. Zo’n computer bewaakt ook afspraken in openstaande betaalkanalen. Bij bepaalde betalingen of betwiste kanaalstanden geldt een termijn om op de bitcoinblockchain te reageren. Wie die termijn mist, kan geld verliezen.
Er is geen bewijs genoemd dat de fout op grote schaal is misbruikt. De bekendmaking maakt wel duidelijk waarom een geslaagde software-update niet altijd bewijst dat een betalingsserver weer veilig draait: eerder opgeslagen informatie kan het probleem na de update opnieuw activeren.

