Slovenský rozhlas – zraniteľná webová stránka

Dnes na spravodajskom portáli SME.sk uverejnili správu o novej stránke Slovenského rozhlasu (SRo) za 138 tisíc eur. Tak som sa na tú stránku trochu bližšie pozrel a narazil som na otvorenú zraniteľnosť.

Ide o úplne typický prípad nezvládnutej práce web developera (alebo vrcholnej nespôsobilosti)  – vstupným miestom útoku je vyhľadávacie políčko a stránka s výsledkami vyhľadávania, ktoré nesprávne (alebo nedostatočne) ošetrujú vstupné dáta. Cross-site scripting (XSS) ako vyšitý.

Vyhľadávaný text síce prechádza akým takým filtrom, ale ten je silne nedostatočný a pochybujem, že je tam za účelom ošetrenia útokov typu XSS. Zjednodušene povedané, XSS je forma útoku, pomocou ktorej je možné modifikovať napadnutú stránku a spúšťať na nej napríklad ľubovoľný javascript kód. V prípade SRo ide o úplne typický prípad, v ktorom stránka s výsledkami vyhľadávania zobrazuje nesanitizovaný vyhľadávaný text. Ak potom do vyhľadávacienho políčka vložím napríklad HTML kód alebo javascript, tento sa zakomponuje do “výsledkov vyhľadávania” a webový prehliadač ho zobrazí/vykoná.

Tento druh útokov je veľmi dobre známy a ochrana proti nemu je pomerne jednoduchá – stačí len ošetriť vstupné dáta vyhľadávania, napríklad pomocou HTML escapovania. V tom prípade sa síce vyhľadávaný text zobrazí na stránke výsledkov, ale nie v aktívnej podobe – bude to len obyčajný text tak, ako ste ho napísali do vyhľadávacieho políčka. Problém je vyriešený.

Ale ľudia, ktorí túto stránku vytvárali sú buď nezodpovední alebo nekompetentní.  Neviem, čo z toho je horšie. Opraviť takúto chybu trvá pár minút. Nehovoriac o tom, že prefesionálny web dizajnér by mal dbať aj na bezpečnosť vytváraného webu. Existencia tejto zraniteľnosti je sama o sebe znakom, že pri výrobe webu sa dôraz kládol na grafickú stránku a nie na funkčnosť alebo kvalitu návrhu. Za 138 tisíc eur (viac ako 4 milióny korún) by som čakal oveľa kvalitnejšiu prácu. Študenti informatiky z ktorejkoľvek vysokej školy by pravdepodobne odviedli kvalitejšiu prácu.

V závere prikladám ešte tri screenshoty, ktoré ilustrujú diskutovanú zraniteľnosť – aby ste si mohli urobiť obrázok o tom, ako XSS proti stránke SRo vyzerá v praxi.

EDIT (5.2.2011 21:35)

Približne o 20:45 mi prišila odpoveď od vedúceho IT oddelenia SRo, v ktorom mi poďakoval za upozornenie. O niekoľko minút už bolo vidieť prvú reakciu zo strany webmasterov – došlo k zablokovaniu funkcie vyhľadávania na celom webe.

O ďalších pár minút potom došlo k definitívnej oprave diskutovanej zraniteľnosti – text zadaný do vyhľadávacieho políčka prechádza pred zobrazením escapovaním (aj keď nejde o HTML escape ani URL escape – na prvý pohľad mi to trochu pripomína SQL alebo regex escape).

Keď už odflákli pôvodný návrh, aspoň si pohli s opravou.

 

Reklamy

