Miksi avoimen lähdekoodin merkitys on tärkeä?

Mikä on avoimen lähdekoodin?

Avoimen lähdekoodin ohjelmisto on ohjelmisto, jonka lähdekoodin tekijänoikeuksien haltija on asettanut julkisesti saataville. Todellisen avoimen lähdekoodin lisenssillä ohjelmistoa kehitetään yhteistyössä, ja muut ohjelmoijat voivat katsoa, ​​muokata tai käyttää koodia omaan tarkoitukseensa. Tätä "puhdasta" avoimen lähdekoodin mallia kutsutaan usein nimellä FOSS (ilmainen ja avoimen lähdekoodin ohjelmisto).

Avoimen lähdekoodin vaihtoehto on ”lähde saatavissa”, mikä tarkoittaa, että koodin muokkaamiseen tai muuten käyttöön ei anneta lupaa, vaan että se on käytettävissä tarkastusta varten. Suojaustarkoituksissa tämä on yhtä hyvä kuin todellinen avoin lähdekoodi, joten kun viittaan tässä artikkelissa ”avoimeen lähdekoodiin”, sisällytän koodin, joka on “lähde saatavilla”.

Mikä on suljettu lähde?

Suurimman osan ohjelmistoista kirjoittavat ja kehittävät kaupalliset yritykset. Ymmärrettävästi nämä yritykset haluavat, etteivät muut varastaisi kovaa työtä tai liikesalaisuuksia, joten ne piilottavat koodinsa uteliailta silmiltä salauksella. Kaikki yritykset käyttää tai muokata koodia ilman lupaa johtavat oikeudenkäynteihin tai pahempaan..

Joten mikä on ongelma?

Kuten sanon, tämä on kaikki melko ymmärrettävää, mutta turvallisuuteen liittyvissä kysymyksissä se on suuri ongelma. Jos kukaan ei näe ohjelman toiminnan yksityiskohtia, kuinka voimme tietää, että se ei tee jotain haitallista? Periaatteessa emme voi, joten meidän on vain luotava mukana olevaan yritykseen, mikä meille vainoharhaiset tietoturvatyypit ovat haluttomia tekemään (syystä).

Miksi avoin lähdekoodi on paras ratkaisu?

Jos koodi on avoimen lähdekoodin, niin kuka tahansa pätevä voi tarkistaa sen ja tarkistaa sen riippumattomasti varmistaakseen, ettei takaovia, haavoittuvuuksia tai muita tietoturvaongelmia ole. Avoin lähdekoodi ei ole täydellinen ratkaisu (katso alla), mutta se on ainoa tapa tarkistaa, että ohjelmisto toimii vain siinä, mitä sen on tarkoitus tehdä.

Vaikka koodia ei ole auditoitu, jo se, että se on vapaasti käytettävissä tarkastettavaksi, osoittaa vahvan osoituksen siitä, että siihen voidaan luottaa, koska on epätodennäköistä, että kehittäjät sisällyttäisivät siihen haitallisen koodin ja jättäisivät sen sitten avoimeksi löytääksesi kuka tahansa, joka välittää katsoa.

Ei täydellinen ratkaisu ...

Valitettavasti on rajoitettua määrää henkilöitä, joilla on sekä taidot että aika tarkistaa avoimen lähdekoodin ohjelmistoja (yleensä ilmaiseksi), mikä tarkoittaa, että valtaosaa avoimen lähdekoodin ohjelmista ei ole auditoitu.

Tätä ongelmaa pahentaa se, että monet avoimen lähdekoodin ohjelmat ovat erittäin monimutkaisia, sisältäen tuhansia tuhansia koodirivejä, joten vaikka ne olisi auditoitu, on täysin mahdollista, että tilintarkastajat menettivät ongelman (varsinkin jos haittakoodi on ollut tarkoituksella piilotettu).

Mutta…

Siksi avoin lähdekoodi ei takaa, että ohjelma on ”puhdas”, mutta se on silti paras tae, että meillä on (tai voi olla), että tämä on niin. Vaihtoehto on suljettu lähde, joka ei anna mitään takeita.

Varmista aina avoimen lähdekoodin ohjelmat

Joten avoin lähdekoodi on suuri turvallisuudelle. Jee! Mutta kuinka voit tietää varmasti, että juuri lataamasi avoimen lähdekoodin ohjelmaa ei ole muutettu jollain tavalla?

Tämä saattaa kuulostaa vakava paranoidilta salaliittofantaasia-ajattelulta, mutta helmikuussa 2016 hakkeroitiin Linuxin avoimen lähdekoodin käyttöjärjestelmän yhden suosituimman version, Linux Mintin, verkkosivusto, ja lataajille annettiin kompromissiversio käyttöjärjestelmästä.,

"Hakkerit tekivät muokatun Linux Mint ISO: n, jossa oli takaovi, ja onnistuivat hakkeroimaan verkkosivustomme osoittamaan siihen."

Tartunnan saaneet Linux ISO -kuvat asensivat täydellisen käyttöjärjestelmän Internet Relay Chat (IRC) -takaovi-tsunamin avulla, joka antoi hyökkääjille pääsyn käyttäjien järjestelmiin IRC-palvelimien kautta. Joten uhka on hyvin todellinen.

Tässä tapauksessa lataajat, jotka vaivautuivat tarkistamaan tiedoston MD5-hash (katso tästä miten tehdä tämä), olisivat huomanneet petoksen, mutta tällaiset hash-tarkastukset eivät ole luotettava suoja, koska jos verkkosivusto voidaan ensin hakkeroida, se on triviaalia korvata julkaistu tarkistussumma väärillä, jotka tarkistavat koostetun tiedoston.

Paljon parempi on, että kehittäjät allekirjoittavat ohjelmistonsa digitaalisesti, jotta käyttäjät voivat tarkistaa tiedoston alkuperän (Rahapajojen kehittäjät olivat tässä suhteessa erittäin rento, koska heidän ohjelmistojaan ei ollut allekirjoitettu digitaalisesti, ja jopa MD5-hash-toiminto, jota käytettiin, tunnetaan olla rikki!)

Katso artikkeli Digitaaliset allekirjoitukset - miksi ja miten sinun tulisi käyttää niitä saadaksesi lisätietoja. Valitettavasti digitaalisten allekirjoitusten tarkistaminen on tuskaa, mutta se on välttämätöntä, jos välität turvallisuudesta.

Huomautan myös, että ihannetapauksessa kaikki ohjelmistot olisi allekirjoitettava ja varmennettava digitaalisesti, mutta koska kuka tahansa voi muokata avoimen lähdekoodin vapaasti, se on helpompi manipuloida kuin suljettu lähdekoodi. Siksi on erityisen tärkeää tarkistaa avoimen lähdekoodin ohjelmat.

Avoin lähdekoodi: johtopäätös

Avoin lähdekoodi ei ole täydellinen ratkaisu, mutta se tarjoaa parhaan mahdollisen (ja vain!) Takuun ohjelmistojen luotettavuudelle. Vaihtoehto on suljettu lähde, joka ei anna mitään takeita (muuten kuin sokea usko yritykseen, mikä on sitä uskoa, jota teknologiayritykset eivät ansaitse).

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