Stel je een logbestand voor met vragen, antwoorden en daartussen een lange, onleesbare tekenreeks. Die reeks is versleuteld. Je kunt haar niet begrijpen en niet ongemerkt veranderen. Het ligt voor de hand om te denken dat ze daarmee veilig is. Maar wat als je dat gesloten pakketje aan een andere AI geeft — en die het gewoon voor je openleest?

Moderne redeneermodellen maken vóór hun zichtbare antwoord vaak een intern denkspoor. Daar kunnen tussenstappen, hypothesen, toolresultaten en gegevens uit de context in staan. Aanbieders willen die informatie niet als gewone tekst naar een ontwikkelaar sturen, maar een vervolgvraag moet wel kunnen voortbouwen op eerder denkwerk. De oplossing is elegant: de API geeft het redeneerspoor mee als een versleuteld blok, waarna de applicatie dat blok bij de volgende aanvraag terugstuurt. De aanbieder hoeft het spoor niet permanent voor iedere sessie op te slaan en de inhoud blijft voor de klant onleesbaar.

Die elegantie bleek een onverwachte zijdeur te hebben. In de preprint Stealing Reasoning Traces from Proprietary LLM APIs van 10 augustus 2026 beschrijven beveiligingsonderzoekers hoe zulke blokken bij de onderzochte API’s konden worden verplaatst tussen sessies, gebruikers en modellen van dezelfde aanbieder. Een zwaar beveiligd model hield zijn interne redenering verborgen, maar een kleiner, minder streng model accepteerde het versleutelde blok en kon worden aangezet om de inhoud als leesbare tekst uit te schrijven. De onderzoekers demonstreerden varianten bij Anthropic, OpenAI en Google. Ze braken de cryptografie niet; ze gebruikten een compatibel model als onbedoelde decoder.

Dat verschil is meer dan technisch woordspel. Een slot kan uitstekend zijn terwijl de portier ieder geldig gesloten koffertje naar de verkeerde kamer laat brengen. De versleuteling beschermde de inhoud tegen rechtstreeks lezen en wijzigen, maar het systeem controleerde volgens de onderzoekers onvoldoende bij welke gebruiker, sessie en modelcontext het pakketje hoorde. Juist de handige overdraagbaarheid — wisselen van model zonder al het eerdere denkwerk kwijt te raken — maakte hergebruik buiten de oorspronkelijke context mogelijk.

De onderzoekers zochten ook in openbaar gedeelde sessie- en agentlogs. In 315.320 gedecodeerde redeneerblokken vonden zij naar eigen zeggen 367 elementen met persoonlijk identificeerbare informatie en 182 inloggegevens of andere credentials. Dat resultaat vraagt om nuance. Het gaat om een niet-peer-reviewed preprint, getest met specifieke API-versies uit begin juli. De auteurs konden zonder het oorspronkelijke platte denkspoor niet ieder teruggewonnen token exact verifiëren, en hun zoekactie was geen volledige audit van alle openbare logs. Het is dus geen maat voor hoe vaak dit wereldwijd voorkomt. Wel maakt de proef iets ongemakkelijks concreet: een tekenreeks die onleesbaar oogt, kan nog steeds gevoelige inhoud dragen.

Op 30 september maakte OpenAI een eigen incidentonderzoek openbaar. Het bedrijf zegt vanaf 1 juli een gecoördineerde campagne te hebben gezien die beschermde redeneersporen probeerde te verzamelen. Op 24 en 25 juli registreerde het 16.000 aanvragen met een relevant extractiepatroon, afkomstig van meer dan 4.000 gebruikers; later koppelde het verwante patronen aan een cluster van ruim 15.000 gebruikers. OpenAI benadrukt dat deze aantallen pogingen beschrijven, niet noodzakelijk geslaagde extracties. Het schrijft een kerncluster toe aan personen die volgens het bedrijf verbonden zijn aan Moonshot AI, de maker van Kimi, maar zegt ook niet te weten of alle waargenomen activiteit van één actor kwam.

Ook OpenAI noemt dit geen database-inbraak of gekraakte encryptie. Volgens het bedrijf kregen de operators geen directe toegang tot opgeslagen gesprekken. Ze manipuleerden modelinteracties zodat verborgen redenering in zichtbare vorm kon terugkomen. Dat is precies waarom dit incident interessanter is dan een klassiek verhaal over een gestolen sleutel: de beveiligingsgrens liep door een keten van modellen, sessies en API-aanroepen, terwijl ieder onderdeel afzonderlijk legitiem leek.

De reparatie moet daarom uit meer bestaan dan sterkere encryptie. OpenAI zegt een route te hebben gesloten waarmee iemand een versleuteld redeneerspoor van een andere gebruiker kon herhalen en terugwinnen. Het voegde ook controles toe die uitgestuurde tekst kunnen tegenhouden wanneer die verborgen redenering lijkt prijs te geven, en scherpte account- en netwerkdetectie aan. De onderzoekers stellen daarnaast voor om ieder versleuteld blok cryptografisch te binden aan de oorspronkelijke gebruiker en sessie, en hergebruik van een eenmaal verwerkt blok te weigeren. Dat kost flexibiliteit: vrij schakelen tussen modellen en gesprekken wordt lastiger. Maar precies die flexibiliteit was onderdeel van het aanvalsoppervlak.

Voor ontwikkelaars zit de praktische les in het saaiste deel van hun logs. Een veld hoeft niet leesbaar te zijn om gevoelig te zijn. Ruwe agenttraces, sessiedumps en versleutelde redeneerblokken verdienen daarom dezelfde terughoudendheid als tokens en andere geheimen; de onderzoekers waarschuwen expliciet dat zulke blokken geen vertrouwelijke opslagplaats zijn. Voor aanbieders is de les breder: beveiliging stopt niet bij de vraag of data versleuteld zijn. Ook moet vaststaan wie een pakket opnieuw mag aanbieden, in welke context en aan welk model.

De opvallendste vondst is uiteindelijk niet dat een AI intern denkwerk kan prijsgeven. Het is dat gemak en veiligheid hier uit hetzelfde ontwerp kwamen. Het draagbare denkspoor hield gesprekken soepel, totdat bleek dat het iets te graag overal werd herkend. Soms zit het waardevolste geheim niet achter een zwak slot, maar in een pakket dat te weinig weet waar het thuishoort.

Bronnen en verantwoording