Image
16.6.2016 0 Comments

WWW hacking a obrana / 11. časť

Tá­to v po­ra­dí už 11. a zá­ro­veň zá­ve­reč­ná časť se­riá­lu bu­de po­jed­ná­vať o za­ují­ma­vých, po­mer­ne má­lo zná­mych, ale o to ne­bez­peč­nej­ších úto­koch CSRF (Cross Si­te Request For­ge­ry). V dru­hej čas­ti člán­ku si pre­čí­ta­te aj krát­ky po­hľad na mi­nu­losť a prí­tom­nosť inter­ne­to­vé­ho hac­kin­gu.

Cross Si­te Request For­ge­ry – CSRF
Me­tó­da úto­ku CSRF (ozna­čo­va­ná aj XSRF) je sí­ce me­nej zná­ma pre šir­ší ok­ruh webo­vých vý­vo­já­rov, za­to však veľ­mi ne­bez­peč­ná. Útoč­ní­ci tú­to tec­hni­ku do­ko­na­le ov­lá­da­jú a do­ká­žu z nej vy­ťa­žiť ob­rov­ské vý­sled­ky. V po­dsta­te útok spo­čí­va v rov­na­kom prin­cí­pe ako väč­ši­na iných úto­kov. Ide o to, aby sa ús­peš­ne vy­ko­nal kód po­dvr­hnu­tý útoč­ní­kom. Pek­ný prík­lad, kto­rý sa čas­to ob­ja­vu­je, je ukáž­ka zma­ni­pu­lo­va­nia vý­sled­kov an­ke­ty.

Pred­stav­te si, že útoč­ník si dá za cieľ zma­ni­pu­lo­vať vý­sled­ky webo­vej an­ke­ty vo svoj pros­pech. Po­ved­zme, že an­ke­ta sa nac­hád­za na server­i http://www.ne­ja­ka-do­me­na.com a skript na hla­so­va­nie po­uží­va me­tó­du pre­no­su in­for­má­cií GET. Kon­krét­na ad­re­sa a pa­ra­me­ter pre­men­nej za­hla­su­jem_za sa rov­ná 3. Ce­lá ad­re­sa, kto­rú tre­ba v preh­lia­da­či za­dať, aby sa pri­dal po­ža­do­va­ný hlas do an­ke­ty, je http://www.ne­ja­ka-do­me­na.com/hla­suj­te.php?za­hla­su­jem_za=3.

Ten­to od­kaz sta­čí umies­tniť na ne­ja­ký čet, dis­kus­né fó­rum či roz­pos­lať e-mai­lom nie­koľ­kým stov­kám ale­bo ti­síc­kam ľu­dí. Niek­to­rí z nich nás­led­ne na od­kaz klik­nú a ne­ve­dom­ky za­hla­su­jú v an­ke­te. Čím lep­šie vy­uži­je útoč­ník svo­je schop­nos­ti z ob­las­ti so­ciál­ne­ho in­ži­nier­stva, tým viac po­uží­va­te­ľov sa mu po­da­rí na­lá­kať, aby na od­kaz klik­li. Ten­to spô­sob má však pre útoč­ní­ka tú chy­bu, že po­uží­va­teľ vi­dí URL ad­re­su, na kto­rú klik­ne. Útoč­ník si pre­to na ne­ja­kom free­hos­tin­gu vy­tvo­rí vlas­tnú do­mé­nu, na kto­rú umies­tni jed­no­duc­hú strán­ku, ako je na vý­pi­se č.1.

Vý­pis č.1:

<HTML>
<HEAD> <TIT­LE>Ukáž­ka úto­ku CSRF - Cross Si­te Request For­ge­ry</TIT­LE> </HEAD>
<BO­DY>
<IMG SRC = "http://www.ne­ja­ka-do­me­na.com/hla­suj­te.php?za­hla­su­jem_za=3">
</BO­DY>
</HTML>

Nás­led­ne na ne­ja­ké dis­kus­né fó­ra umies­tni od­kaz na svo­ju do­mé­nu. Zvy­čaj­ne klik­nu­tie na od­kaz sľu­bu­je ne­ja­ký lá­ka­vý ob­sah na stiah­nu­tie (mp3, fil­my či iný warez). Po klik­nu­tí na od­kaz sa však po­uží­va­teľ dos­ta­ne na do­mé­nu útoč­ní­ka a nás­led­ne dôj­de k po­ku­su o stiah­nu­tie ob­ráz­ka z ad­re­sy http://www.ne­ja­ka-do­me­na.com/hla­suj­te.php?za­hla­su­jem_za=3, kde sa však žiad­ny ob­rá­zok ne­nac­hád­za. Na­mies­to to­ho na­ko­niec dôj­de k ne­ve­do­mé­mu za­hla­so­va­niu v an­ke­te, kto­ré väč­ši­nou ús­peš­ne pre­beh­ne. V prí­pa­de, že sa útoč­ník roz­hod­ne svo­ju čin­nosť (zma­ni­pu­lo­va­nie vý­sled­kov an­ke­ty) uta­jiť, mô­že ne­ve­do­mé­ho účas­tní­ka an­ke­ty pres­me­ro­vať späť.
Úto­ky CSRF však ne­do­ká­žu len ma­ni­pu­lo­vať vý­sled­ky webo­vých an­kiet. Ove­ľa ne­bez­peč­nej­šie úto­ky sú nap­rík­lad na­mie­re­né pro­ti e-mai­lo­vým, e-sho­po­vým či iným úč­tom webo­vých ap­li­ká­cií. Tie­to úto­ky sú sí­ce o nie­čo zlo­ži­tej­šie, ale ich príp­ra­va za­be­rie väč­ši­nou len pár mi­nút. Útok je zlo­ži­tej­ší väč­ši­nou len o to, že je po­treb­né po­ra­diť si s me­tó­dou PO­ST na­mies­to GET, kto­rá ob­sa­hu­je hod­no­ty pa­ra­met­rov v URL ad­re­se.

