Vzpostavljanje prikritih omrežij s pomočjo XSS ranljivosti in JavaScripta

Matej Kovačič

22. mar 2007 ob 10:40:39

O XSS ranljivostih s(m)o na Slo-Techu že pisali. A kljub temu, da gre za tim. ranljivost na strani spletnega odjemalca, so posledice zlorabe lahko precej drastične.

Raziskovalec Billy Hoffman, znan tudi pod imenom Acidus, je namreč januarja lani na konferenci Black Hat Federal 2006 predstavil prispevek z naslovom Analysis of Web Application Worms and Viruses. V prispevku je predstavil možnosti napadov s tim. spletnimi virusi, ki izkoriščajo XSS ranljivosti ter AJAX tehnologijo.

V soboto pa bo imel Hoffman predavanje na to temo tudi na Smoocon konferenci v Washingtonu.

Na konferenci bo predstavil možnosti vzpostavitve prikritih omrežij (tim. botnetov) s pomočjo izkoriščanja XSS ranljivosti in JavaScripta. Predstavil bo tudi konkreten primer, aplikacijo Jikto, ki omogoča samodejno vzpostavitev prikritega omrežja.

Orodje Jitko se lahko preko okužene spletne strani namesti na uporabnikov računalnik. Po namestitvi lahko orodje izvaja samodejno skeniranje, oz. iskanje varnostnih ranljivosti na spletnih straneh (npr. XSS ranljivosti in SQL vrivanje), rezultate pa sporoča poljubnemu strežniku. Hkrati pa se lahko tudi poveže v prikrito omrežje in čaka na navodila upravljalca omrežja. Upravljalec omrežja lahko vidi kdaj je računalnik vključen in kdaj je neaktiven ter mu pošilja ukaze, ki se izvedejo lokalno.

Zadeva je še posebej nevarna zato, ker je praktično nemogoče ločiti zlonamerno JavaScript kodo od dobre. Ker se JavaScript v Web 2.0 aplikacijah pogosto spreminja sama, je tudi nemogoče preverjati integriteto JavaScripta z digitalnimi prstnimi odtisi, torej s tehniko, ki jo antivirusna podjetja uporabljajo za zaznavanje virusov. Hoffman zato napoveduje eksplozijo tim. spletnih virusov ter svari, da tudi majhna varnostna ranljivost v spletni aplikaciji lahko predstavlja resno grožnjo.

Bomo pričeli v spletnih brskalnikih izklapljati JavaScript?