Skip links

#312 Lightning Focus: Kwetsbaarheden in LND blootgelegd 

Daar zijn we weer! Zoals jullie weten wijden we één keer per maand in een aparte editie aan het lightningnetwerk. Deze secundaire laag bovenop bitcoin verdient meer aandacht. In deze Lightning Focus lees je alles over een nieuwe standaard om bitcoin via het lightningnetwerk te wisselen voor fiatgeld, en andersom! En we duiken in kwetsbaarheden binnen LND die een Bitcoin Core ontwikkelaar twee jaar geleden ontdekte. 

Steun Focus met een vrijblijvende donatie! Zo kunnen we voor jou unieke, Nederlandse, bitcoin-only verhalen blijven schrijven. Thanks voor de support!

En natuurlijk volgen we ook andere nieuwe ontwikkelingen binnen de lightningwereld, waaronder een nieuwe non-custodial lightningadres mogelijkheid van Amboss. We sluiten weer af met een aantal highlights uit de nostr-wereld die de bestaande, door advertenties gefinancierde, socialmedia platforms flink uitdagen! 

We beginnen dit jaar met groot nieuws vanuit Breez. Zij lanceren namelijk FiatLink, een standaard exchange interface voor lightningwallets en bitcoinbrokers. Hiermee willen ze de kloof overbruggen tussen bitcoin en fiatvaluta. 

Het bijzondere aan FiatLink is dat ze gebruik maken van een open API-standaard en een uniforme interface willen aanbieden voor lightningwallets en bitcoinbrokers. Dit vergroot niet alleen de efficiëntie en toegankelijkheid van bitcointransacties, maar maakt iedereen ook minder afhankelijk van specifieke API’s die beheerd worden door derden. 


Daarnaast ondersteunt FiatLink diverse betalingsopties en biedt het ook light KYC procedures, waardoor het aantrekkelijk is voor een breed scala aan gebruikers. 

Breez SDK

Dat Breez niet alleen maar een lightningwallet ontwikkelt wisten we al. In Lightning Focus #10 hadden we het bijvoorbeeld al over alle ontwikkelingen rondom Lightning Service Providers (LSP’s) die een grote rol spelen in het verbeteren van de liquiditeit en betrouwbaarheid van lightningbetalingen. 

Het is allemaal onderdeel van de Breez SDK. Dit is een open-source softwareontwikkelingskit waarmee ontwikkelaars lightning – en bitcoinbetalingen naadloos in hun apps kunnen integreren, zonder dat ze diepgaande technische kennis van het lightningnetwerk nodig hebben. Cruciaal is dat iedereen die de Breez SDK gebruikt, altijd een eigen node krijgt met eigen keys. Je beschikt dus altijd over de volledige zeggenschap van je funds.

Het toevoegen van FiatLink aan de Breez SDK lijkt hierdoor een perfecte volgende stap te zijn voor verdere ontwikkeling aan een open standaard.

Lightningprobleem opgelost

Laten we verder gaan naar de kwetsbaarheden in het lightningnetwerk die ontwikkelaar Niklas Gögge in december publiekelijk onthulde, terwijl hij ze twee jaar geleden constateerde! 

Niklas Gögge werkt op dit moment fulltime aan de Bitcoin Core dankzij de steun van Brink. Deze organisatie zet zich in voor bitcoinontwikkelaars door middel van financiering, educatie en mentoring. 

Eind 2021 heeft Niklas twee kwetsbaarheden ontdekt binnen LND, één van de meest gebruikte lightningnode software. Beiden konden leiden tot denial-of-service (DoS) aanvallen met zelfs het risico om je funds te verliezen. 

Wat waren precies de problemen?

Wanneer je een nieuw lightningkanaal opent vanuit je lightningnode naar een andere node, worden drie gossipberichten uitgezonden: één channel announcement en twee channel-updates.

De aanval kon voorkomen dat de channel-updates eerder ontvangen werden vóór de channel announcement. Door deze verkeerde volgorde kan de lightningnode de updates niet valideren. 

Overbelasting door premature channel updates

Stel je een brievenbus voor die onbeperkt veel post kan ontvangen. Iemand besluit om deze brievenbus te overladen met nutteloze brieven. Net zoals deze brievenbus, had LND geen limiet voor het aantal “premature channel updates” (soort digitale berichten) die het kon ontvangen.

Wanneer een lightningnode de berichten niet kan valideren kan dat leiden tot overbelasting van het geheugen, vergelijkbaar met een overvolle brievenbus. Uiteindelijk kan een node hierdoor crashen en dat kan weer leiden tot het verlies van je funds. 