Ob­ra­na pro­ti úto­kom CSRF

  • kon­tro­lo­vať IP ad­re­sy
  • hla­vič­ky Re­fe­rer
  • po­uží­vať me­tó­du PO­ST na­mies­to GET
  • CAP­TCHA

Oc­hra­na pro­ti úto­kom CSRF nie je jed­no­duc­há. Kon­tro­la IP ad­re­sy, Re­fe­re­ra a po­uží­va­nie me­tó­dy PO­ST na­mies­to GET nie je vždy dos­ta­toč­né. V po­dsta­te ide len o pri­ťa­že­nie pre útoč­ní­ka. Čas­to tre­ba skon­čiť pri oc­hra­ne ob­ráz­kom CAP­TCHA, a to aj nap­riek to­mu, že je to dosť ne­po­hodl­né.
Kon­tro­lo­vať hla­vič­ku Re­fe­rer sa op­la­tí prá­ve pri an­ke­tách. Ak to­tiž prí­de nie­koľ­ko sto­viek hla­sov z jed­nej do­mé­ny, kto­rá s an­ke­tou ne­má nič spo­loč­né, je jas­né, že ide o útok CSRF.

Mno­hí po­uží­va­te­lia a do­kon­ca aj niek­to­rí vý­vo­já­ri webo­vých ap­li­ká­cií ne­ve­dia, pre­čo pri zme­ne hes­la úč­tu tre­ba za­dať aj sta­ré hes­lo? Je to oc­hra­na prá­ve aj pro­ti úto­kom CSRF. Po­mo­cou CSRF úto­kov by bez tej­to oc­hra­ny bo­lo to­tiž jed­no­duc­hé zme­niť hes­lo úč­tu webo­vej ap­li­ká­cie ne­ja­ké­ho po­uží­va­te­ľa. Tá­to oc­hra­na však brá­ni aj ur­či­tým iným dru­hom úto­kov, ako sú nap­rík­lad úto­ky XSS.

Mi­nu­losť a sú­čas­nosť na po­li inter­ne­to­vé­ho hac­kin­gu
Ako ste v na­šom se­riá­li ve­no­va­nom bez­peč­nos­ti webo­vých ap­li­ká­cií moh­li vi­dieť, útoč­ní­ci ma­jú množ­stvo ty­pov úto­kov. Inter­net, ako aj je­ho webo­vá časť - WWW strán­ky/ap­li­ká­cie - sa od svoj­ho vzni­ku a sprís­tup­ne­nia ši­ro­kej ve­rej­nos­ti po­dstat­ne zme­ni­li. A me­nia sa na­ďa­lej. Dá sa po­ve­dať, že kaž­dým dňom sa webo­vé strán­ky stá­va­jú viac dy­na­mic­kej­ší­mi a inter­ak­tív­nej­ší­mi. Na scé­nu sa po­ma­ly, ale is­to dos­tá­va Web 2.0. Kom­fort, kto­rý pri­ná­ša, je ne­poc­hyb­ne veľ­mi za­ují­ma­vý a po­hodl­ný. Ale to si pý­ta svo­ju daň v po­do­be bez­peč­nos­ti týc­hto ap­li­ká­cií. Tu pla­tí pria­ma úmer­nosť – čím väč­šia a dy­na­mic­ký­mi pr­vka­mi prep­le­te­nej­šia webo­vá ap­li­ká­cia, tým ťaž­šie je za­bez­pe­čiť ju.

Dnes exis­tu­je množ­stvo ap­li­ká­cií, kto­ré auto­ma­tic­ky spus­tia tes­to­va­nie webo­vých ap­li­ká­cií. Tie vy­ko­ná­va­jú per­fek­tnú prá­cu, kto­rú by člo­vek ro­bil veľ­mi dl­ho. No ne­nah­ra­dia skú­se­nos­ti a mys­le­nie pro­fe­sio­nál­ne­ho tes­te­ra, kto­rý si do­ká­že vší­mať aj to naj­me­nej po­doz­ri­vé sprá­va­nie sa kó­du a vy­hod­no­co­vať ho. Prá­ca auto­ma­ti­zo­va­ných nás­tro­jov a pro­fe­sio­nál­ne­ho bez­peč­nos­tné­ho tes­te­ra sa vhod­ne dopĺňa.

