Mag je de Shellshock-kwetsbaarheid gebruiken om die kwetsbaarheid te repareren?

shell-script-hacker-go-awayEen recent ontdekte softwarekwetsbaarheid laat aanvallers code injecteren in de Bash-shell, die door OS X en vrijwel alle Linux-distributies wordt gebruikt. Dat meldde Tweakers woensdag. Door de kwetsbaarheid kun je op afstand code laten uitvoeren op systemen die met die shell werken. Een slimme lezer mailde me vervolgens: wat nu als die code geen kwade bedoelingen heeft maar de getroffen Bash-shell upgradet naar een veilige versie?

Kwetsbaarheden als deze zijn (helaas) een regelmatig terugkerend fenomeen. Gelukkig blijken ze vaak op te lossen, en dat is ook wat er hier is gebeurd. Oplettende systeembeheerders hebben ondertussen dus het probleem al opgelost, maar je zult ze de kost moeten geven die over drie maanden nog deze kwetsbaarheid op hun systeem hebben zitten.

Het gaat hier om het soort kwetsbaarheid waarbij je op afstand met speciaal gekozen code arbitraire instructies kunt uitvoeren. Het vereist de aanwezigheid van de zogeheten Bash-shell, maar die is op veel Linux systemen standaard aanwezig. Genoeg ruimte voor exploitatie van de fout dus. Je kunt allerhande narigheid uithalen op iemands systeem, maar -dank voor de suggestie- ook op afstand het probleem oplossen door als instructie mee te geven “upgrade de bash shell”.

Op andermans systeem binnengaan zonder toestemming is in beginsel computervredebreuk, zeker als je daarbij gebruik maakt van een technische ingreep en dat is dit zeker wel. Maar de wet spreekt letterlijk van “wederrechtelijk binnendringen” en dat betekent dat áls je een recht hebt, je niet strafbaar bent als je binnendringt.

Het recht zou in dit geval gevonden worden in de zaakwaarneming. Daar hebben we het al eerder over gehad, bijvoorbeeld in de context van andere mensen met open netwerkschijven helpen. De eis uit de wet (art. 6:198 BW) is kort gezegd dat een goede reden voor is en die persoon dat niet zelf kan doen. En je moet zo snel mogelijk verslag afleggen bij de persoon wiens zaak je hebt waargenomen.

Bij deze kwetsbaarheid kun je je afvragen of mensen dit niet zelf kunnen doen. Een mailtje sturen dat ze lek zijn, en dan kijken hoe er wordt gereageerd dus. Pas als er geen reactie komt én je reden hebt om aan te nemen dat men echt lek is en dit schade geeft, zou je zelf actie mogen ondernemen. Mits je dat dan maar ook mailt naar die partij.

Ik vind het dubbel. Enerzijds, de fix is eenvoudig en als deze is uitgevoerd door gewoon het standaard package management systeem aan te roepen dan is de kans op bijkomende schade nihil. Het resultaat is hetzelfde als wanneer meneer het zelf doet. Anderzijds, ik zou er ook niet vrolijk van worden als mensen bij mij dingen komen repareren die ik zelf net wilde gaan doen. Dus wanneer is het nódig dat je dit recht in eigen hand neemt?

Arnoud