Blijft je geheimhouding bij responsible disclosure bestaan als een AI-tool de kwetsbaarheid kan vinden?

Photo by Sasun Bughdaryan on Unsplash

Een lezer vroeg me:

Tal van websites en softwarebedrijven hebben regels opgesteld voor responsible disclosure of coordinated vulnerability disclosure. Een eis die je daarbij vaak ziet, is dat je een gevonden kwetsbaarheid geheim moet houden totdat er nadere afspraken over publicatie zijn gemaakt. Meestal ook pas nadat er een update beschikbaar is. Maar stel dat je een AI-tool gebruikt om de kwetsbaarheid te vinden, geldt zo’n geheimhoudingsplicht dan nog steeds?
Responsible disclosure of coordinated vulnerability disclosure zijn bedoeld om een praktisch midden te vinden tussen enerzijds het in stilte kunnen oplossen van fouten en anderzijds het creëren van druk om die fouten ook écht opgelost te krijgen. Geheimhouding is daarbij een noodzakelijk kwaad, maar dat moet tijdelijk zijn: de deadline van publicatie is wat de organisatie dwingt om vaart te maken met het oplossen.

(RD of CVD beleid dat geheimhouding laat lopen tot de organisatie het zegt, is dus die naam niet waard. Ik zou het juridisch onrechtmatige misleiding noemen.)

Vanuit algemene principes van redelijkheid en billijkheid (art. 6:248 BW) kan een partij niet aan geheimhouding worden gehouden als het feit al publiek is. Het zou immers bizar zijn als je over een bug in detail kunt lezen in de media, terwijl jij precies diezelfde kennis geheim moet houden. Ik zeg dit wel met een voorbehoud: de publieke informatie moet wel overeen stemmen met jouw geheime kennis. Algemene uitspraken dat er een bug van die categorie is gevonden in die tool, ontslaat je dus niet van je geheimhouding over waar die bug precies zit. Ook blijft geheimhouding gelden op punten zoals wanneer jij hem ontdekte, wat de organisatie toen zei enzovoorts.

AI-tools worden massaal gebruikt om kwetsbaarheden te vinden in allerlei software. Handig voor de onderzoeker, al is niet iedere organisatie blij met slop-rapporten waarmee men snel een bug bounty hoopt te scoren. Maar het gegeven “de kwetsbaarheid werd door een AI tool gevonden” is bij lange na niet hetzelfde als “de kwetsbaarheid is openbaar”. Natuurlijk, een ander kan die tool ook gebruiken en ook die kwetsbaarheid vinden. Maar bij geheimhouding moet jij bewijzen dát dat is gebeurd en bovendien dat die ander de kwetsbaarheid openbaar heeft gemaakt.

Ook het feit van algemene bekendheid dat de ontwikkelaars van die tools ingevoerde data gebruiken voor hertraining en andere schimmige doeleinden, betekent niet dat jouw bug report ineens openbaar wordt. Je bewijs moet echt concreet zijn. Laat maar zien wanneer die ingevoerde data ook daadwerkelijk in output terecht gekomen is en vervolgens publiekelijk bekend werd.

Arnoud

