Een kwaadaardige dApp kon onder specifieke omstandigheden een
Ledger-gebruiker naar de verkeerde handtekening sturen. De gebruiker controleerde één
Ethereum-transactie op het apparaat, terwijl een andere signing-opdracht de interne toestand kon overnemen.
Ledger heeft de fout al gedicht. De oplossing verscheen op 12 augustus in versie 1.22.2 van de Ethereum-app.
Dat raakt precies de beveiligingslaag waarvoor een hardwarewallet wordt gekocht: het scherm moet betrouwbaar vertellen wat je tekent.
Gebruiker kon naar de verkeerde transactie kijken
De fout zat in bepaalde processen voor clear signing.
Daarbij vertaalt een Ledger complexe transactiedata naar leesbare informatie. De gebruiker ziet bijvoorbeeld welk adres tokens ontvangt, welk bedrag beweegt of welke toestemming een smart contract vraagt.
Ledger omschrijft het principe zelf als: wat je ziet, moet zijn wat je tekent. De
officiële documentatie over clear signing legt uit dat deze controle rechtstreeks op het beveiligde scherm plaatsvindt.
Juist daar kon het fout gaan.
Beveiligingsbedrijf TestMachine stelt dat de Ethereum-app tijdens het controleren van een transactie in bepaalde situaties een nieuwe opdracht bleef aannemen.
Een kwaadaardige applicatie kon daardoor proberen een tweede signingproces te starten terwijl de gebruiker nog naar het eerste keek.
Tweede opdracht kon eerste signingproces verstoren
De communicatie loopt via zogenoemde APDU's.
APDU staat voor Application Protocol Data Unit. Het zijn berichten waarmee software opdrachten naar een applicatie op het Ledger-apparaat stuurt.
Volgens TestMachine ontstond daar een race condition.
Twee processen konden elkaar op een verkeerd moment raken. Een tweede opdracht kon de interne signingtoestand veranderen voordat de gebruiker klaar was met de eerste controle.
Het gevaar zit in het verschil tussen scherm en handtekening.
Een gebruiker kon denken een beperkte transactie goed te keuren, terwijl een kwaadaardige applicatie probeerde een andere opdracht klaar te zetten.
Bij tokens kan bijvoorbeeld een ruimere approval veel gevaarlijker zijn dan de transactie die iemand dacht te bevestigen.
Ledger erkent de bug
Ledger-CTO Charles Guillemet heeft het bestaan van de fout bevestigd.
“There was a bug concerning certain clear signing flows.”
Volgens Guillemet vond Ledger Donjon, het interne beveiligingsteam, de fout zelf met AI-ondersteunde analyse.
Ledger zegt de oplossing vervolgens te hebben uitgebracht voordat TestMachine de kwestie publiek maakte.
De openbare
Ethereum-app van Ledger op GitHub ondersteunt dat tijdspad gedeeltelijk. In het changelog staat versie 1.22.2 op 12 augustus 2026 met als korte omschrijving alleen “Security issues”.
Ledger publiceerde daar geen uitgebreide technische waarschuwing bij.
Dat maakt het lastig om vanuit het changelog alleen vast te stellen welke individuele codewijziging precies deze aanval blokkeert.
Flex is publiek getest, andere modellen minder duidelijk
TestMachine zegt de aanval te hebben gevalideerd op een Ledger Flex.
Het bedrijf noemt daarnaast Nano X, Nano S Plus, Stax en Apex omdat delen van de APDU- en schermcode worden gedeeld.
Die twee claims moeten uit elkaar blijven.
Een gedeelde codebasis kan betekenen dat hetzelfde risico elders aanwezig was. Maar TestMachine heeft niet publiek voor ieder genoemd model een volledige aanval met dezelfde uitkomst gedemonstreerd.
Ledger zelf heeft ook geen openbare tabel gepubliceerd waarin per apparaat staat of het aantoonbaar kwetsbaar was.
Daarom is “Ledger Flex getest” harder dan “alle genoemde Ledger-modellen waren bewezen exploiteerbaar”.
Versie 1.22.2 bevat de beveiligingsfix
Voor gebruikers is vooral de versie van de Ethereum-app van belang.
Ledgers
openbare changelog noemt op 12 augustus versie 1.22.2.
Onder het kopje “Fixed” staat slechts:
“Security issues.”
Dat is opvallend weinig informatie voor een fout die het signingproces kon raken.
Wel is duidelijk dat 1.22.2 na versie 1.22.1 kwam, waarin Ledger eerder al problemen met APDU-communicatie had aangepakt.
De veiligste grens voor gebruikers is daarom simpel: draai Ethereum-app 1.22.2 of nieuwer.
Alleen Ledger Wallet op telefoon of computer vernieuwen is niet hetzelfde.
De Ethereum-app draait op het Ledger-apparaat zelf en moet daar worden bijgewerkt.
Dit was geen gewone dApp-hack
De fout betekent niet dat iedere website zomaar een Ledger kon leegtrekken.
Een aanvaller moest controle hebben over de softwarelaag die opdrachten naar het apparaat stuurde. Denk aan een kwaadaardige dApp, besmette front-end of andere software die met de Ethereum-app communiceert.
De gebruiker moest daarnaast nog steeds fysiek tekenen.
Alleen was juist de waarde van die fysieke controle aangetast als de weergegeven informatie en de uiteindelijke signingtoestand uit elkaar konden lopen.
Dat onderscheid telt.
De private key hoefde het apparaat niet te verlaten. De aanval richtte zich op wat die sleutel toestemming kreeg om te ondertekenen.
Dat raakt precies de belofte van een hardwarewallet
Een
wallet beschermt niet alleen doordat een private key offline blijft.
De gebruiker moet ook betrouwbaar kunnen zien waarvoor die sleutel wordt gebruikt.
Ledger zet daarom zwaar in op het beveiligde scherm.
Het bedrijf schrijft zelf dat clear signing complexe smartcontractdata vertaalt naar leesbare informatie. Dat moet voorkomen dat gebruikers blind een onbegrijpelijke reeks gegevens goedkeuren.
De Ethereum Foundation nam dit jaar een grotere rol in die standaard op zich. CryptoBenelux schreef eerder over de
nieuwe Ethereum-aanpak tegen walletmisleiding en blind ondertekenen.
Een fout in precies die controlelaag is daarom gevoeliger dan een gewone weergavebug.
Ledger en TestMachine vechten ook over de bekendmaking
Naast de code ontstond een conflict over wie de fout vond en wanneer die had moeten worden gepubliceerd.
TestMachine zegt dat zijn AI-systeem Azimuth de kwetsbaarheid zelfstandig vond. Het bedrijf zegt geen bounty te willen aannemen.
Guillemet stelt daar tegenover dat Ledger Donjon de fout al eerder had gevonden en de patch al had uitgebracht.
Volgens hem meldde TestMachine zich pas bij het bugbountyprogramma nadat de oplossing beschikbaar was.
Hij beschuldigde het bedrijf vervolgens van het wekken van de indruk dat gebruikers nog onbeschermd waren.
Voor Ledger-gebruikers is die ruzie minder belangrijk dan de technische uitkomst.
De fout bestond. Ledger erkent dat. De patch is uitgebracht.
Geen publiek bewijs van gestolen crypto via deze bug
In de openbare informatie over deze specifieke fout is op dit moment geen concreet slachtoffer gedocumenteerd waarbij aantoonbaar geld via deze aanval werd gestolen.
Dat maakt de bug niet onschuldig.
Een kwetsbaarheid hoeft niet eerst miljoenen te kosten voordat een update nodig is.
Het verschil is alleen belangrijk bij de berichtgeving.
Dit is een bewezen signingprobleem met een mogelijke aanval, niet een bevestigde hack waarbij bekend is dat wallets via deze fout zijn leeggehaald.
Ledger-gebruikers moeten vooral de Ethereum-app controleren
Wie een Ledger met Ethereum-dApps gebruikt, hoeft geen ingewikkelde herstelactie uit te voeren.
Controleer wel of de Ethereum-app op het apparaat versie 1.22.2 of hoger draait. Houd ook Ledger Wallet en het besturingssysteem van het apparaat actueel.
Wie regelmatig met
Ledger en dApps werkt, moet daarnaast dezelfde regel blijven volgen: lees de informatie op het fysieke apparaat en keur niets goed wanneer een transactie onverwacht verandert.
Deze zaak laat alleen een ongemakkelijke grens zien.
Een hardwarewallet kan de private key perfect afschermen en toch kwetsbaar worden wanneer de software rond het tekenmoment de verkeerde informatie aan de gebruiker koppelt.
De patch is dicht.
Maar bij self-custody blijft het scherm waarop je “goedkeuren” ziet geen detail. Het is de laatste menselijke controle voordat de handtekening definitief wordt.