Mag je software reverse engineeren om fouten te vinden?

| AE 8023 | Intellectuele rechten, Security | 31 reacties

Een lezer vroeg me:

Is reverse engineering legaal als het doel is om beveiligingslekken te vinden? Jij zei ooit van wel, maar in de wet staat volgens mij dat je alleen mag reverse engineeren om compatibiliteit te realiseren.

Oef, dat is lang geleden, maar inderdaad:

Alleen die vormen waarmee je compatibiliteit met zelfgeschreven software wilt bewerkstelligen, of waarmee je alleen de achterliggende ideeën, concepten en principes achterhaalt zijn legaal. Met name is het niet legaal om de informatie te gebruiken om een kloon van de software te maken.

Waar de vraagsteller naar refereert, is het wetsartikel dat het eerste deel van die zin onderbouwt:

Als inbreuk op het auteursrecht op [software], worden niet beschouwd het vervaardigen van een kopie van dat werk en het vertalen van de codevorm daarvan, indien deze handelingen onmisbaar zijn om de informatie te verkrijgen die nodig is om de interoperabiliteit van een onafhankelijk vervaardigd computerprogramma met andere computerprogramma’s tot stand te brengen, mits: (bla)

Dit is inderdaad beperkt tot reverse engineeren met als doel het maken van een interoperabel eigen programma. Soms is het daarvoor nodig dat je de broncode van andere software achterhaalt, omdat je anders onvoldoende informatie hebt over hoe je eigen software moet gaan werken. Het vinden van een fout in software is natuurlijk niet hetzelfde als “interoperabiliteit tot stand brengen”, tenzij je zegt “ik moet weten hoe die fout werkt want ook daarin moet ik compatibel zijn”.

Er is echter nog een ander artikel dat specifieker op fouten ziet:

De verveelvoudiging, als bedoeld in de eerste zin, die geschiedt in het kader van het laden, het in beeld brengen of het verbeteren van fouten, kan niet bij overeenkomst worden verboden.

Reverse engineeren is een vorm van verveelvoudigen. Dat is waarom deze actie in principe inbreuk op het auteursrecht maakt. Echter, dit artikel verklaart het verveelvoudigen ter herstel van fouten legaal (zelfs als in de EULA staat dat dat niet toegestaan is). Daarom zou dit volgens mij toch gewoon toegestaan zijn.

Dus ik geloof dat ik toch gelijk had, hoewel om een andere reden dan ik zei 🙂

Arnoud

Het Wassenaar Arrangement versus de security-onderzoeker

| AE 7806 | Intellectuele rechten, Security | 22 reacties

bug-fout.pngEen Britse student mag zijn scriptie niet publiceren omdat hij daarin exploits uitlegt, wat verboden is door het Wassenaar Arrangement. Dat meldde Ars Technica afgelopen vrijdag. De bachelorscriptie bevat nu enkele zwartgemaakte pagina’s, en details daaruit worden alleen aan bona fide securityonderzoekers beschikbaar gesteld. Wacht even, is het nu ook al verboden om wetenschappelijke publicaties over securitygaten te doen?

Het Akkoord van Wassenaar (niet te verwarren met het Akkoord van Wassenaar) is een verdrag dat exportrestricties stelt op wapens en dual-use technologie. In 2014 werd de scope van dit Akkoord uitgebreid: ook intrusion software is nu een ‘wapen’ en daarmee onderworpen aan exportrestricties.

Meer specifiek gaat het om

Software ‘specially designed’ or modified to avoid detection by ‘monitoring tools,’ or to defeat ‘protective countermeasures,’ of a computer or network-capable device, and performing any of the following: (a) The extraction of data or information, from a computer or network-capable device, or the modification of system or user data; or (b) The modification of the standard execution path of a program or process in order to allow the execution of externally provided instructions.

Het is item (b) waardoor ook zero days en andere exploitsoftware hieronder zou kunnen vallen: vrijwel alle exploits zijn uiteindelijk gericht op het uitvoeren van andere instructies, het hele punt immers is de controle overnemen van het systeem dat je aanvalt.