8 reacties

  1. Frappant je terzijde over juridisch onrechtmatige misleiding. De ‘standaard’ RD-CVD policy van Floor Terra die zeer breed in gebruik is bij bedrijven en overheden, stelt als voorwaarde dat je pas publiceert als het is opgelost – ergo een ongelimiteerde termijn waarbij de organisatie als enige aan zet is. Zijn al deze organisaties dan volgens jou aan het misleiden?

    1. Dat klinkt naar mij toe inderdaad als een tactiek om niets te hoeven doen of in ieder geval geen haast te maken.

      En als dat het beleid is, dan denk ik dat mijn beleid zou worden: Als ik een beveiligings lek vindt laat ik die eerst door een persoon die ik vertrouw reviewen en bevestigen. Dat je iets laat reviewen is in software land standaard praktijk.

      En daarna doe ik de disclosure pas en ga ik een gag order aan.

      En als ze, zoals je helaas te vaak op usenet leest, niets doen kan altijd die andere persoon publiceren dat er een lek is en dat ze tot publicatie overgaan binnen X tijd.

      1. Ik heb een dergelijke tactiek ook wel eens in een andere context toegepast. Moest een NDA gaan tekenen waarbij ik niets meer mocht vertellen over een VSO (Vaststellingsovereenkomst bij ontslag). Eerst een kopie van de NDA en VSO aan mijn vrouw gegeven (die gaat het immers ook aan, en ik mocht het na tekenen zelf haar niet meer laten lezen), en daarna getekend. Die handtekening bindt natuurlijk alleen mijzelf, niet mijn vrouw, dus als daarna het nodig zou zijn geweest om toch iets aan derden te melden: “Ik mag niets zeggen vanwege de NDA, maar praat eens met mijn vrouw.”

        (De procedurele fout was dat ik de NDA en VSO toegestuurd kreeg om te tekenen, in plaats van dat ik was uitgenodigd ze op kantoor door te nemen en gelijk te tekenen.)

        1. Ha ha, zo ken ik er ook één in de vrienden kring: een NDA tekenen over een schikkingsbedrag. Waarna ze het vervolgens overmaken over naar de bankrekening waar zijn vriendin gemachtigde is.

          Vriendin volgende verjaardag … weet je hoeveel hij wel niet gekregen heeft. Hij zei alleen maar ik kan het noch bevestigen noch ontkennen.

          Je vraagt je af wat het nut is van dergelijke NDAs, als je een partner hebt kan moeilijk achterhouden wat je bezit, maar ik heb nog nooit meegemaakt dat ze de partner ook laten tekenen.

    2. De oplossing is om als de misstand ernstig genoeg is, niet mee te werken aan het (ir)responsible disclosure-beleid van partijen die blijvende geheimhoudingsvoorwaarden stellen, maar in dat geval gelijk alleen (desgewenst anoniem) te melden bij het CSIRT. Anoniem melden is straks (na inwerkingtreding van de Cyberbeveiligingswet) eenieders recht. Zo lang de fabrikant nog niet kan weten wie je bent, heb je hier dus als goedbedoelende vulnerability-vinder iets aan. En zelfs als men je identiteit achterhaalt sta je dan juridisch sterk. Het is vervolgens aan het CSIRT om de misstand aan te kaarten bij de fabrikant in kwestie (maar het blijft dan wellicht wel onduidelijk voor de melder wat de status is!). Als de misstand ernstig genoeg is (het raakt de nationale veiligheid) en niet opgelost wordt, kan dit er uiteindelijk toe leiden dat het product of de dienst door veel bedrijven (die onder NIS2/Cyberbeveiligingswet vallen) niet meer gebruikt mogen worden (art. 18 Cyberbeveiligingsbesluit). Nb: het moet (in het huidige tekstvoorstel van het besluit) dan wel gaan om intentioneel gedrag van de fabrikant in kwestie. Maar er valt best (zonder giechelen) te beargumenteren dat te lang nalaten om een ernstige kwetsbaarheid te fixen een vorm van intentie is. Maar mij lijkt het beter als het Cyberbeveiligingsbesluit op dit punt nog wat verbreed wordt zodat ook ‘nalaten te fixen’ er expliciet onder valt. Als de fabrikant stil zit en de kwetsbaarheid daadwerkelijk benut werd (door een ander) en er sprake is van een significant incident loopt de fabrikant sowieso enorme reputationele risico’s. Het CSIRT/autoriteiten kunnen het publiek hier dan immers over informeren als dat nodig is (art. 37 Cbw) of onder NIS2/Cbw vallende bedrijven dwingen om hun klanten te informeren (art. 38). Als dat gebeurt, wordt al snel voor iedereen duidelijk welke fabrikant de schuldige/nalatige is.

      1. Naschrift en ter info: de definitieve versie van het Cyberbeveiligingsbesluit zoals in het Staatsblad gepubliceerd (nog niet op wetten.overheid.nl) bevat geen artikel meer over het kunnen uitsluiten van leveranciers/producten op nationale veiligheidsgronden. Het oude artikel 18 van het concept-CBB werd verwijderd.

    3. Dag Thijs, Er zijn organisaties die mijn tekst overnemen en ‘m aanpassen. Dat mag. Als organisaties een beleid hanteren dat ze CVD noemen, maar daarin voorwaarden stellen voor de melder probeer ik ze daar op aan te spreken. Een CVD beleid hoort namelijk geen voorwaarden op te leggen aan melders, maar eenzijdig aan te geven hoe een organisatie omgaat met meldingen en welke voorkeuren de organisatie heeft. Zie bijvoorbeeld mijn orginele tekst zoals ik ‘m heb gepubliceerd: https://coordinatedvulnerabilitydisclosure.org/example_policy/

      Ik merk dat er meer verwarring over is en dat ik meer uitleg moet geven dat het aan de melder is om te bepalen of, en hoe lang, de bevindingen geheim worden gehouden. Mijn uitleg aan organisaties is meestal: als je harde voorwaarden gaat opleggen aan melders, wat wil je dat een potentiele melder die het niet eens is met de voorwaarden gaat doen? Helemaal niet melden? Alles publiceren zonder waarschuwing vooraf?

      1. Jouw versie bevat een harde ongunstige voorwaarde die zeer beperkend is en beter niet aanvaard kan worden: “Do not reveal the problem to others until it has been resolved”. Want als je iets meldt en het wordt niet opgelost door de organisatie in kwestie, wat doe je dan als je weet dat mensen daardoor gevaar blijven lopen? Als je na melding bij de organisatie verantwoordelijk voor de kwetsbaarheid het toch aan een ander meldt, dan kan het ertoe leiden dat de organisatie in kwestie jou daardoor civielrechtelijk en/of strafrechtelijk aanspreekt. Ik zou daarom iedereen adviseren om nooit te melden bij organisaties die jouw op blijvende geheimhouding gerichte CVD gebruiken, maar rechtstreeks bij een CSIRT te melden. Zodoende kan je anoniem melden en buigt de overheid zich erover (en heb je gedaan wat je kon zonder zelf vervolgd te kunnen worden). En als het probleem ernstig genoeg is, zal dat dan uiteindelijk wel leiden tot gevolgen voor de organisatie die het probleem niet oplost.

Geef een reactie

Handige HTML: <a href=""> voor hyperlinks, <blockquote> om te citeren, <UL>/<OL> voor lijsten, en <em> en <strong> voor italics en vet.