Dit probleem is inmiddels opgelost in een patch waarbij de buffer een maximum capaciteit heeft gekregen van 100 premature updates.

Censuur door ongeldige channel updates
De tweede kwetsbaarheid had te maken met de behandeling van de validatie van de handtekening van channel updates na rate limiting. 

In het lightningprotocol zijn er geen kosten gemoeid bij het maken en uitzenden van channel updates. De enige vereiste is om deze te ondertekenen. Om gossip spam binnen het lightningnetwerk te voorkomen, beperken alle lightning-implementaties met zogenoemde “rate limits” hoeveel channel updates ze binnen een bepaald tijdsbestek doorgeven. 

LND controleerde de handtekeningen van channel updates pas ná het toepassen van deze rate limits. Een aanvaller kon hierdoor channel updates censureren door ongeldige updates te creëren en deze naar lightningnodes te spammen die allemaal LND gebruiken. Geldige updates van een eventueel slachtoffer worden dan genegeerd. 

Ook deze kwetsbaarheid is inmiddels verholpen door de volgorde te wijzigen waarin handtekeningvalidatie en rate limiting worden toegepast. 

Responsible disclosure 

Niklas Gögge heeft de kwetsbaarheden op een verantwoorde manier gemeld bij Lightning Labs, de makers van LND. Dit proces heet een responsible disclosure, waarbij iemand die een kwetsbaarheid in een systeem of software ontdekt, deze eerst meldt aan de eigenaar van het systeem, voordat de informatie openbaar wordt gemaakt.

Dit gaf (in dit geval) Lightning Labs de kans om de problemen aan te pakken voordat deze informatie openbaar kwam te staan. Dit verminderde het risico dat kwaadwillenden de kwetsbaarheden zouden uitbuiten, wat uiteindelijk heeft bijgedragen aan een veiliger lightningnetwerk.

Binnen vijf maanden zijn beide kwetsbaarheden verholpen, gerekend vanaf het moment van het melden door Niklas Gögge bij Lightning Labs. Het feit dat hij nu alsnog de moeite neemt om een publieke uitleg te geven, laat zien dat volledige transparantie erg belangrijk is om het vertrouwen te behouden van alle gebruikers en ontwikkelaars van het lightning netwerk. 

Overige lightning-actualiteiten

  • In de vorige Lightning Focus #14 kon je lezen over de eventuele nadelen van lightningadressen. En dat terwijl het gebruik ervan een echte must is.

    Amboss heeft een nieuwe non-custodial versie gelanceerd met de naam “Ghost Address”. Ze bouwen hiermee verder op bestaande technologieën zoals LNURL en lightningadressen, en focussen op de gebruikservaring en privacy. In dit geval combineren ze Phantom Payments (ontwikkelt vanuit Spiral) met de gebruiksvriendelijkheid van lightningadressen. 
  • Heb je een lightningnode en wil je het zelf proberen? Installeer eerst de laatste versie van de Thunderhub app op je node en claim daarna je nieuwe ghost adres! Lees hier de gehele uitleg. 
  • Software ontwikkelaar en lightning node goeroe, Carsten Otto deelde op 31 december een gedetailleerde analyse van een kostbare force-close van een lightningkanaal die hem 140.000 sats kostte.

    Door een peer die niet reageerde en een vastgelopen hashed timelock contract (HTLC), moest zijn node de fondsen op de blockchain terugvorderen. Het bleek een duur grapje, want de transactiekosten waren op dat moment heel hoog. Ondanks zijn inspanningen om opnieuw verbinding te maken met offline peers, lukte het niet om de HTLC tijdig te vereffenen.

    Carsten uit kritiek op het lightningnetwerk protocol voor deze situatie, vooral de manier waarop LND omgaat met niet reagerende peers en HTLC’s, wat in zijn geval zorgde voor de hoge kosten. 

    Wil je het hele verhaal teruglezen, check dan de post op stacker.news. En mocht je meer willen weten over zijn manier van het managen van een lightningnode? Check dan dit interview dat ik één jaar geleden met hem had in de Connect the World podcast. 
  • PlebLab en Wolf kondigen Top Builder aan, een wedstrijd gericht op het vinden van nieuwe innovators binnen het bitcoin ecosysteem. Deelnemers strijden in een intensieve acht weken durende competitie, verdeeld over drie uitdagende rondes. Het evenement combineert bouwsessies, workshops, aankondigingen en sprekerspanels.

    Geïnteresseerden konden zich inschrijven vóór zaterdag 13 januari, met een kans om tot $15.000 in bitcoin te winnen. Het belangrijkste voor alle ontwikkelaars is, dat je door deel te nemen meer bekendheid krijgt, mentorschap door een ervaren ontwikkelaar en allerlei samenwerkingsmogelijkheden binnen het bitcoin ecosysteem. 
  • LNbank kondigt aan dat het stopt met de ontwikkeling van zijn plugin voor BTCPay Server na het ontdekken van een nieuwe kritieke kwetsbaarheid. Gebruikers worden dringend verzocht om te upgraden naar versie 1.9.2, die deze specifieke kwetsbaarheid aanpakt en de verzendfunctionaliteit volledig uitschakelt.

    Deze versie, de laatste van LNbank, markeert het einde van de plugin. Gebruikers worden geadviseerd het gebruik ervan geleidelijk af te bouwen. Deze beslissing volgt op een eerdere kwetsbaarheid en onderstreept de zorgen over de veiligheid van het gebruik van de plugin.

    Bitcoiner Hugo Ramos verloor vorig jaar 4 BTC door een beveiligingsprobleem in de LNbank-plugin. Lees het hele verhaal in de vorige Lightning Focus #14