Op zich valt ook een exploit in een paper onder deze definitie. Het gaat immers niet om het medium waarin de software is verschenen of de bedoelingen van de auteur. Echter, elders in het Akkoord staat:

Controls do not apply to “technology” “in the public domain”, to “basic scientific research” or to the minimum necessary information for patent applications.

Hierbij betekent “public domain”

“technology” or “software” which has been made available without restrictions upon its further dissemination. Copyright restrictions do not remove “technology” or “software” from being “in the public domain”.

Oftewel, wie publiceert zonder restrictie, valt buiten het verdrag. Vreemd is het wel, want als je dus je software voor een beperkt publiek aanbiedt dan krijg je exportrestricties om je oren, maar zet je het met broncode en al op internet onder een opensourcelicentie dan heb je nergens wat mee te maken.

Het lijkt er bij deze student op dat er nog wat anders meespeelt: hij noemt naast het Akkoord ook het ethisch beleid van zijn universiteit als factor die in de weg zit. Ik kan dat beleid zo niet vinden, maar het is ergens voorstelbaar dat een stel alfa’s uit het bestuur meende dat exploits publiceren onethisch is ongeacht de wetenschappelijke waarde daarvan. Daar doe je dan verder juridisch niets aan.

Arnoud

Is embedded software het einde van het concept ‘eigendom’?

| AE 7693 | Innovatie, Intellectuele rechten | 38 reacties

copyright-symbol-printed.pngVoertuigfabrikanten John Deere en General Motors willen het concept eigendom afschaffen, gilde Wired onlangs. In de VS staat de DMCA ter discussie: welke uitzonderingen op het auteursrecht moeten er in de wet blijven staan, en met name wat gaan we doen met de regels over het omzeilen van technische kopieerbeveiligingsmaatregelen in software. En de reden voor het gillen is de positie van Deere: je koopt weliswaar een tractor, maar de software krijg je slechts in licentie dus daar moet je van afblijven.

Het is decennialang het mantra geweest in software-auteursrechtland: je koopt geen software, je krijgt slechts een gebruiksrecht waarvan de scope niet verder reikt dan het de licentiehouder goeddunkt. Wie wil afwijken van dat contractueel gegunde recht, is eigenlijk maar een piraat.

Steeds vaker grepen softwareleveranciers ook naar technische maatregelen om kopiëren of aanpassen van hun software tegen te gaan. En om het hacken dáárvan weer tegen te gaan, staat sinds alweer heel wat jaartjes in de wet dat het verboden (‘onrechtmatig’) is om effectieve kopieerbeveiligingen te omzeilen of uit te schakelen.

Maar in de wet staat er niet bij dat dat alléén geldt wanneer je de software illegaal wilt kopiëren. Ook het uitschakelen van een beveiliging met een legitiem doel – zeg, omdat je een citaat uit het beschermde werk wilt kopiëren, of omdat je je tractor wil opvoeren met een softwarehack – is strikt gesproken verboden. En Deere en General Motors betogen nu dus dat dit niet alleen maar een ongelukkige lezing van de wet is. In prachtig ronkend auteursrechtenpropaganda heet het dan dat:

[Circumventing the protection may] make it possible for pirates, third-party developers, and less innovative competitors to free-ride off the creativity, unique expression and ingenuity of vehicle software.

Dat het in veel gevallen niet gaat om “minder innovatieve concurrenten” maar om mensen die hun legaal gekochte auto willen aanpassen, zeggen ze er dan niet bij. Die mensen hebben de auto wel gekocht, maar de software slechts in licentie gekregen.

In Europa koop je je software wél, zeker als hij embedded zit in een apparaat. Alleen: daarbij is het zeker niet gezegd dat je de software mag aanpassen. Het auteursrecht op dat exemplaar is uitgeput, maar dat betreft eigenlijk alleen het recht om dat ene exemplaar van de software opnieuw op de markt te brengen.

Het aanpassen van die software valt buiten de uitputting. Net zoals het strikt gesproken niet toegestaan is om in een boek correcties te maken of pagina’s eruit te scheuren en in te lijsten. Alleen dát vinden we doodnormaal. Waarom dan met aanpassen van software niet?

