Hvorfor er open source vigtig?

Hvad er open source?

Open source-software er software, hvis kildekode er blevet gjort offentligt tilgængelig af dens copyright-indehaver. Under en ægte open source-licens udvikles softwaren i samarbejde, og andre programmerere kan se på, ændre eller bruge koden til deres egne formål. Denne "rene" open source-model omtales ofte som FOSS (gratis og open source-software).

En variant af open source er "tilgængelig kilde", hvilket betyder, at der ikke gives tilladelse til at ændre eller på anden måde bruge koden, men at den er tilgængelig til kontrol. Af sikkerhedsmæssige årsager er dette lige så god som sand open source, så når jeg henviser til “open source” i denne artikel, inkluderer jeg kode, der er “source source”.

Hvad er lukket kilde?

Det meste software er skrevet og udviklet af kommercielle virksomheder. Forståeligtvis er disse virksomheder ivrige efter ikke at have andre til at stjæle deres hårde arbejde eller forretningshemmeligheder, så de skjuler deres kode væk fra nysgerrige øjne ved hjælp af kryptering, og ethvert forsøg på at bruge eller ændre koden uden tilladelse vil resultere i retssager eller værre.

Så hvad er problemet?

Som jeg siger, det hele er ganske forståeligt, men når det kommer til sikkerhed udgør det et stort problem. Hvis ingen kan se detaljerne om, hvad et program gør, hvordan kan vi da vide, at det ikke gør noget ondsindet? Grundlæggende kan vi ikke, så vi er simpelthen nødt til at stole på det involverede firma, hvilket er noget os paranoide sikkerhedstyper er uærlige at gøre (med god grund).

Hvorfor er open source den bedste løsning?

Hvis koden er open source, kan den uafhængigt undersøges og revideres af enhver, der er kvalificeret til at gøre det, for at kontrollere, at der ikke er nogen bagdøre, sårbarheder eller andre sikkerhedsproblemer. Open source er ikke en perfekt løsning (se nedenfor), men det er den eneste måde at skulle verificere, at software kun gør nøjagtigt, som det skal.

Selv hvis koden ikke er revideret, giver den kendsgerning, at den frit tilgængelig til revision, en stærk indikation af, at den kan stole på, da det er usandsynligt, at udviklere vil medtage ondsindet kode og derefter lade den være åben for at blive opdaget af nogen, der bekymrer sig om at kigge.

Ikke en perfekt løsning ...

Desværre er der et begrænset antal individer med både færdigheder og tid til at revidere open source-software (normalt gratis), hvilket betyder, at langt de fleste open source-programmer ikke er revideret..

Dette problem forværres af det faktum, at mange open source-programmer er ekstremt komplekse, der indeholder tusinder over tusinder af kodelinjer, så selvom de er revideret, er det fuldstændigt muligt, at revisorerne har gået glip af et problem (især hvis ondsindet kode er blevet bevidst skjult).

Men…

Open source garanterer derfor ikke, at et program er “rent”, men det er ikke desto mindre den bedste garanti for, at vi har (eller kan have), at dette er tilfældet. Alternativet er en lukket kilde, der ikke giver nogen som helst garanti.

Kontroller altid open source-programmer

Så open source er fantastisk til sikkerhed. Yay! Men hvordan kan du med sikkerhed vide, at open source-programmet, du lige har downloadet, ikke er blevet manipuleret med på en eller anden måde?

Dette kan lyde som whacko paranoid konspirationsfantasi-tænkning, men i februar 2016 blev webstedet til en af ​​de mest populære versioner af Linux open source-operativsystemet, Linux Mint, hacket, og en kompromitteret version af OS blev gjort tilgængelig for downloadere,

"Hackere lavede en modificeret Linux Mint ISO med en bagdør i det og formåede at hacke vores websted for at pege på det."

De inficerede Linux ISO-billeder installerede det komplette operativsystem med Internet Relay Chat (IRC) bagdør Tsunami, som gav angriberen adgang til brugernes system via IRC-servere. Så truslen er meget reel.

I dette tilfælde ville downloadere, der gider at kontrollere filens MD5-hash (se her for at gøre dette), have set bedrageriet, men sådanne hashchecks er ikke en pålidelig beskyttelse, fordi hvis et websted i første omgang kan hacket, er trivielt at erstatte det offentliggjorte kontrolsum med en forkert, der bekræfter den sammensatte fil.

Meget bedre er det for udviklere at signere deres software digitalt, så brugerne kan verificere oprindelsen af ​​en fil (Mint-udviklerne var meget slappe i denne henseende, da deres software ikke blev signeret digitalt, og endda MD5-hash-funktionen, der blev brugt, er kendt skal brydes!)

Se min artikel om digitale signaturer - hvorfor og hvordan du skal bruge dem til mere information. Desværre er det ondt at verificere digitale underskrifter, men det er nødvendigt, hvis du er interesseret i sikkerhed.

Jeg skal også bemærke, at ideelt set bør al software signeres og verificeres digitalt, men fordi open source-kode frit kan ændres af nogen, er det lettere at manipulere med end lukket kildekode. Det er derfor især vigtigt at verificere open source-programmer.

Open Source: Konklusion

Open source er ikke en perfekt løsning, men det giver den bedste (og kun!) Garanti, der er mulig, at software kan stole på. Alternativet er en lukket kilde, der overhovedet ikke giver nogen garanti (bortset fra blind tro på virksomheden, som er en tro, som teknologiske virksomheder ikke fortjener).

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me