» »

JavaScript ugrabljanje

JavaScript ugrabljanje

Schneier.com - Kot kaže se nam v bližnji prihodnosti obeta precejšnje število varnostnih težav povezanih z JavaScriptom. V članku JavaScript Hijacking, objavljenem na spletni strani podjetja Fortify Software so namreč trije raziskovalci opisali nov način napada na Ajax spletne aplikacije.

Napad namreč omogoča napadalcu, da prestreže podatke, ki se prenašajo s pomočjo JavaScripta. Prestrezanje je mogoče izvesti s pomočjo tim. JavaScript ugrabljanja (JavaScript hijacking), ki je mogoče zaradi različnih XSS ranljivosti.

Prav tako v našem forumu že poročajo, da se je na internetu znašla koda aplikacije Jitko, ki omogoča samodejno vzpostavitev prikritega omrežja s pomočjo izkoriščanja XSS ranljivosti in JavaScripta. Aplikacijo je na konferenci Smoocon prejšnji mesec predstavil Billy Hoffman, eden izdmed udeležencev konference pa si je zapomnil URL omenjene kode in si kodo presnel ter jo objavil na internetu. Kodo je sicer na zahtevo Hoffmana že umaknil, kljub temu pa jo je mogoče dobiti v podzemlju. Po nekaterih podatkih so na voljo že tudi zlobno modificirane različice, zato previdnost ni odveč.

20 komentarjev

BigWhale ::

In ljudje mi niso verjeli, ko sem jim dejal, da je JavaScript BAD! In rekli so mi, da sem cuden, ko sem dejal, da bi morali JavaScript ukiniti. Se bolj so me imeli za cudnega, ko sem rekel, da imam JavaScript v vecini casa kar izklopljen...

;>

Eh ja....

kopernik ::

Javascript je menda jezik prihodnosti. Tako pravijo bistre glave.

jype ::

Brez Javascripta je browser navaden hlod.

Z Javascriptom šele postane inteligentno pnevmatsko kladivo z dvojno protiročico, šeststopenjskim sistemskim menjalnikom in laserskim namerilnikom.

kopernik ::

Pa nisem mislil tako specifično, browser-only. Mislil sem bolj splošno, The next big language, sicer avtor ne poda specifičnega jezika, so pa špekulacije, da ima v mislih javascript.

jype ::

Jaz sem odgovarjal VelikiKiti :)

BigWhale ::

jure,

Samo mi hocemo, da so browserji hlodi. ;>

jype ::

Ma ne, v bistvu nočemo.

Če je, potem je uporabniška izkušnja zaendrek(tm)

Zgodovina sprememb…

  • spremenilo: jype ()

BigWhale ::

Saj, k te nekdo 'wtfpwna' z javascriptom je tud dobra izkusnja... ;>

Ne, jest mam rajs, da so browserji hlodi in da je user experience mal bolj drekast.

Precej stvari se da narediti ze brez java scripta samo s CSSjem...

AJAX in podobne zadeve so pa precejsnja deviacija od smiselnosti uporabe... ;>

In Extremis ::

Res neverjetno kam so razvijalci pripeljali funkcionalnost JavaScripta. Napadi na spletne aplikacije bi bili brez JS veliko manj zanimivi. Uporablja se ga celo pri optimiziranju heap exploitov na Windows platformi (Metasploit HeapLib). Šele z JS postane ZlobnaKoda pnevmatsko kladivo z dvojno protiročico, šeststopenjskim sistemskim menjalnikom in laserskim namerilnikom.

Rešitev? Lynx maybe ;)

Zgodovina sprememb…

jype ::

Hja, Mosaic tudi ne ve ničesar o Javascriptu. Pa uporabljajte tistega.

Javascript je pač nujen, če kdo želi napisati uporabno spletno aplikacijo. Če bi radi samo tipkali svoje ime in priimek v polje z besedilom seveda ni problema zdržati brez.

Roadkill ::

jype: jaz raje vidim, da mi na računalniku leži en ne prevelik, natančno odrezan hlod, kot da mi po računalniku skače "pnevmatsko kladivo z dvojno protiročico, šeststopenjskim sistemskim menjalnikom". :)

No ja... javascript je čist kul, če se ga uporablja pametno in tam, kjer je to potrebno ali vsaj smiselno. Ker se ga je pa v preteklosti zlorabljalo na najbolj idiotske načine, se pa še vedno bolj istovetim z BWjem kot z jype-om.
Ü

Zgodovina sprememb…

  • spremenil: Roadkill ()

MrStein ::

jype:
Javascript je pač nujen, če kdo želi napisati uporabno spletno aplikacijo.


Saj zato gre. Folk ne rabi "aplikacij". Ampak bi rad le web browsal.
Za tiste 7% , ko je potrebno vec, pa ni treba 6 milijard ljudi izpostavit exploitom ...

(ja, vem, da vecina folka niti elektrike nima, kaj sele internet)
Teštiram če delaž - umlaut dela: ä ?

Zgodovina sprememb…

  • spremenil: MrStein ()

jype ::

Ma kaj se greste :)