Steun Focus!

Vind je deze open en gratis Focus-editie waardevol? Steun ons met een volledig vrijblijvende donatie, compleet value4value!

Klik op de QR-code met je lightning wallet (lnurl-compatible) of check onze donatiepagina voor standaardopties.

Steun Focus!

Vind je deze open en gratis Focus-editie waardevol? Steun ons met een volledig vrijblijvende donatie, compleet value4value!

Scan de QR-code met je lightning wallet (lnurl-compatible) of check onze donatiepagina met enkele standaardknoppen.

Ook nog even kort een greep uit nieuwtjes rondom nostr!

  • De OrangeClock is een open-source DIY klok met sinds kort een te gekke update. Je kan namelijk nu ook een Nostr Zap Counter toevoegen. Ideaal wanneer je actief bent op nostr en sats stuurt en ontvangt.

    Wil je zelf een OrangeClock bouwen of zoek je meer informatie? Kijk dan op deze website
  • Flare, een nieuwe video-deelplatform gebaseerd op het nostr-protocol, is in december 2023 gelanceerd door ontwikkelaar Zach Meyer. Het platform, dat vergelijkbaar is met YouTube, stelt gebruikers in staat om video’s te uploaden, bekijken, becommentariëren en te “liken”.

    Een uniek kenmerk van Flare is dat het geen beperkingen oplegt zoals het verwijderen van content of een shadowban van gebruikers om redenen van meningsverschillen. Flare benadrukt de vrijheid om content vanuit elke locatie te creëren en te bekijken met elke nostr client, waardoor ze een nieuwe dimensie van vrijheid in contentdeling introduceren. De nostr client Amethyst ondersteunt Flare vanaf versie v0.83.5. 
     
    Voor voorbeelden check je de website van Flare. 
  • De nieuwste update van de nostr client Coracle introduceert privégroepen. Deze privégroepen bieden gebruikers de mogelijkheid om versleutelde berichten te verzenden binnen een groep. Het maakt gebruik van wisselende shared keys en biedt toegang aan dynamische leden.

    Hiermee is Coracle in feite een directe concurrent van sociale mediaplatforms zoals Facebook. Het uiteindelijke doel is om gebruikers weg te lokken van de huidige, door advertenties gefinancierde, socialmedia platforms. 
     
    Ondanks deze nieuwe functie benadrukt Coracle dat de privacy van deze groepen relatief is en vergelijkbaar met die van Facebook groepen of Mastodon servers. 
     
    Wil je Coracle zelf een keer proberen? Dat kan!

Tot de volgende Lightning Focus in het nieuwe jaar vol nieuwtjes uit de lightning wereld om je weer volledig up-to-date te houden! 

Bitcoin Focus

Bitcoin Focus is het eerste Nederlandstalige bitcoin printmagazine ooit! Lees supervette bitcoinverhalen is deze genesiseditie met ruim 70 pagina’s. Met o.a. de Noderunners, Aaron van Wirdum, Boris van de Ven, Bert Slagter en Sjors Provoost.

Bestel het magazine nu voor slechts 21 euro! Met de code BITCOINFOCUS krijg je 10% korting!

BITCOIN FOCUS

Word abonnee van dé bitcoin nieuwsbrief van Nederland.