Po­stu­pom ča­su sa ta­kis­to vy­vi­nu­lo veľ­ké množ­stvo no­vých spô­so­bov úto­kov (XSS, CSRF, SQL In­jec­tion, RFI atď.). Pred 10 rok­mi, keď web ani zďa­le­ka ne­bol ta­ký dy­na­mic­ký (fó­ra, če­ty...), útoč­ní­ci po­zme­ňo­va­li strán­ky tak, že na­bú­ra­li ce­lý server. Dnes to tak ani zďa­le­ka nie je. Te­raz sta­čí vy­užiť di­eru ty­pu SQL In­jec­tion, RFI, XSS či CSRF a strán­ky hac­ko­vať jed­no­duc­ho cez webo­vý preh­lia­dač.

Zme­ni­li sa ta­kis­to cie­le útoč­ní­kov. Kým v mi­nu­los­ti bo­li hlav­ným cie­ľom väč­ši­ny hac­ke­rov po­li­tic­ké pro­tes­ty či boj za ne­ja­ké prá­va, dnes k nim pri­bud­la znač­ná časť zis­kuch­ti­vých ky­berzlo­čin­cov.

Kom­plexnosť ope­rač­ných sys­té­mov a sof­tvé­ru nain­šta­lo­va­né­ho na nich spô­so­bi­la aj to, že nie vždy sa ur­či­tá bez­peč­nos­tná chy­ba dá pl­ne vy­užiť v pros­pech útoč­ní­ka, kto­rý sa po­kú­ša ov­lád­nuť server. Čas­to sa stá­va, že ur­či­té bez­peč­nos­tné di­ery BO (Buf­fer Overflow) mož­no ús­peš­ne exploi­to­vať len na kaž­dý pia­ty či de­sia­ty po­kus, v os­tat­ných prí­pa­doch spô­so­bia pád sof­tvé­ru, a te­da aj útok od­miet­nu­tia služ­by - DoS (De­nial Of Servic­e). Za tie ro­ky sa však nez­me­nil fakt, že po­čet zve­rej­ne­ných bez­peč­nos­tných di­er je ove­ľa men­ší než po­čet ob­ja­ve­ných. Je to z jed­no­duc­hé­ho dô­vo­du. Väč­ši­na útoč­ní­kov, kto­rí ob­ja­via bez­peč­nos­tnú di­eru v ne­ja­kej ap­li­ká­cii, ne­má dô­vod zve­rej­niť ju. Na­mies­to to­ho si na­pí­šu exploit, po­mo­cou kto­ré­ho na na­bú­ra­va­jú do sys­té­mov aj nie­koľ­ko ro­kov, kým na chy­bu nep­rí­de niek­to iný (a vý­rob­ca ne­vy­dá zá­pla­tu), prí­pad­ne ju neodstrá­ni kom­plet­ne zme­ne­ný kód v ne­ja­kej no­vej ver­zii da­né­ho sof­tvé­ru.

Pri tes­to­va­ní vlas­tných webo­vých ap­li­ká­cií a ďal­šom štu­do­va­ní prob­le­ma­ti­ky ne­za­bud­ni­te na vy­ni­ka­jú­cu prí­ruč­ku OWASP Tes­ting gui­de, kto­rá je už vo svo­jej tre­tej ver­zii. V nej náj­de­te množ­stvo za­ují­ma­vých a pro­fe­sio­nál­ne spra­co­va­ných in­for­má­cií o bez­peč­nos­ti webu.

Autor: Ján Chovanec

Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Ako na to

Tipy a triky: Ako na snímku obrazovky na akomkoľvek počítači s Windows?

02.12.2016 00:13

Ak snímky obrazovky robíte často apotrebujete napríklad funkcie na posun stránok alebo snímanie zobrazenia pri vyššom rozlíšení displeja, zrejme používate nejakú špecializovanú aplikáciu. Väčšina použ ...

Ako na to 1

Tipy a triky: Ako aplikácii prednastaviť spúšťanie s administrátorskými právami?

30.11.2016 00:10

Väčšina aspoň trochu skúsenejších používateľov vie, že aj keď máte na operačnom systéme Windows vytvorený administrátorský účet, aplikácie pre bezpečnosť nefungujú vždy splnými administrátorskými práv ...

Ako na to 2

Tipy a triky: Ako vypnúť uzamykaciu obrazovku vo Windows 10?

29.11.2016 00:10

Rozčuľuje vás, že pred každým prihlásením doúčtu vášho počítača musíte prejsť uzamykacou obrazovkou? Windows 10 na tejto obrazovke ukazuje čas,dátum anejakú zaujímavú fotografiu zrôznych kútov sveta. ...

Žiadne komentáre

Vyhľadávanie

Kyocera - prve-zariadenia-formatu-a4-s-vykonom-a3

Najnovšie videá