Sql-pistos nousee kohti haittaohjelmien kärkeä

F-Securen blogissa osoitetaan tällä kuvakaappauksella, että Google-haku tuottaa yli puoli miljoonaa muunneltua sivua.
25.4.2008 16:25 Suomessakin joitakin sivustoja saastuttanut Nihaorr1.com-hyökkäys on kiertänyt maailmalla. Ohjelma käyttää verkkopalvelujen tietokantoja tartuttamispesäkkeinä.
Nihaorr1.com-hyökkäys on kaksivaiheinen. Ensimmäisessä vaiheessa pyritään saastuttamaan julkinen verkkosivu haittakoodilla sql-pistos-tekniikalla (sql injection), sanoo tietoturvatalo Nixun asiantuntija Pekka Sillanpää.
Tämäntyyppiset injektiohyökkäykset ovat toisella sijalla Owasp Top 10:n listassa tyypillisimmistä web-sovellusten haavoittuvuuksista.
Toisessa vaiheessa käyttäjät, jotka selaavat saastunutta sivustoa, joutuvat hyökkäyssarjan kohteeksi, joilla pyritään muun muassa ottamaan haltuun käyttäjän kone.
– Mikäli käyttäjän koneen päivitykset eivät ole ajan tasalla, näillä hyökkäyksillä on suuri mahdollisuus onnistua, Sillanpää sanoo.
Vastaavat hyökkäykset ovat yleistyneet maailmalla. F-Secure kertoi eilen tietoturvablogissaan, että tähän mennessä on tavattu kolme domainia, joista hyökkäystä on levitetty: nmidahena.com, aspder.com ja nihaorr1.com.
F-Securen mukaan tämän tyyppisten hyökkäysten leviäminen johtuu siitä, että yhä useammat nettipalvelut käyttävät tietokantapohjaisia järjestelmiä nopeuttaakseen toimintaa. Monet niistä sallivat käyttäjien ladata sisältöä tietokantoihinsa.
– Ellei dataa sanitoida ennen kuin se tallennetaan, on mahdotonta kontrolloida mitä palvelu tarjoaa sivuston käyttäjille, F-Securen blogissa kirjoitetaan.
- Digitodayn tuoreimmat uutiset.
- 19.3. Microsoft kiihdytti kilpailevan selaimen latauksia
- 19.3. Microsoft rukkaa Windows 7:ää maltilla
- 19.3. Netin kuumimman osoitteen huutokauppa peruuntui
- 19.3. Nokia ei ole enää luotetuin brändi kaikkialla Euroopassa
- 19.3. Google: Viacom väärensi videoita näyttämään varastetuilta
- 19.3. HTC tyrmää Applen patenttisyytökset
- 19.3. Samsung tähtää kaksinumeroiseen kasvuun
- 19.3. Pimennä ikkunat, jos haluat iPad-kehittäjäksi
- 19.3. Pelastakaa Lasten nettityölle heltisi 45 000 euroa
- 19.3. Venäläinen rickroll leviää maailmalla
- 19.3. Yle valittaa Digita-päätöksestä
- 19.3. Suomi ja Venäjä panevat kuriin itärajan puheluita
- 19.3. Facebook ja mokkula paljastivat mafian tappajan
- 19.3. Palmin näkymät eivät vakuuttaneet
- 19.3. Vankilan korvaava seurantapanta lähestyy
- 19.3. Kärkipelit vaihtuvat tiuhaa tahtia
- 18.3. Nokia, Apple ja Google oikeudessa samalla puolella
- 18.3. Osakesijoittajan menestyksen salaisuus: vakoiluohjelma
- 18.3. Roskaposti jyskyttää täydellä höyryllä
- 18.3. Krakkeri sai sata autoa tööttäämään
- Uusimmat
- 48h luetuimmat kaikista uutisista.
- 18.3. Krakkeri sai sata autoa tööttäämään
- 18.3. Osakesijoittajan menestyksen salaisuus: vakoiluohjelma
- 19.3. Pimennä ikkunat, jos haluat iPad-kehittäjäksi
- 18.3. Nokia palkkasi menestyneitä uranaisia E72-mannekiineiksi
- 19.3. Venäläinen rickroll leviää maailmalla
- 19.3. Microsoft rukkaa Windows 7:ää maltilla
- 19.3. Microsoft kiihdytti kilpailevan selaimen latauksia
- 18.3. Nokia, Apple ja Google oikeudessa samalla puolella
- 18.3. Markkinavalvoja viittasi kintaalla Jungnerin laskelmille
- 18.3. Salasanoja varastetaan Facebookin nimissä
- Luetuimmat
- 48h suositelluimmat kaikista uutisista.
- 18.3. Krakkeri sai sata autoa tööttäämään
- 18.3. Osakesijoittajan menestyksen salaisuus: vakoiluohjelma
- Suositelluimmat
- 48h kommentoiduimmat kaikista uutisista.
- 19.3. Pimennä ikkunat, jos haluat iPad-kehittäjäksi
- 18.3. Krakkeri sai sata autoa tööttäämään
- 18.3. Nokia palkkasi menestyneitä uranaisia E72-mannekiineiksi
- 19.3. Microsoft rukkaa Windows 7:ää maltilla
- 18.3. Markkinavalvoja viittasi kintaalla Jungnerin laskelmille
- 19.3. Microsoft kiihdytti kilpailevan selaimen latauksia
- 18.3. Nokia, Apple ja Google oikeudessa samalla puolella
- 19.3. Yle valittaa Digita-päätöksestä
- 19.3. Nokia ei ole enää luotetuin brändi kaikkialla Euroopassa
- 19.3. HTC tyrmää Applen patenttisyytökset
- Kommentoiduimmat
Uutisviikko
Mitä viikolla on tapahtunut, mikä puhuttanut eniten? Koko viikon uutiset.
Kevyt ja nopea
Oletko jo tutustunut m.digitoday.fi-mobiilisivustoon?
Uusimmat uutiset
- Osakesijoittajan menestyksen salaisuus: vakoiluohjelma 16:26
- Roskaposti jyskyttää täydellä höyryllä 15:26
- Krakkeri sai sata autoa tööttäämään 13:35
- Salasanoja varastetaan Facebookin nimissä 12:11
- Verkkokortti altistaa HP:n tietokoneita pahanteolle 10:08
- Luottaisitko sinä näihin sähköposteihin? 15:27
- Venezuelan presidentti tulistui vapaalle internetille 13:14
- Twitter seuloo vaaralliset verkko-osoitteet 11:27
- Lisää









