Tux Is Open Source minder veilig, omdat het Open Source is?
 

 
door: Armijn Hemel
30 augustus 2000

In dit stuk zal ik proberen te schetsen waarom de openbaarheid van broncode van Open Source programma's, zoals Apache, en besturingssystemen zoals Linux (en natuurlijk Free-, Open- en NetBSD) geen bedreiging is voor de veiligheid van het systeem en al zeker geen `open uitnodiging' is voor hackers.

Is Open Source minder veilig, omdat het Open Source is?

Af en toe als ik een krant of tijdschrift opensla, of met mensen praat over Open Source, dan komt nog wel eens ter sprake dat Open Source software niet veilig zou zijn omdat alle broncode openbaar is en daarom gevoeliger is voor `hackers'.
Goed, om meteen maar een (al dan niet kromme) vergelijking te trekken tussen `Open Source' en `Closed Source' aan de ene kant en eten aan de andere kant:

`Worst waarvan alle ingredienten vermeld staan op de verpakking is ongezonder dan worst waarbij het niet is vermeld. Je kan immers precies zien wat voor rommel de fabrikant erin heeft gestopt!'.

Onzin natuurlijk, maar het is precies hetzelfde argument dat gebruikt wordt tegen Open Source software. De `ingredienten' zijn bekend, dus is het niet veilig.

Ik kan hier nu een tirade houden tegen bedrijven die `Closed Source' software gaan maken, maar daar schieten we niets mee op. Een vurig pleidooi over de zegeningen van Open Source software zal niks uithalen. In de rest van dit stuk zal ik proberen een aantal bekende Open Source (beveiligings)mythes en misverstanden de wereld uit te helpen.

De `amateurs' mythe
Mythe: Open Source software wordt door een handjevol hobbyisten in hun vrije tijd gemaakt. Het zijn geen professionele mensen, de software kan dus gewoon niet goed zijn.

Feiten: Veel Open Source software wordt gemaakt door mensen die ervoor betaald krijgen. Het programmeren van Open Source software is dus voor veel mensen een baan!
Daarnaast is veel Open Source software begonnen aan universiteiten. Nu wil ik als student van een universiteit niet arrogant overkomen, maar ik zou de medewerkers en studenten van een universiteit niet `onprofessioneel' willen noemen.
Verder zijn er veel professionele ontwikkelaars die in hun vrije tijd Open Source software schrijven. Waarom? Omdat ze het kunnen, willen en leuk vinden.
De aantallen mensen die Open Source software schrijft is gigantisch. Aan bijvoorbeeld de Linux kern (het belangrijkste gedeelte, ook wel kernel genoemd) werken vele honderden, zoniet duizenden, mee. Zelfs grote bedrijven hebben niet zo'n groot aantal mensen op één project zitten.

Conclusie: mythe ontkracht.

De `gebrek aan support' mythe
Mythe: Open Source software biedt geen garanties of support, iets dat ik wel krijg als ik een `gewoon' produkt koop. Dan laat je toch geen belangrijke systemen op Open Source draaien?

Feiten: (Bijna) geen software produkt, ook niet van de grote spelers op de markt, komt met garanties. Verder zijn er tegenwoordig genoeg bedrijven die Linux support leveren, die in te schakelen zijn mocht er een beveiliginslek zijn of er een `hack' geplaatst zijn.

Conclusie: mythe ontkracht.

De `openbaarheid' mythe
Mythe: Iedereen kan de broncode van Open Source software inzien en zo fouten vinden waarmee ze in het systeem binnen kunnen treden en schade aan kunnen richten. Bij een `gewoon' produkt is die code niet vrij beschikbaar. Ze kunnen de code niet zien en dus ook geen fouten vinden.

Feiten: Bovenstaande mythe klopt ten dele. Inderdaad kan iedereen de code inzien en zo fouten opsporen om mee het systeem binnen te treden. Er zijn ook mensen die dit proberen te doen (en het lukt soms). Echter, op hetzelfde moment wordt bijvoorbeeld de code van Linux 24 uur per dag gecontroleerd op fouten. Als er een fout gevonden wordt is deze soms al binnen een paar uur(!) opgelost en staat er een nieuwe versie op Internet. Fabrikanten van `gewone' software doen er veel langer over om deze `bugfixes' te maken. Het varieert van een paar dagen tot een paar jaar tot misschien wel nooit!

Het laatste gedeelte van de mythe wordt ook wel `security through obscurity' genoemd. Door alle informatie te verbergen over het systeem (door bijvoorbeeld niet de broncode erbij te leveren) hoop je dat het veilig is. Schijn bedriegt echter. Er zijn genoeg mensen die proberen een `closed source' systeem te hacken, en dat lukt maar al te vaak. Omdat het systeem `closed source' is, kan de systeembeheerder zelf ook de fouten niet herstellen, maar is overgeleverd aan de service (of het gebrek daaraan) van de fabrikant van de software!
Dit beeld wordt nog eens bevestigd door de praktijk: als je bijvoorbeeld kijkt op bijvoorbeeld BugTraq hoeveel zogenaamde `exloits' er zijn voor closed source besturingssystemen in verhouding met wat er allemaal is voor Open Source besturingssystemen, dan schrik je wel.

`Security through obscurity', het onthouden van informatie over het systeem aan de gebruiker (bijvoorbeeld de systeembeheerder) om zo `veilig' proberen te zijn werkt niet. `Veilige code' heeft niets te verbergen.

Conclusie: mythe ontkracht.

Conclusie

In dit korte artikel heb ik proberen te laten zien dat de openbaarheid van de broncode van Open Source software geen bedreiging hoeft te zijn en dat het vaak zelfs beter is dan software waarvan de broncode niet vrij verkrijgbaar is.

Hoewel vrij verkrijgbare broncode in theorie een beveiligingsprobleem zou kunnen zijn, leert de jarenlange ervaring dat het dat juist niet is en dat Open Source systemen doorgaans veiliger zijn. Om de redenen nog eens kort te herhalen:

  • Open Source software wordt grotendeels gemaakt door professionals (en ook hobbyisten) met verstand van zaken.
  • broncode wordt 24 uur per dag gecontroleerd door heel veel mensen en fouten worden zo snel mogelijk verbeterd. Zo snel mogelijk is vaak al binnen enkele dagen, wat erg snel is binnen de software industrie.
  • `security through obscurity' werkt niet.
Open Source software is, ook volgens veel beveiligings experts, veiliger dan `gewone' software.

Een aantal pagina's waar je je oor te luisteren kan leggen zijn onder andere:


Armijn Hemel is student Informatica aan de Universiteit Utrecht, één van de medewerkers van NL.Linux.org en editor voor het European Unix Platform e-zine. Daarnaast schrijft hij zo nu en dan artikelen voor Linux Magazine (de Nederlandse).
 
  HTML 4.01 compliant Laatst gewijzigd 2004/03/18 door cor. Copyright (c) 1999-2005 NL.Linux.org
Linux is een geregistreerd handelsmerk van Linus Torvalds