Door Anoniem
closed source is denk ik beter omdat je eerst maar eens aan
de source moet komen oftewel de broncode en daarna kan je
pas inhaken op de source
Dat is niet zo moeilijk.. met decompilers en dergelijke..
voor een ervaren iemand is dit dus echt niet zo'n probleem.
Ik denk dat de twee tegen elkaar op balanceren.. als je
ernaar kijkt.. het enige verschil tussen de twee is dat je
bij de een de source code hebt, wat het iets makkelijker
maakt om bugs op te sporen.. daar zitten weer twee kanten
aan. Bij closed source kun je zeggen dat je meer kans hebt
dat er nog (meer) onontdekte fouten in zitten (meestal wat
trivialere fouten), bij een open source product is het
eenvoudiger de code te lezen en dus fouten op te sporen, wat
tot gevolg heeft dat er minder onontdekte fouten op te
sporen zijn.. dat is heel simpel.. maar de twee wegen tegen
elkaar op. Een open source pakket dat veel audit heeft
ondergaan heeft vast nog wel ergens een bug, maar die is
dan vaak erg lastig te spotten.. bij closed source zou dit
nog lastiger zijn om te spotten, maar daar zijn triviale
fouten ook net iets moeilijker te vinden dan in open source
producten.
Ik denk objectief gezien dat twee vergelijkbare producten
(open source en closed source), dat daarbij onomstotelijk
vast kunt stellen dat er minder bugs in de open source code
zit, natuurlijk ligt dit een beetje aan de hoeveelheid
audits het pakket gehad heeft (als verder niemand de code
heeft bekeken, dan heeft het geen invloed). In het begin
stadium heeft een closed-source pakket een betere security
in de *praktijk* omdat het eenvoudiger is voor aanvallers om
de bugs te vinden in een open source pakket. Maar naarmate
er meer 'exposure' is dan kruisen de twee lijnen zich en dan
zal het opensource project voorop lopen.. je kunt namelijk
praktisch zeggen dat alle triviale bugs eruit gehaald zijn
en dan zal er misschien nog ergens een bug in zitten die
zeer lastig te spotten is.
Ik denk overigens ook dat een auditer gemakkelijker *begint*
aan het auditen van een open source product dan het klooien
met IDA enzo in windows.. hoewel ik daar natuurlijk geen
bewijs voor heb.
Maar er zijn veel meer factoren wat het hele verhaal van
open source vs closed source een beetje in de schaduw zet.
Inderdaad het design.. je zou kunnen zeggen dat er meer druk
is in de open source wereld om betere code te schrijven,
omdat de code op zich ook een visitekaartje is... alweer
niet te bewijzen.. maar als ik werk aan een opensource
project dan probeer ik dat zeer netjes te doen, netjes
commentaar erbij. Verder valt hier ook onder dat met open
source probeer je vaak een duidelijke architectuur te hebben
zodat contributors gemakkelijk aan de slag kunnen, dus
goed-gedefinieerde interfaces en dergelijke, wil je een
succesvol project hebben dan is dat ook een must. Daar zit
ook alweer een keerzijde aan.. doe je dit niet goed en heb
je een beetje lak aan documentatie en dergelijke, dan kan
het zijn dat andere ontwikkelaars verkeerde ideeen hebben
over hoe te interfacen met je project, en daar kunnen
security-bugs uit ontstaan.. maargoed.. zo kun je nog veel
meer opnoemen.
Verder kun je nog noemen dat op een open source
*besturingssysteem* het mogelijk wordt om je systeem
significant dicht te gooien met bijv. RBAC (Role-Based
Access Control).. dus open source systemen zijn vaak
eenvoudiger te controlleren.. zitten ook wel weer keerzijden
aan.
Eigenlijk is het hele debat van closed source vs. open
source dus onzin.. je schiet er niks mee op.. beide
ontwikkel insteken kunnen een redelijk niveau van security
bereiken..