Natuurlijk, het aanpassen van embedded software in een apparaat zoals een auto kan gevaarlijk zijn. Maar dat reguleer je door in de Wegenverkeerswet op te nemen wat er wel en niet mag, zodat de overheid daar toezicht op kan houden. Niet door een auteursrechthebbende te laten bepalen óf je de software in je auto mag aanpassen.

Arnoud

Moet je bij een notice/takedown je hele GitHub repository verwijderen?

| AE 7673 | Intellectuele rechten | 15 reacties

Een lezer vroeg me: Als ik in mijn GitHub repository een pull-request binnenhaal waar ik later een notice and takedown over krijg, voldoet het dan om met een nieuwe commit de omstreden code te verwijderen (de omstreden code blijft dan in in de git historie beschikbaar) of moet ik dan de hele repository verwijderen? Voor… Lees verder

Tweedehands software mag worden doorverkocht, en de licentie gaat mee

| AE 7557 | Intellectuele rechten | 14 reacties

Een eeuwige softwarelicentie die tegen een eenmalige vergoeding is verstrekt, mag worden doorverkocht ongeacht wat er in die licentie staat. Wel is de koper vervolgens gebonden aan alle bepalingen uit het licentiecontract. Dat staat in een vonnis (via) van de rechtbank Midden-Nederland van vorige week. Hiermee wordt het UsedSoft-arrest uit 2012 bevestigd. In deze zaak… Lees verder

Mag je Metasploit-modules publiceren voor kwetsbaarheden in software?

| AE 7448 | Intellectuele rechten, Security | 17 reacties

Een lezer vroeg me: Vanuit een research-oogpunt zou ik graag Metasploit modules willen publiceren voor gedichte kwetsbaarheden in veelgebruikte software. Kan dit zomaar of ben je dan strafbaar bezig? Het is strafbaar om een kwetsbaarheid te exploiteren en zo binnen te dringen in een computersysteem. Dat is de computervredebreuk uit artikel 138ab Strafrecht. Aanvullend is… Lees verder

Hoe lang moet een telefoonverkoper Android ondersteunen?

| AE 7398 | Intellectuele rechten, Ondernemingsvrijheid | 41 reacties

Een lezer vroeg me: Ik las dat Google het dichten van lekken in browser van oude Android versies niet haalbaar acht. Maar kunnen ze dat zomaar beslissen? Ik heb toch recht op een product conform de verwachtingen, en ik mag toch verwachten dat een telefoon een paar jaar goed functioneert? Dat klopt, een telefoon moet… Lees verder

Maakt linken van een GPL bibliotheek je software automatisch GPL?

| AE 7290 | Intellectuele rechten | 40 reacties

Intrigerende discussie in de comments vorige week: als je programma linkt tegen een GPL open source library, is je programma dan alleen onder de GPL te verspreiden? Immers, de GPL zegt dat je afgeleide werken alleen onder de GPL mag verspreiden. En wat is er nu meer afgeleid dan een programma dat noodzakelijkerwijs een library… Lees verder

Mag een bedrijf licenties van software afnemen op naam van een werknemer?

| AE 7167 | Intellectuele rechten, Ondernemingsvrijheid | 15 reacties

Een lezer vroeg me: Ik ben student en werk bij een ICT-bedrijf. Mijn werkgever heeft me gevraagd om bij Surfspot wat software met studentenprijzen aan te schaffen zodat hij goedkoper uit is. Moet ik daaraan meewerken? En ga ik de boete krijgen als er een audit komt? Als student kun je vaak met flinke korting… Lees verder

Oracle’s Java API auteursrechtelijk beschermd in VS, Android maakt inbreuk

| AE 6637 | Intellectuele rechten | 21 reacties

Een Amerikaans gerechtshof heeft vrijdag in hoger beroep bepaald dat Google met zijn Android-besturingssysteem het copyright van Oracle heeft geschonden, las ik bij Tweakers. Nadat eerder nog was bepaald dat er geen auteursrecht zat op de API’s van Oracle’s Java, beslist het Hof van Beroep nu anders: de aangeboden code en de structuur, volgorde en… Lees verder