Saturday night fever
Lauantai-ilta sai monen nettiharrastajan kotona dramaattisia piirteitä, kun lista suomalaisten verkkopalvelujen kirjautumistiedoista alkoi levitä pitkin keskustelufoorumeita ja IRC-kanavia. Listalla on yli 78000 käyttäjätunnusta. Mahdollisesti ruotsalaista alkuperää olevan listan salasanoista osa on selväkielisiä, osa MD5- tai SHA-tiivisteitä.
ZIP-paketissa on saatteena mahtipontinen, suomenkielinen julistus, jossa kerrotaan listan olevan kahden ruotsalaiskräkkerin aikaansaannosta. Mukana on kuvaan sopivaa teiniangstia ja uhoamista, unohtamatta "wannabe whitehateille" suunnattua haistattelua.
Pikaisen katsastuksen perusteella näyttää siltä, että yhteinen nimittäjä listan käyttäjätunnuksille on PHP:llä toteutetut foorumisoftat; ainakin parin phpBB-saitin käyttäjätunnuksia listasta löytyy. Ruotsalaiskaksikko (väitetty) lienee käyttänyt jotakin tunnettua haavoittuvuutta ja onkinut käyttäjälistat muutamasta paikkaamatta jääneestä suomalaisfoorumista.
Itse sain asiasta tiedon, kun paniikki alkoi levitä oman verkkopalvelumme käyttäjien keskuudessa. Moni käyttää samaa salasanaa useammassa verkkopalvelussa, mistä syystä muutama Kiekko.tk-tunnuskin joutui vääriin käsiin. Eräs kräkätyistä palveluista sattuu olemaan nimittäin peliimme läheisesti liittyvä (peliharrastajien itsensä ylläpitämä) yhteisöpalvelu. Samassa yhteydessä kävi ilmi, että osa listan tiedoista on ilmeisesti vuosiakin vanhoja.
Epäilykset jonkinlaisen listan olemassa olosta heräsivät meillä jo viime kuun puolella parin enteellisen insidentin takia. Lista näyttää olleen Suomessa rajoitetummassa kierrossa jo jonkin aikaa ennen tänäistä julkistumistaan.
Yllättävää ei ole niinkään itse tapaus vaan se, miten harvoin vastaavaa tapahtuu. Kyse taitaa olla siitä, ettei kukaan ole vain viitsinyt kerätä ja julkaista käyttäjätunnuslistoja reikäisiltä PHP-foorumeilta, joita epäilemättä löytyy maasta vielä pilvin pimein. Hommaan ei tarvita perustaitoja kummempaa, koska näihin PHP-virityksiin löytyy julkisia exploittikoodeja enemmän kuin keskiverto "script kid" ehtii päivässä copy-pasteta.
Miksi tilanne on PHP-sovellusten osalta näin onneton, on ehkä toisen kirjoituksen aihe.


Kommentit (9)
Vai että sellasta Ruottin maassa. Olkoon nyt sitten ylpeitä ittestään taas kerran, tosin haiskahtaa naamanväriinsä turhautuneiden teininuorten hälynpölyltä taas kerran.
Murtautumiset on tehty pääasiassa ns. "sql injection"- tapaa käyttäen, eli etsimällä huonosti validoituja inputkenttiä joiden kautta sitten on saatu muotoiltua omia queryjä palvelimelle.
Mitään tekemistä tällä ei kielen kanssa ole. Queryt saa muotoiltua metsään kielestä huolimatta ellei dataa validoida oikein. Mitään avaruustekniikkaa näiden estäminen ei ole, vain kädettömien koodareiden.
Oi, kun ihmiset oppisivat käyttämään niitä prepared queryjä...
Tuntuu siltä, että moni webdesign-taustainen verkkopalvelujen rakentelija opettelee PHP:n käytännössä ensimmäisenä kielenään, eivätkä tietoturvakysymykset välttämättä juolahda kaikille mieleen.
PHP on osaavissa käsissä mainio työkalu, mutta aloittelijalle se antaa niin sanotusti riittävästi köyttä hirttäytymiseen. Muutaman vuoden työ webbisovellusten kehittäjänä opetti, että vaikka kehityssysteemissä olisi keinot vaikkapa tietokannan turvalliseen käpistelyyn, koodari ei aina vain muista, viitsi tai tajua käyttää niitä - varsinkaan, jos riskialttiimpi tapa on helpompi ja nopeampi tehdä. Kielen tietokantarajapinnan voisi alusta asti suunnitella tämä seikka huomioon ottaen.
Esim. itse kehittämässämme CWS-webbisovellusjärjestelmässä rajapinnat on toteutettu niin, ettei koodaajan tarvitse ajatella SQL injection tai cross site scripting -ongelmia. Näitä haavoittuvuuksia ei CWS:llä toteutettuihin verkkopalveluihin saa väkisinkään, ellei oikein kovasti yritä. Monissa PHP- ja muissa webbisovelluksissa ne tuntuvat olevan suurimpia murheenkryynejä, vuodesta toiseen.
Mainittakoon, että CWS ei ole (vielä?) avointa lähdekoodia, ja Kiekko.tk on toistaiseksi ainoa isompi projekti, jossa sitä on käytetty. Systeemin suunnittelussa tietoturva on alusta asti ollut keskeisimpiä näkökohtia, mitä ei välttämättä voi sanoa PHP:stä.
Teepä miehen työ ja laita tähän jatkoksi linkki noihin perusteisiin. Voisi jokainen phpiston syämmessään tunteva käyrä vilasemassa...
Kuitenkin joskus tulee vastaan sellaisia websivustoja jotka oikein kerjäävät joutua tälläisen työkaluksi pelkästään laiminlyömällä tietoturvan ja ylläpidon.
Itse kyllä viisastuin tapahtuneesta sen verran että kirjoitan varmaan tulevan sivustoni tietoturvaa uusiksi, ja "hässin ja suolaan" tunnukset sen verran hyvin että niitä ei ensimmäinen kräkkeri avaa millään sql injectiolla tai vastaavalla tempulla.
Tosin lienee niin että nuo hyvin ylläpidetyt softat ovat olleet turvassa tältä.
Valitettavaa vain on joskus hyvinkin LUOKATON taito webmasterilla... näköjään lainkin pohjalta tietoturva on otettava vakavasti.
Tosiaan oma nickini tuhottiin tossa jutussa eikä oo jouko ainakaan vielä 'kerennyt' mukamas sitä palauttamaan :)
Odotellessa..
Empä nyt ihan noinkaan sanoisi... Tällaisia hyökkäyksiä vaan tulee, eikä niitä vastaan voi suojautua muuten, kuin vaihtamalla aktiivisesti salasanoja ja pitämällä kunnollisia salasanoja, eikä lemmikkien tms nimiä...
Näitä hyökkäyksiä ei "vain tule", ne mahdollistuvat sivustojen tekijöiden ohjelmointivirheistä. Kannattaa muistaa, että nämäkin tunkeutujat yrittivät varmasti paljon useammalle sivustolle kuin mistä salasanatiedot saatiin. Jos esim. tunkeutumisyritykset Kiekko.tk:n tietokantaan olisivat onnistuneet, listassa olisi semmoiset 50 000 nimeä lisää.