|
Perjantai, 29.11.2002 Avoin lähdekoodi - turvallista vai ei?Initiative for Software Choice -ryhmä, jonka tukijoihin kuuluvat mm. Microsoft, Cisco Systems ja Intel, julkaisi tiistaina raportin, jonka mukaan USA:n puolustusministeriön kannattaa välttää avointa lähdekoodia sisältävien ohjelmistojen käyttöä järjestelmissään. Ryhmän mukaan avointa lähdekoodia käyttävät ohjelmistot eivät ole yhtään turvallisempia kuin muut ohjelmistot, vaan itse asiassa avoin koodi muodostaa tietoturvariskin. Toukokuussa perustettua ryhmää hallinnoi CompTIA, jolla on läheiset suhteet Microsoftiin.
|
|
Anonyymi kommentoija, 29.11.2002 09:40:37
- Raportti voidaan aina kirjoittaa puolueellisesti. Ollaanhan tieteellisesti todistettu mm. se, että neekerit ovat luonnostaan valkoihoisia tyhmempiä ja naiset miehiä tyhmempiä (eikä sitten mitään rasisti/sovinistivitsejä tähän)
- M$ haluaa mustamaalata Linuxia, koska se pelkää oman valta-asemansa puolesta. Tätä teoriaa tukevat mm. monet mustamaalausyritykset (kuten tämä), sekä erilaiset valtiovierailut Gatesin taholta muihin maihin.
Eli miten paljon tuohon raporttiin pitäisi ylipäätään uskoa? Yritin lukea sitä, mutta siinä ei ollut mielestäni yhtään järkevää lausetta, josta olisi saanut jotain tietoa irti.
Anonyymi kommentoija, 29.11.2002 10:19:57
TeknoHog, 2.12.2002 09:43:19
Good shit, huh? Dozer makes it. It's good for two things: degreasing engines and killing brain cells.
heko, 30.11.2002 03:46:03
- M$ haluaa mustamaalata Linuxia, koska se pelkää oman valta-asemansa puolesta. Tätä teoriaa tukevat mm. monet mustamaalausyritykset (kuten tämä), sekä erilaiset valtiovierailut Gatesin taholta muihin maihin.
Tutkimuslaitoksen puolueellisuus ei sinällään _todista_ mitään, se voi vain lisätä tiettyjen hämärien osa-alueiden kyseenalaisuutta. Olennaista tutkimuksessa on sen toistettavuus.
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Anonyymi kommentoija, 29.11.2002 09:41:35
Toisena esimerkkinä voin kertoa, että makaat sydämentahdistimen kanssa sairaalassa ja lääkäri tuo viereen käyrä-näytön, jossa on windowsin alapalkki. Kun heräät kirkkaaseen siniseen valoon vieressäsi, et ole kuollut vaan hyvää vauhtia matkalla sinne. Tälläisen lopun toivoisin Gatesille.
samleh, 29.11.2002 17:00:00
just joo.
Anonyymi kommentoija, 29.11.2002 11:51:09
Otetaan esimerkki:
Oletetaan, että hyvin isossa järjestelmässä (esim. käyttöjärjestelmä) on miljoona hyvin pientä, äärimmäisen arvoin esille tulevaa bugia. Nämä bugit ovat sellaisia, ettei niihin normaalikäytössä törmää käytännössä ikinä, mutta ne ovat potentiaalisia haavoittuvuuksia. Oletetaan lisäksi, että järjestelmä on valtion käytössä, ja sen lähdekoodi on avoin. Kalle Kräkkeri haluaa murtautua järejstelmään, ja Kalle pääsee tutkimaan rauhassa lähdekoodia ja etsimään sieltä bugeja. Kalle kuitenkin käy töissä, ja kräkkäilee järjestelmiä lähinnä vapaa-aikanaan. Kalle käyttää kräkkäämiseen vuodessa 1000 tuntia, ja onnistuu löytämään yhden haavoittavuuden.
Paavo Poliisi työskentelee valtiolle, ja hänen tavoitteenaan on estää murtautuminen samaan järjestelmään, josta Kalle on juuri löytänyt aukon. Paavo tekee töitä täysipäiväisesti, ja käyttää aukkojen etsimiseen 10 000 000 tuntia vuodessa. Tänä aikana Paavo löytää 10 000 bugia järjestelmästä. Tästä huolimatta on vain 1% todennäköisyys, että Paavo löytää ja pystyy korjaamaan saman haavoittovuuden, joka Kalle löysi. Oletetaan, että kyse on todella kriittisestä järjestelmästä, niinpä Paavo saa tuekseen 50 000 alan ammattilaista, jotka etsivät bugeja. Tämä ryhmä käyttää testaamiseen 100 000 000 tuntia vuodessa. Silti tältä ryhmältä kestää keskimäärin kymmenen vuotta löytää ja paikata sama bugi, jonka Kalle Kräkkeri löysi. Ja tässä ajassa Kalle Kräkkeri on löytänyt jo monta uutta bugia.
[Lähde: Anderson, Security Engineering]
Tarinan opetus: avoin lähdekoodi ei takaa järjestelämän turvallisuutta, eikä aina edes nosta sen turvallisuutta. Suurissa ja monimutkaisissa järjestelmissä on aina aukkoja, ja avoin lähdekoodi helpottaa niiden löytämista, kun taas kaikkien aukkojen löytäminen ja paikkaaminen on avoimesta lähdekoodista huolimatta todella vaikeaa.
anger, 29.11.2002 12:23:35
Tarinan opetus: avoin lähdekoodi ei takaa järjestelämän turvallisuutta, eikä aina edes nosta sen turvallisuutta. Suurissa ja monimutkaisissa järjestelmissä on aina aukkoja, ja avoin lähdekoodi helpottaa niiden löytämista, kun taas kaikkien aukkojen löytäminen ja paikkaaminen on avoimesta lähdekoodista huolimatta todella vaikeaa.
Avoimessa koodissa sen sijaan on se lyömätön etu, että potentiaaliset bugien korjaajat eivät rajoitu siihen firmaan, joka ohjelmaa kehittää. Näin ollen myös kaikki ohjelmaa käyttävät tahot ovat potentiaalisia bugikorjaajia, jolloin ohjelman parissa työskentelevien määrä voi olla huimasti korkeampi kuin suljetun lähdekoodin projekteissa.
Tietenkinhän näissä asioissa voi vaan yleistää, eikä näillä keskusteluilla voida vetää mitään johtopäätöstä yksittäisten ohjelmien paremmuuksista. Kyllä niitä huonosti tehtyjä ohjelmia löytyy, oli niiden lähdekoodi julkaistu tai sitten ei.
heko, 30.11.2002 03:34:50
1) Kalle toimii yksin.
Suurin osa aukoista löydetään jossain ryhmässä. Kts. kohta 2.
2) Kallen löydökset pysyvät salassa.
Aukot tulevat yleensä joka tapauksessa julki ennemmin tai myöhemmin, tehtiin se sitten bugtraq:ssa tai ei. Tieto leviää "laillisia" tai "laittomia" teitä pitkin, jälkimmäisiin voi vaan olla "oikealla" asialla olevien vaikeampi päästä käsiksi.
3) Järjestelmät eivät kehity.
Joissain järjestelmissä käytetään enemmän aikaa bugien korjaukseen kuin uusiin ominaisuuksiin, esimerkkinä MS:n tietoturvakampanja.
Apachessa ja sendmailissa on varmasti vähemmän fataaleja bugeja per koodirivi nykyisin kuin viisi vuotta sitten.
4) Kalleja on yhtä monta kuin Paavoja.
Tästä mulla ei ole arvioita. Paavoja on luullakseni isoissa open source -projekteissa suhteessa osapuilleen sama määrä kuin firmoissa. Open source -porukoissa pieni aktiivinen porukka oikeasti auditoi koodia, ja muut käyttävät sitä tai kehittävät sitä eteenpäin tarkastelematta huolellisesti vanhaa. Firmoissa on yleensä samankaltainen työnjako.
5) Kallet ovat yhtä lahjakkaita kuin Paavot.
Suuri osa ns. kräkkereistä on melko taidottomia pösilöitä. He eivät välttämättä lue koodia samalla ammattitaidolla kuin Paavo.
6) Kaikki bugit ovat yhtä helppoja löytää.
Kauan markkinoilla olleista isoista open source -serveri-softista löytyy enenevissä määrin lähinnä vaikeasti löydettäviä integer overfloweja jossain harvinaisessa tilanteessa. Kaupallisista softista löydetään yhä rutiininomaisesti buffer overfloweja kättelyvaiheesta. Softissa on tässä tietysti eroja.
Yhden bugin löydettyään on muuten suhteellisen tavallista -- ja helppoa -- etsiä kaikki samankaltaiset bugit, joita on yleensä järjestelmissä useampia, joten prosessi ei ehkä ole aivan niin hidas kuin olettaisi. Jos on kyse open source -softasta, tieto bugityypistä ei ole "proprietary information", vaan jotain, jota kaikki muutkin voivat heti käyttää hyväkseen (tai pahakseen). Ajan myötä ainakin osa ihmisistä oppii varomaan tätäkin bugityyppiä.
7) Kaikki bugit aiheuttavat yhtä vakavan vaaran turvallisuudelle.
Jotkut bugit ovat ns. local exploitteja, jotkut mahdollistavat käyttäjän keksien lukemisen, jotkut mahdollistavat isoon palvelimeen murtautumisen.
8) Kaikki bugit ovat helposti hyödynnettävissä kaikissa olosuhteissa.
Jotkut bugit ovat hyödynnettävissä vain poikkeuksillisissa olosuhteissa, tai aikaavievillä operaatioilla. Kts. myös kohta 6.
9) Tietoturva on ongelma vain, jos joku kräkkeri hyödyntää sitä.
Sama bugi, jota kräkkeri voi hyödyntää, voi tulla vastaan myös, jos joku ihminen hyvässä uskossa antaa poikkeuksellisessa tilassa olevalle koneelle poikkeuksellisen syötteen. Tällä voi pahimmillaan olla fataaleja seurauksia. Koodin pitäisi olla virheetöntä useammastakin syystä. Jos tämä onkin vaikeaa, voi siihen kuitenkin vaikuttaa. Ei kukaan ole sanonut, että ihmisten tulee kirjoittaa joka päivä miljoonia riviä bugista koodia, jotta firmat voisivat kilpailla keskenään, sen sijaan, että keskityttäisiin ainakin joidenkin tärkeimpien olemassaolevien tuotteiden parantamiseen (ja otettaisiin niistä sitten ehkä isompi hintakin, such is life).
Ja ei, kysynnän ja tarjonnan lait eivät tässä juuri auta, jos ei kellään toimittajalla kilpailutilanteessa ole todellista mahdollisuutta keskittyä todella bugittoman softan tekemiseen, ja jos kuluttajat eivät ymmärrä, että toisinkin _voisi_ olla, jos osaisivat sitä vaatia. Monille teollisuustuotteille annetaan tiukkoja turvallisuusmääräyksiä, miksei sitten tietokone-ohjelmille?
Jos selvität, miksi nämä heikkoudet analogiassa eivät ole olennaisia, keksin mielelläni lisää.
- Heko
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Anonyymi kommentoija, 2.12.2002 08:57:17
Lopuksi haluan vielä todeta, että väittämäni ei koskenut yleisesti kaikkea mahdollista open source softaa. Se koski ainoastaan tilannetta, jossa on kyseessä hyvin suuri ja monimutkainen järjestelmä, jossa on paljon potentiaaliseen tietoturvariskiin johtavia bugeja.
feenix, 29.11.2002 13:44:34
Esimerkit on hyviä, mutta jos ne eivät ole realistisia, niissä ei ole järkeä.
Anonyymi kommentoija, 29.11.2002 14:29:18
Esimerkin ei ollut tarkoitus kuvata konkreettisia ihmisiä ja heidän toimiaan, vaan yleisesti tilannetta, jossa järjestelmään yritetään murtautua ja sitä yritetään puolustaa.
samleh, 29.11.2002 01:05:58
just joo.
Blob, 29.11.2002 01:08:29
rugueux, 29.11.2002 08:30:43
Kyllä nämä tutkimukset varmaan massoihin uppoavat, koska ei heitä asiat tarkemmin kiinnosta. Jos lehdessä sanotaan, että FreeBSD on turvaton, niin kyllä se on uskottava. Toivottavasti kansa on kuitenkin äänestänyt itselleen sellaisia päättäjiä, jotka näkevät asiat enemmän "neutraalissa" valossa.
Mihin on kadonnut perinteinen harakointi?
setae, 29.11.2002 09:10:21
"Onko yrityksesi tietoturva yhtä avoin kuin tämä kuori?
Microsoft
Me kutsumme sitä tietoturvaksi.
Sinä voit kutsua sitä mielenrauhaksi."
alareunassa sitten osoite johonkin ilmaiseen tietoturva-cd:hen
Anonyymi kommentoija, 29.11.2002 16:36:38
Otin lapun talteen ja teippasin seinälle. En ole koomisempaa lappua aikoihin nähnyt ;-)
Wagstaff, 29.11.2002 08:56:42
Bling, 29.11.2002 02:52:42
Sinänsä kyl hauskoja noi "raportit"
minkäköhän tukema toi MITRE on, ko tuolle kannalla on kääntynyt. Toisen raportin lopputulos on varsin arvattavissa, kun tukijoina on ms, sisko ja intelli.
"MITRE is a not-for-profit national resource that provides systems engineering, research and development, and information technology support to the government. It operates federally funded..."
Uskosko nyt tuota valtion rahoittamaa ei-voittoa-tavoittelevaa puljua jonka tarkoituksena on antaa tietoa hallinnolle ja jne, vai tuota kalliinsoftan rahoittamaa ei-voittoa-tavoittelevaa puljua jonka tarkoitus on pitää omat tuotteet myynnissä. Empä tiiä... Uskoisko kumpaakaan....
Just Bill, 29.11.2002 10:13:55
Ja tässä maailmassa voi luottaa vain STT:hen.
setae, 29.11.2002 08:00:00
Tieteen kuvalehdessä (uusin tai toiseksi uusin) oli ihan mielenkiintoinen juttu tilastoista, ja etenkin siitä, miten tilastoja voidaan käyttää tukemaan omaa kantaansa, sanoivat tilastot sitten käytännössä mitä tahansa. Vertauksia oli mm. OJ Simpsonin tapaukseen, erään eläinlajin yksilömäärään sekä pörssikursseihin.
Jutun luettuani tuntui kyllä vähän turvattomalta, kun ei oikein tiennyt enää mihin uskoa.
Eihän siinä nyt ole mitään uutta, että firmat lobbaavat näillä "puolueettomilla tutkimuksillaan" omia asioitaan eteenpäin. Tähän ralliin ei kuitenkaan tule lähteä mukaan (OSS-rintama) vääristel.. korjaan, kaunistelemalla tilastoja ja tuloksia. Open Sourcen suurin valttikortti on juuri avoimuus - myös tiedotuksen osalta. Mikäli rahan mahti (tm) ei peliä kokonaan onnistu viemään, uskon että tämä avoimuus muuttuu juuri siksi kortiksi, joka alkaa hyvinkin pian painamaan vaakakupissa, kun ihmisillä - joita päättäjätkin kuitenkin ovat, toivottavasti? ;) - alkaa nuo väitteiden ja faktojen ristiriidat ns. keittämään yli.
Vaikkakin on valitettavaa, että oli väite kuinka typerä tahansa, tarpeeksi toistettaessa siitä tuppaa muotoutumaan totuus..
Anonyymi kommentoija, 29.11.2002 11:56:54
"There are lies, damn lies, and statistics" (Benjamin Disraeli)
heko, 30.11.2002 03:55:36
Varmaa tietoa on tässä maailmassa aika vähän. Aika monessa asiassa edetään yrityksen ja erehdyksen kautta. Jos jokin vaikkapa talouspoliittinen toimenpide vaikuttaisi järjestään edistävän hyvinvointia, kannattaa keksiä sopiva selitysketju toimenpiteen ja hyvinvoinnin välille, ja katsoa, toimisiko se jatkossakin. Se, onko selitysketju sitten oikea, ei ehkä ole ihan niin olennaista, kuin se, saavutetaanko toimenpiteellä haluttu lopputulos.
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Bling, 29.11.2002 11:30:40
setae, 29.11.2002 12:20:47
Tilastoja tulkitsemalla tai tilastollista tietoa vain määrätyltä ajalta antamalla on hyvin helppo saada tilanne vaikuttamaan vallan toiselta. Näitäkin yleisempi ja "yleisesti tiedetyn totuuden" tuntuvat silti saavuttaneen prosentti- ja prosenttiyksikkö-käsitteiden sekoittaminen keskenään, ja varsinkin talousasioissa näitä käytetään häikäilemättömästi hyväksi. Onhan toki eriasia lisätä asiakasmäärää 10 prosenttiyksikköä kuin 10 prosenttia - mutta samaltahan ne tietämättömän korvaan kuulostavat.
Bling, 30.11.2002 15:07:51
kyris, 29.11.2002 22:58:45
Noita ylläolevia väittetä tuskin kukaan asiaa tunteva kieltää.
Kun tuosta nyt on päästy, niin avoimessa ohjelmistokoodissa on sellainen turva-aukko, että jos teen huippu softan avoimella koodilla, ja jokin valtio/firma ottaa sen käyttöön ihan hyvä niin, mutta entäpä jos olen upottanut koodiin ko. valtiota/firmaa vastaan tarkoitetun koodin pätkän?
Eli ohjelma on huippulaatua, ellei ko. valtio/firma käytä sitä. Ja jos käyttää teen tuhojani.
OK. Koska koodi on avointa, ainahan ko. valtio/firma tsekaa koodin ennen kuin asentaa sen...
Firmojen voin vielä uskoa tarkistavan avoimen lähdekoodin, mutta kuinka moni uskoo valtionhallinnon tsekkaavan koodit?
Uskoakseni tässä on avoimen koodin isoin turva-aukko. Avoin koodi mielletään automaattisesti turvalliseksi.
Eihän avoimuus itsessään tee koodia turvalliseksi, ellei lukaan aina välillä tarkista koodia...
Esimerkki, USA siirtyy Open Offieen (tai vastaavaan), ja tarkistaa,e ttei Al-Quaida ole tehnyt koodiin tuhojaan.
Ihan kiva juttu avoimelle ohjelmistokehitykselle. Mutta entä jos Al-Q:ta tahi vastaavaa järjerjestöä lähellä oleva koodaaja päättää lisätä koodiin USA:aa vahingoittavan koodin pätkän?
Ko. koodi ei siis vahingoita kuin koneita USA:n hallinnossa.
OK, totta kai ko. koodi huomataan kun avointa koodia ruvetaan tutkimaan, mutta kuka OIKEASTI uskoo,että valtiot oikeasti tutkivat jokaisen päivityksen koodin?
Ehkä teoreettinen skenario, mutta niin oli isku Twin Towersiinkin reilu vuosi sitten....
Eli, ei avoin koodi ole oletuksena turvallista, voi sitä käyttää pahoihinkin tarkoituksiin. Ja jos ottaa uhkat huomioon, on se turvallista.
Anonyymi kommentoija, 4.12.2002 11:00:02
Vaikeaa taasen on suunnitella ohjelmisto alusta alkaen turvalliseksi, ja ottaa turvallisuusnäkökohdat huomioon koko kehitysprosessin ajan. Normaalin vähänkään isomman softan kehitystiimissä työskentelee kymmeniä ellei satoja ihmisiä, ja joka ainoan suunnittelijan ja ohjelmoijan pitäisi koko ajan pitää mielessä mihin kaikkeen tehdyt muutokset voivat vaikuttaa.
Windows-alustalla lisäongelmana on myös se että koko alusta on täynnä ongelmia ja komplikaatioita, koska sen alkuperäisiin suunniteluparametreihin ei tosiaankaan kuulunut turvallisuus. Lisäksi sen parissa on työskennellyt kymmeniätuhansia ihmisiä, ja jokainen kerta kun kukin näistä on tehnyt pikkufiban tai vain mennyt siitä missä aita on matalin lisää alustan epävarmuutta.
Paljon järkevämpää terroristien on ujuttaa koulutettu henkilö vaikkapa Microsoftin palkkalistoille ja saada sitä kautta takaovi kaikkiin windowseihin.
Tämä tietenkin voi kestää useita vuosia, mutta ottaen huomioon kuinka pitkäjänteisesti terroristijärjestöt kouluttavat jäseniään lapsesta asti en epäile että
Avoimen koodin projektiin ko. takaovi on nopeampi ujuttaa (usein riittää vain saada oikeus tehdä CVS-committeja, ja sen saa suht helposti) mutta koodia lukee&testaa satoja/tuhansia ihmisiä ja riittää että yksi ainoa tyyppi löytää ongelman ja ilmoittaa siitä kehittäjien postituslistalle. Tietenkin suljettua järjestelmää julkaisevan yrityksen softia tarkastaa myös joukko ihmisiä, mutta heidän joukkonsa on paljon pienempi ja tunnetumpi, ja siten helpompi vakuuttaa katsomaan toiseen suuntaan.
Ja sitäpaitsi, missään vakavasti otettavassa organisaatiossa ei todellakaan oteta käyttöön mitään patcheja tai päivityksiä ennen kuin ne on todettu sopiviksi organisaation itsensä puolesta. Jokaisen kriittisen sovelluksen päivityksen ajaminen sisään organisaatioon on niin suuri työ että sitä ei ryhdytä tekemään "tuosta vain". Yleisesti päivityksiä ei oteta käyttöön ollenkaan, ellei niille ole jokin selkeä tarve.
Siis kyllä, oletan että kriittisten ohjelmistojen kaikki päivitykset tarkastetaan kooditasolla.
heko, 30.11.2002 03:43:52
Ei tämä ole mikään mahdoton skenaario, kun katselee hiljattain ilmenneitä troijalaisia. autoconf yms. hirvitykset ovat tässä asiassa helvetti, koska päivitys autoconfiin aiheuttaa tuhansien rivien muutoksen configure- yms. skripteihin, joista softan "kuluttajan" on vaikea etsiä olennaisia ja epäolennaisia muutoksia.
Eri asia on sitten se, että voihan terroristi tai sellaiseksi myöhemmin rupeava pestautua myös yrityksen leipiin. Meillä on vähän tietoa siitä, millaisia troijalaisia on tungettu yritysten levittämiin executableihin, koska harvalla kuluttajalla on niistä esim. mdsummeja eri palvelimella ja harvalla kuluttajalla on mitään _mahdollisuuttakaan_ verrata niitä "alkuperäiseen".
Open source -projekteissa on yleensä tietty ydinporukka, jolla on esim. cvs- tai vastaavat oikeudet lähdekoodiin, ja muut lähettävät muutosehdotukset heille. Esim. linux-kernelin osalta voidaan sanoa, että kourallinen ihmisiä on vähintään silmämääräisesti lukenut läpi koodin, ettei siellä ihan mitään "seineew era sreenigne epacsteN"-juttuja ole.
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Bling, 30.11.2002 14:49:58