Javascript je orodje, brez katerega spletne strani danes delujejo slabo. Ja, večinoma se JS zlorablja, ampak to ne pomeni, da je stvar zanič.

Saj jaz dovolim izvajat javascript samo nekaterim "domenam", ampak vsi ljudje pač niso tako napredni in če se še spomnite zakaj večina uporablja IE, čeprav ni vreden počenega groša, potem veste, zakaj je pri Javascriptu stanje takšno, kakršno je.

fatg ::

MrStein:
Saj zato gre. Folk ne rabi "aplikacij". Ampak bi rad le web browsal.

ni čisto res, desktop aplikacije izumirajo, stvari se selijo v brskalnik. In zaradi varnostnih lukenj ne boš šel ustavljati napredka, ne? Kot da bi prepovedal kolo (prav kolo, ne bicikel), ker so avtomobili lahko nevarni ob nepravilni uporabi ...

BigWhale ::

Ne, JS dejansko je zanic.

Client side processing, ki je kaj vec, kot izgled je traparija, ki ji ni para.

Sauron ::

Jaz se ne spoznam preveč na to, zato me zanima, kako nevarna je ta stvar v resnici?
Ali to pomeni, da če npr. uporabljam Azureusa, ki je zagnan skoraj 24ur na dan in potrebuje javo, da mi lahko brez problemov vdrejo v računalnik in mi noben požarni zid ne pomaga?

kopernik ::

No, javascript ni zanič. Je zelo zmogljiv programski jezik.

Sauron, Java in Javascript nimat dosti skupnega, razen imena in podobne sintakse. Torej, odgovor je ne, vdreti ti ne morejo ... ta novica z Azureusom nima veze.

Zgodovina sprememb…

  • spremenil: kopernik ()

Matevžk ::

BW: asinhronska komunikacija pa ni traparija ampak edini način za izdelavo normalnih uporabniških vmesnikov za spletne APLIKACIJE. Res je malo brezveze, če je vsak enostaven meni narejen z javascriptom (in se ga ne da uporabljati brez), ampak so aplikacije, za katere so se včasih delali thick-clienti, zdaj jih pa ni več treba ...
lp, Matevžk

BigWhale ::

In presenetljivo je vecina teh 'thin clientov' totalnega srota, ki deluje pocasi in na vsakem browserju drugace.

Thanks, but no Thanks.

En fat client, ki je pravilno napisan, multiplatform pospravi z vsemi thin clienti, ki so se tako zelo perfektno napisani.

Imas Linux, Mac in Windows debelega klienta, ki je pisan v Qtju recimo.

Ali pa thin clienta, k mora podpirati Opero, IE, Firefox, potem imas se Safari, Konqueror, najbrz se kaj... In se za vsakega od prej nastetih vsaj kaki dve verziji.

Da ne omenjam, da moras verjetno podpreti vsaj dva web streznika.

In ne, sploh nocem biti nazadnjaski.

Think client, ki povsod dela se slisi priblizno tako, kot Java aplikacija, ki povsod dela ali pa .Net aplikacija, ki povsod dela.

Matevžk ::

Ali pa nasploh katerakoli aplikacija, ki "povsod dela".

Se strinjam, JS ima težave iz zgodovinskih razlogov (nekateri trdimo, da predvsem zaradi enega arogantnega igralca na trgu). Ravno zato obstajajo frameworki, ki namesto tebe uporabijo najlepši pristop (če je že treba workaround, naj bo najmanj hackerski od vseh itd.). Ti poveš, KAJ hočeš, oni to naredijo.

Debeli klienti imajo veliko slabosti. Tanki klienti naj bi te težave odpravili, vendar jih iz razlogov, ki jih navajaš, ne. Vendar so razvita ali v razvoju orodja, ki bodo odpravila tudi te težave, pa smo spet eno stopnico višje.
Razvoj za več strežnikov pa ... jah, odvisno, kaj delaš. V tem primeru imaš seveda problem, razen če najdeš multi-platform framework.
Zelo pogosto (večina primerov pri spletnih aplikacijah) pa je, da programska hiša namesto programa ponuja storitev (ki jo je in-house sprogramirala, jasno). V tem primeru je odločitev glede platforme in strežniškega sistema popolnoma "tvoja" ...

Ampak, ja, ta tema načeloma ni namenjena VSEM težavam JS, ampak samo varnostnim. Ki se jih v tem postu sploh nisem dotaknil! Pač sem samo odgovarjal na tvoje (prav tako z varnostjo nepovezane) trditve v prid debelim klientom.
lp, Matevžk


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Microsoft in Nokia izbrala jQuery

Oddelek: Novice / --Nerazporejeno--
93615 (2754) PaX_MaN
»

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

Oddelek: Novice / Varnost
224250 (2959) MrStein
»

Prikaz še enega napada na anonimnost

Oddelek: Novice / Zasebnost
263539 (2445) MrM
»

[JS] zamenjava barve v sliki

Oddelek: Programiranje
5845 (786) snow
»

resolucija

Oddelek: Izdelava spletišč
6899 (790) Matthai

Več podobnih tem