Nee, geheimhouding bij ethical bug reporting is niet bindend

| AE 12954 | Security, Uitingsvrijheid | 7 reacties

De researcher die een ernstige bug bij messaging dienst Telegram meldde, heeft afstand gedaan van de $1000 beloning omdat er geheimhouding aan gekoppeld was, las ik bij Ars Technica. Als verantwoordelijk security-onderzoeker had Dmitrii (geen achternaam) deze netjes gemeld. Telegram moedigt dat ook aan, en je kunt zelfs een bug bounty krijgen. Maar het was nog moeilijk genoeg om de aandacht te krijgen, en toen die kwam, zat er een NDA aan vast. Daar hoef je geen genoegen mee te nemen als onderzoeker.

De bug betrof de zogenaamd zelfvernietigende afbeeldingen: deze bleven per abuis in de cache op telefoons staan, ook nadat gemeld was dat deze berichten verwijderd waren. Iets om te melden natuurlijk, maar makkelijk ging dat niet:

But for a simple bug like this, it wasn’t easy to get Telegram’s attention, Dmitrii explained. The researcher contacted Telegram in early March. And after a series of emails and text correspondence between the researcher and Telegram spanning months, the company reached out to Dmitrii in September, finally confirming the existence of the bug and collaborating with the researcher during beta testing. For his efforts, Dmitrii was offered a €1,000 ($1,159) bug bounty reward.
Voor die beloning moest Dmitrii wel een contract tekenen (van acht pagina’s), waarin een eeuwigdurende geheimhoudingsclausule opgenomen was. Wie in het goede gelooft, zal denken dat Telegram een foutje maakte: dit contract was namelijk een standaard consultancy agreement, waarmee Dmitrii als zzp’er zou werken aan het melden van de bug zeg maar. Niet raar om daarin geheimhouding op te nemen, maar wél raar om dat contract als basis te gebruiken voor het afhandelen van een melding.

Wie niet in het goede gelooft, zal concluderen dat Telegram Dmitrii de mond wilde snoeren met een wurgcontract. (Excuses, mijn metaforen botsen soms.) Ik geloof zelf altijd meer in incompetentie: de persoon die de tip van Dmitrii kreeg, had geen idee waar het over ging en pakte toen maar het best passende contract, iemand wil wat voor ons doen en mijn baas zegt dat dat mag, dan is deze persoon dus een ingehuurde consultant.

De les voor de meelezende security researchers, ethical hackers en ander goedwillend volk: je hoeft zulke dingen niet te tekenen, ongeacht wat een bedrijf zegt. Als je ongevraagd een fout opspoort, dan is melden je goed recht maar zeker niet je plicht. Meteen naar buiten met de bug mag ook, het is vooral dat het nétjes is om even zestig dagen te wachten voordat je dat doet zodat de impact bij het bedrijf redelijkerwijs wat gedempt wordt. Natuurlijk zijn hier allemaal weer uitzonderingen op, maar geen van die komen neer op “je hebt toestemming van het bedrijf nodig om te publiceren wat er mis ging”.

Een bedrijf kan op zich een beloning koppelen aan een eeuwigdurende geheimhouding, dat dan weer wel. Want omgekeerd zijn zij niet verplicht om mensen te betalen die ongevraagd bugs komen melden. De enige echte uitzondering daarop zou zijn als er een bug bounty programma is gepubliceerd waarin staat dat je na x dagen mag publiceren, en je dan zo’n eeuwige NDA opgelegd krijgt.

Arnoud