=/= Analiza sigurnosti pogodak.co.yu =/= _ 2007-06-12 21:11:39 _ Analiza sigurnosti web pretrazivaca "pogodak.co.yu" Napomena: Autor ovog teksta nije odgovoran za bilo kakvu stetu nastalu citanjem ili koriscenjem materijala iznetog u ovom tekstu u bilo kakve ilegalne ili zlonamerne svrhe. Tekst je napisan u cilju edukacije citalaca i podizanja svesti o sigurnosti na mrezi. O pretrazivacu: ... Pogodak! je lokalni pretraživac posebno prilagoden Internet prostoru Srbije i Crne Gore i prvenstveno namenjen domacim korisnicima. Cilj mu je da omoguci kvalitetnije pretraživanje domacih sadržaja nego pretraživaci koji se sada koriste. Lakse i brže pronalaženje sadržaja podstice domace autore da ove sadržaje i stvaraju. Time se omogucava da njihovi projekti na Internetu ožive i ostvare svoje ciljeve, sto stimulise razvoj kvalitetnih sadržaja na domacem Internetu i podiže nivo kvaliteta usluga koje su na njemu dostupne. Pogodak! ima konkurenciju. To su globalni svetski pretraživaci (pre svih Google). Zbog lokalne orijentacije, boljeg poznavanja pravila srpskog jezika i problema vezanih za slicnost sa jezicima susednih država, Pogodak! daje bolje rezultate tokom lokalne pretrage u odnosu na konkurenciju. ... (preuzeto sa http://www.pogodak.co.yu/corpo/aboutus.jsp) Pronadjeni propusti: 1. XSS (cross site scripting): 1a: Skript search.jsp u sebi sadrzi deo koda koji ispisuje, u html kod stranice, podatke vezane za trenutni upit kao html komentar. Ovo je veliki sigurnosni propust zato sto napadac moze proslediti parametru q (parametar koji uzima vrednost polja za pretrazivanje), parametru contenttype (parametar koji odredjuje tip dokumenta) i/ili bilo kojem drugom parametru koji se koristi u pretrazi, html kod koji sluzi da zavrsi komentar a nakon toga html ili javascript kod i samim tim izvrsi isti. -- Primer dela koda koji ispisuje upit kao komentar: Url: http://www.pogodak.co.yu/search.jsp?q=test -- Primer dela koda koji ispisuje upit kao komentar sa dodavanjem koda za kraj html komentara: Url: http://www.pogodak.co.yu/search.jsp?q=-->test test) and !resultsfilter --> 1b: Opcija dodavanja email adresa je takodje ranjiva na ovaj tip napada. Adresa ove opcije je: http://www.pogodak.co.yu/service.jsp?tab=emails&action=add. Ranjiva polja su: email, ime, priimek, organizacija, ulica, hisnaStevilka, postnaStevilka, posta, omreznaSkupina, telefon, fax, www, icq. 2. Redirections (redirekcije): Ova vrsta propusta se manifestuje u skriptama koje omogucavaju redirekciju korisnika ka eksternim sajtovima direktim pozivanjem odredjenog URL-a. Propust se javlja usled lose sanitizacije koda ili kao opcija za redirektovanje korisnika. Ovaj tip propusta je opasan zbog mogucnosti redirekcije korisnika na "phishing" lokacije. Ranjiv skript se nalazi na adresi: "/redirect/multimedia.jsp". Eksploatacija je moguca prosledjivanjem proizvoljne lokacije parametru redirect. Primer: http://www.pogodak.co.yu/redirect/multimedia.jsp?redirect=http://google.com Zakljucak: Pronadjeni propusti su jedni od ucestalih tipova propusta u svim web aplikacijama i pronadjeni su koriscenjem veoma jednostavnih metoda. Pronadjeni su takodje i drugi (DoS, SQL injection, XSS) potencijalni propusti ali bez prethodne detaljnije analize (za koju je potrebno odobrenje i zahtev samog vlasnika) nece biti objavljeni. Pogodak je kontaktiran 25. maja 2007 godine. Ivan Markovic, 12. 6. 2007