De kluis hield stand. Dat was nooit de ingang.
LastPass werd opnieuw gehackt en de kluis hield stand. De ingang was een dode OAuth-token van een verlaten integratie — het type geheim dat bijna niemand als geheim behandelt.
LastPass is deze maand opnieuw gehackt. Het deel waar iedereen zich op voorbereidt, gebeurde niet. Er is geen kluis gekraakt. Geen masterwachtwoord gevallen. De versleutelde geheimen bleven onaangeroerd. LastPass bevestigde dat de "products, services, and infrastructure were not affected" en dat de klantenkluizen "remained secure." [1]
De aanvallers zijn nooit in de buurt van de kluis geweest. Ze liepen naar binnen via een leverancier.
Hier is de keten, want het mechanisme is het hele punt. Op 11 juni kreeg een groep die zichzelf Icarus noemt toegang tot Klue, een market-intelligence-platform dat @LastPass intern gebruikte. Hun ingang, volgens @HuntressLabs, die het incident afhandelde: "a long-dormant API credential originally created for an abandoned third-party integration prototype." [2] Een sleutel gemaakt voor een project dat niet meer bestond, voor een doel dat niemand zich nog herinnerde, en nog steeds actief. Vanuit Klue duwden ze kwaadaardige code die de OAuth-tokens oogstte die Klue voor zijn klanten bewaarde: de doorlopende machtigingen waarmee het namens die bedrijven @salesforce, Slack, HubSpot en meer kon lezen. Eén van die tokens was die van LastPass. Daarmee lazen de aanvallers LastPass' Salesforce CRM. Namen, e-mailadressen, telefoonnummers, adressen, inhoud van supportcases. Toen het afpersbericht. Betalen, of het gaat naar de leaksite.
LastPass was niet de enige in de inslag. Huntress, Recorded Future, Tanium, Jamf, BeyondTrust. Beveiligingsbedrijven, de meeste. Het type dat hiervan zijn werk maakt.
Dus geef credit waar het hoort. De cryptografie van LastPass deed precies wat ze beloofde. De kluis is niet het verhaal. Het verhaal is een klasse geheim die bijna niemand als geheim behandelt: de langlevende token die in een SaaS-integratie zit die je ooit hebt goedgekeurd en daarna nooit meer hebt bekeken. Hij verloopt niet. Hij weet niet dat hij gestolen is. Hij verleent veel meer dan de reden waarvoor hij is gemaakt, en hij blijft dat stilzwijgend verlenen tot een mens eraan denkt om hem uit te zetten. Meestal denkt er geen mens aan.
Dat is de verschuiving. Het threat model is verschoven van "kunnen ze de kluis breken" naar "hoeveel vergeten sleutels staan er in deuren die je niet meer in de gaten houdt." Een dode credential uit een verlaten prototype was genoeg om de klantgegevens van een reeks bedrijven te bereiken. De wiskunde was nooit het zwakke punt. De verspreiding was dat.
Dit is precies het falen waarvoor een credential gebouwd zou moeten zijn om het te weigeren. Een geheim dat Clavitor uitgeeft is kortlevend en scoped. Het wordt gebrokerd voor één operatie, het verloopt vanzelf, en het is gebonden en toegeschreven aan de machine die het gebruikte. Zo'n token kan niet worden wat hier de schade aanrichtte: een vergeten machtiging, geoogst lang nadat iemand zich nog herinnerde dat hij bestond, opnieuw afgespeeld vanaf de infrastructuur van een vreemde zonder iets dat hem aan een actor bindt. Hij is weg voordat hij gevonden kan worden, en hij is nooit voorbij zijn ene taak gegaan.
Er is een grens die je hardop moet benoemen. Clavitor regeert de credentials die het zelf beheert, niet de doorlopende OAuth-machtiging die jij aan het platform van een leverancier hebt gegeven. Die token leeft in hun systeem, onder hun controles, en geen kluis reikt naar binnen om hem voor jou te laten verlopen. Wat verandert is alles binnen Clavitors bereik. Het weigert de plek te zijn waar een nooit verlopend geheim stil kan zitten. De discipline waarvan het ontbreken Klue opende (korte levens, strakke scope, echte attributie) is hier de standaard, niet een instelling die iemand had moeten onthouden.
De vraag die overblijft is ongemakkelijk. Hoeveel actieve tokens zitten er bij leveranciers die je een jaar geleden onboardde en sindsdien niet meer aan hebt gedacht?
We hebben de handvol eigenschappen opgeschreven die een credential zou moeten hebben voordat je hem iets toevertrouwt. [3]
Clavitor (@clavitorai) is de credentialkluis gebouwd voor AI-agents, en tegen hen. clavitor.ai
Bronnen
[1] BleepingComputer, "LastPass confirms data breach in Klue supply chain attack" — @BleepinComputer
[2] Huntress incidentbevindingen, gerapporteerd via Help Net Security, "Klue breach lead to Salesforce data theft, Huntress affected" — @HuntressLabs, @helpnetsecurity
[3] De tien regels van credentialbeheer (native X Article) — @clavitorai