8 thoughts on “Slovenský rozhlas – zraniteľná webová stránka

  1. Spätné upozornenie: Slovenská pošta – zraniteľná webová stránka « Postrehy z Vrakune

  2. dinky

    Toto sa môže stať len našim slovenským lenivým a/alebo neschopným zamestnancom 😀 ale aspoň si to vďaka tebe opravili a nekašlali na to 🙂

  3. em

    Nemyslis ze XSS je trosku o niecom inom, ako len o hrani sa z JS?
    Pokial tam nepridas prispevok do fora z JS kodom alebo nespravis SQL inject tak si nic nezranil…

    (nemam s projektom slovakriadio.sk nic spolocne)

    1. Mar3ek Post author

      Asi došlo k nedorozumeniu – ja som nechcel daný web seriózne zraniť, len som poukázal na otvorenú možnosť. XSS je podľa mňa dosť vážna bezpečnostná medzera a aj keď v prípade SRo možno nie je až taká kritická (stránka nemá užívateľské účty; je nepravdepodobné, že by došlo k nejakému vážnejšiemu incidentu), je určite lepšie, keď sa táto medzera zacelí čo najskôr – robí to lepší dojem.
      Tak keď už som zistil, že zraniteľnosť existuje, prečo by som túto skutočnosť neohlásil príslušným ľuďom?

      1. eternal_noob

        dojem nedojem… toto sice je XSS, ale neskodne, vpodstate je to v tomto pripade len kozmeticka zalezitost… tak netreba to prehanat a zvelicovat. odhliadnuc od tohto pripadu ,,predrazeneho” webu, aky vyznam ma investovat do riesenia takehoto bezpecnostneho problemu ktory vlastne ani bezpecnostny problem nie je ? naozaj nemam rad taketo prehnane clanky, lebo ked si to precita clovek co sa tomu nerozumie tak nadobudne dojem ze sa jedna o velmi nebezpecnu chybu pritom realne neexistuje ani len teoreticka sanca jej zneuzitia.

        1. Mar3ek Post author

          Investovať? Tých pár minút času človeka, ktorý je za to platený?
          A v článku som ani raz nepovedal, že ide o reálne zneužiteľnú chybu, ktorá by mohla užívateľov ohroziť.
          Tá medzera tam bola a to je fakt – o ničom inom tento článok nie je.

  4. maco

    ja by som sa tu tymi screenshotmi moc nevytahoval – hlavne to autorske pravo moze byt pre teba zaujimave… gratulujem! zozen si pravnika a zlom vaz! 😉

    Za nelegálnu „návštevu“ informačného systému hrozí hackerovi nepodmienečný trest odňatia slobody od šiestich mesiacov do troch rokov. Pokiaľ ukradne alebo pozmení informácie v ňom obsiahnuté alebo je členom organizovanej skupiny, sadzba sa môže zvýšiť až na päť rokov.

    Hacker riskuje tiež porušenie autorského zákona – ak zmení dizajn webovej stránky, na ktorú má jej tvorca autorské právo. Ak sa poškodená strana obráti na občiansky súd, útočníkovi môže postihnúť finančná pokuta a trest prepadnutia veci – počítača, ktorý na nelegálny prienik použil.

    Ak sa však postupuje podľa trestného zákona, hackerovi hrozí až niekoľkoročné väzenie.

    Pri napadnutí a zmene webovej stránky môže prísť aj k porušeniu ochrannej známky prevádzkovateľa, ktorú takisto chráni zákon. Sankciu stanovuje súd podľa povahy konkrétneho prípadu. Hacker tiež môže porušiť bankové tajomstvo, čo môže aplikáciou trestného zákona zvýšiť jeho trestnú sadzbu.

    1. Mar3ek Post author

      Právneho postihu sa veľmi neobávam. Daná vec sa ma síce týka, ale nedošlo k nijakému trvalému poškodeniu – stránka bola zmenená len v mojom webovom prehliadači pre demonštratívne účely.
      A chybu som okamžite nahlásil zodpovedným osobám, snáď nebudú žalovať toho, kto ich na to pri všetkej počestnosti upozornil 🙂
      Koniec koncov, slovom “hacker” by som sa určite neoznačil ani vo sne, k tomu mám naozaj veľmi ďaleko 😀

Pridaj komentár

Zadajte svoje údaje, alebo kliknite na ikonu pre prihlásenie:

WordPress.com Logo

Na komentovanie používate váš WordPress.com účet. Odhlásiť sa / Zmeniť )

Twitter picture

Na komentovanie používate váš Twitter účet. Odhlásiť sa / Zmeniť )

Facebook photo

Na komentovanie používate váš Facebook účet. Odhlásiť sa / Zmeniť )

Google+ photo

Na komentovanie používate váš Google+ účet. Odhlásiť sa / Zmeniť )

Connecting to %s