Kommentit (12)
Onko web-palvelujen koodaajat oikeasti niin laiskoja, etteivät jaksa POST/GET:ssä tulevia arvoja tarkastaa vaikka edes sillä valmiilla escape-funktiolla, jollainen löytyy jokaisesta web-kielestä?
Ei sinänsä mitään valmiita sql-rajapintoja vastaan, mutta eivät nekään mikään tietoturvan tae ole. Yhden koodaajan laiskuus saattaa rajapinnoissakin lähteä kiertämään ja kohta kaikista samaa rajapintaa käyttävistä softista löytyy reikä.
Huono neuvo, arvaas johtaako tämmöinen käytäntö siihen että escapetetaan integeritkin ja ajatellaan että sitten ollaan turvassa? Vaan hupsista, escape ei auta kun oltiin jo valmiiksi niiden hipsujen ulkopuolella! Castaisivat edes intiksi sen niin että siellä ei voi olla muuta kuin numeroita, joka tuntuu olevan aika yleinen tapa...
Toinen hauskuushan tulee sitten siinä että sql:ää varten pitää sanitoida yhdellä tapaa ja html:ää varten erilailla. Osa koodaajista menee vipuun ja escapettaa toisellatapaa molempiin tarkoituksiin, jolloin tuloksena on joko XSS-reikä tai SQL-injektio.
Tuntuisi olevan enemmän kyse huolimattomuudesta ja ongelmista koodauskäytännössä kuin laiskuudesta. Funktiota toteutettaessa saatetaan ajatella että data tulee ohjelman sisältä ja sisältää vain validimuotoista dataa, toisessa paikkaa funktiota sitten käytetään ja ollaan unohdettu missä se data piti validoida.
Suuri osa koodaajista ei myöskään miellä bugiksi sitä että funktio ei tarkista onko sille annettu parametrit oikein, vaan ajatellaan että jos siinä on virhe niin bugi onkin koodissa jossa funktiota kutsutaan. Tuloksena on soppa jossa tietoturva-aukolta olisi voitu välttyä, jos vain koodin sisäiset vastuut olisi määritetty paremmin.
PS. Sampo pankin XSS-aukot johtuivat osaltaan tuommoisesta koodin sisäisestä vastuuvirheestä. Muuttujia käytettäessä niitä ei validoitu, eikä taideta validoida vieläkään. Sensijaan lisättiin satunnaisia heikkoja tarkistuksia sinne missä muuttujat otetaan osoiteriviltä talteen, ja itse bugit ovat vieläkin siellä.
Umm... jos ne on inttejä niin eihän niissä ole kuin numeroita, joten kastaaminen on turhaa. Jos taas on kyse siitä että koodaaja käyttää jotain typerää tyypitöntä/löyhästi tyypitettyä kieltä, sitten ei paljoa auta intittelytkään.
Onneksi voi myös jättää höPöHöPöt omaan arvoonsa ja käyttää järkeviä systeemejä joissa on tyyppiturvallisuus, tietokantarajapinnat pitävät huolen ettei tule typeryyksiä niin helposti ja vielä käännetään etukäteen niin huolimattomuusmokiakin katoaa.
Surku ettei useampi sitä tajua.