Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 43

Bezbednost+ Vodič kroz Osnove

Mrežne Bezbednosti

Poglavlje 3
Napadi kroz aplikacije i mrežu
Ciljevi
• Navesti i objasniti različite tipove napada kroz veb
aplikacije
• Definisati napade na klijentskoj strani
• Objasniti kako funkcioniše napad kroz bafer
prepunjavanje (buffer overflow attack)
• Navesti različite tipove DoS napada (Denial of
Service = Napadi uskraćivanja Servisa)
• Opisati napade presretanjem i trovanjem

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 2


Napadi kroz Aplikacije
• Napadi koji pogađaju aplikacije
– Kategorija koja nastavlja da raste
– Napadi kroz veb aplikacije
– Napadi na klijentskoj strani
– Napadi kroz bafer prepunjavanje (buffer overflow)
• Zero day attacks (Napadi nultog dana)
– Iskorišćava do tada nepoznate ranjivosti
– Žrtve nemaju vremena da se pripreme ili odbrane

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 3


Napadi kroz Veb aplikacije
• Veb aplikacije su ključni elemenat današnjih
organizacija
• Pristup u obezbeđivanju veb aplikacija
– Jačanje veb servera
– Obezbeđivanje zaštite mreže

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 4


Slika 3-1 Infrastruktura veb aplikacije

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 5


Napadi kroz Veb aplikacije (nastavak)
• Česti napadi kroz veb aplikacije
– Cross-Site Scripting – XSS(Ubacivanje skripti u *VS)
– SQL injection (ubacivanje)
– XML injection (ubacivanje)
– Command injection / directory traversal (Ubacivanje
naredbi / kretanje kroz direktorijume)

* Veb Server

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 6


Slika 3-2 Bezbednost veb aplikacije

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 7


Cross-Site Scripting - XSS
• Ubacivanje skripti u server veb aplikacija
– Usmerava napade na klijente

Slika 3-3 XSS napadi

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 8


Cross-Site Scripting (nastavak)
• Kad žrtva poseti „zaraženi“ veb sajt:
– Maliciozne instrukcije se šalju na žrtvin veb čitač
• Veb čitač ne može da razlikuje ispravan kod od
maliciozne skripte
• Zahteve koje treba da ispuni ciljani veb sajt:
– Da prihvata unose korisnika bez provere validnosti
– Da koristi podatke u odgovoru a da ga ne kodira
• Neki XSS napadi su kreirani da bi ukrali
informacije:
– Zadržane od strane veb čitača
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 9
Slika 3-4 Omiljena strana koja prihvata korisnički unos
bez provere validnosti i pruža nekodiran odgovor

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 10


Slika 3-5 Unos korišćen kao odgovor

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 11


SQL injection (ubacivanje)
• Cilja SQL servere u koje ubacuje naredbe
• SQL (Structured Query Language = Strukturirani
jezik za upite baze podataka)
– Koristi se za upravljanje podacima koji su skadišteni
u relacionu bazu podataka
• Primer zaboravljene lozinke
– Napadač unese e-mail adresu u neispravnom
formatu
– Dobija odgovor koji mu govori da li se unos
proverava

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 12


SQL injection (ubacivanje) nastavak
• Primer zaboravljene lozinke - nastavak
– Napadač pristupi email polju u SQL naredbi
– Naredba se obrađuje u bazi podataka
– Primer naredbe:
SELECT fieldlist FROM table WHERE field
= ‘whatever’ or ‘a’=‘a’
– Rezultat: Biće prikazane email adrese svih korisnika

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 13


SQL injection (ubacivanje) nastavak

Tabela 3-1 Naredbe SQL ubacivanja

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 14


XML injection (ubacivanje)
• Markup Language (Jezik za označavanje)
– Metod za dodavanje pribeleški u tekst
• HTML
– Koristi oznake (tags) zatvorene sa zagradama
– Daje instrukcije veb čitaču kako da prikaže tekst u
određenom formatu
• XML
– Nosi podatke umesto instrukcija za prikaz istih
– Nema predefinisanih skupova oznaka (tags)
• Korisnici definišu sopstvene oznake (tags)
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 15
XML injection (ubacivanje) nastavak
• XML napad
– Sličan napadu SQL ubacivanja
– Napadač pronalazi veb sajt koji ne filtrira podatke
korisnika
– Ubacuje XML oznake i podatke u bazu podataka
• Xpath injection (ubacivanje)
– Specifičan tip napada XML ubacivanja
– Pokušava da iskoristi XML Path Language upite

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 16


Command Injection /
Directory Traversal (Ubacivanje
naredbi / Kretanje kroz direktorijume)
• Korisnici veb servera obično imaju pristup samo
određenom direktorijumu za koji imaju dozvolu
• Korisnici mogu pristupiti poddirektorijumima:
– Ali ne paralelnim ili direktorijumima na višem nivou
• Važne datoteke koje treba zaštititi od neovlašćenog
pristupa korisnika:
– Cmd.exe se koristi za unos tekstualnih naredbi
– Passwd (Linux) sadrži podatke o korisničkim
nalozima

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 17


Command Injection /
Directory Traversal (Ubacivanje
naredbi / Kretanje kroz direktorijume)
nastavak
• Directory traversal napad
– Iskorišćava ranjivost softvera
– Napadač pristupa direktorijumima kojima ne bi
trebao da može pristupiti
• Command injection napad
– Napadač unosi naredbe koje se izvršavaju na
serveru

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 18


Napadi na Klijentskoj strani
• Napadi kroz veb aplikacije su napadi sa serverske
strane
• Napadi na klijentskoj strani se oslanjaju na
ranjivost klijentskih aplikacija
– Interakcija sa kompromitovanim serverom
– Klijent inicira vezu sa serverom, koja može da
dovede do napada na klijenta

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 19


Napadi na Klijentskoj strani (nastavak)
• Drive-by download (Neželjena preuzimanja)
– Klijentski računar se kompromituje jednostavnim
učitavanjem veb strane
– Napadač ubacuje sadržaj u ranjiv veb server
• Dobija pristup serverovom operativnom sistemu
– Napadač postavi html elemenat koji je nevidljiv osobi
koja je posetila taj veb sajt
– Ubačen HTML dokumenat unutar glavnog dokumenta
– Veb čitač klijenta preuzme malicioznu skriptu
– Daje naredbu računaru da preuzme malver

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 20


Napadi na Klijentskoj strani (nastavak)
• Header manipulation (Manipulacija zaglavljem)
– HTTP zaglavlje sadrži polja koja karakterišu podatke
koji se prenose
– Zaglavlja mogu da potiču iz veb čitača
• Čitači ovo obično ne dozvoljavaju
• Napadačev programčić može omogućiti izmene
• Primeri manipulacije zaglavljem
– Referer spoofing (Obmanjivanje upućivanjem)
– Accept-language request header

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 21


Napadi na Klijentskoj strani (nastavak)
• Upućivačko polje označava sajt koji je generisao
veb stranu
– Napadač može promeniti ovo polje da bi sakrio
činjenicu da je došao sa drugog sajta
– Izmenjena veb strana hostovana sa napadačevog
računara
• Accept-language (prihvatljivi jezici za odgovor)
– Neke veb aplikacije prosleđuju sadržaj ovog polja
direktno u bazu podataka
– Napadač može ubaciti SQL naredbu promenom
ovog zaglavlja
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 22
Napadi na Klijentskoj strani (nastavak)
• Cookies and Attachments (Kolačići i Prilozi)
– Kolačići skladište specifične informacije o korisniku
na njegov računar
• Veb sajtovi koriste kolačiće da identifikuju
posetioce koji su ranije posetili isti sajt
• Primeri informacija koje se čuvaju u kolačićima
– Veb sajtovi turističkih agencija mogu da skadište
informacije o maršrutama njihovih klijenata
– Mogu da se prikažu neki lični podaci pri poseti sajta
• Kolačiće mogu da čitaju samo sajtovi koji su ih
generisali
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 23
Napadi na Klijentskoj strani (nastavak)
• First-party cookie (Kolačić veb sajta)
– Kolačić generisan od strane veb sajta koji korisnik
trenutno pregleda
• Third-party cookie (Kolačić trećih lica)
– Sajt oglašivači postavljaju kolačić da bi zabeležili
interesovanja korisnika datog sajta
• Session cookie (Kolačić sesije)
– Smešten u RAM memoriju i nestaje prilikom
zatvaranja veb čitača

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 24


Napadi na Klijentskoj strani (nastavak)
• Persistent cookie (Postojani kolačić)
– Sačuvan na hard disk računara
– Ne ističe kad se veb čitač zatvori
• Secure cookie (Bezbednosni kolačić)
– Koristi se samo kad veb čitač komunicira sa
serverom preko bezbedne konekcije
– Uvek je kodiran

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 25


Napadi na Klijentskoj strani (nastavak)
• Flash cookie (Adobe Flash kolačić)
– Zauzima više memorije nego standardan kolačić
– Ne može biti obrisan u podešavanjima veb čitača
• Kolačići su izvor bezbednosnih rizika i rizika zaštite
privatnosti
– Mogu biti ukradeni i iskorišćeni za lažno
predstavljanje korisnika
– Koriste se da usmere reklamiranje
– Mogu biti iskorišćeni od strane napadača

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 26


Napadi na Klijentskoj strani (nastavak)
• Session hijacking (Krađa sesije)
– Napadač pokušava da se lažno predstavi tako što
krade ili pokušava da pogodi broj sesije (session
token)
• Malicious add-ons (Maliciozni dodaci)
– Dodaci za veb čitače omogućavaju multimedijalan ili
interaktivan veb sadržaj
– Active X dodaci imaju nekoliko bezbednosnih
problema

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 27


Slika 3-7 Krađa sesije

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 28


Napadi na Klijentskoj strani (nastavak)
• Buffer overflow attacks (Napadi kroz bafer
prepunjavanje)
– Proces pokušava da skladišti podatke u RAM-u van
granica fiksne dužine skladištenja u baferu
– Podaci se „prelivaju“ u susedne memorijske lokacije
– Može se desiti da računar prestane raditi
– Napadač može izmeniti „povratnu adresu“
• Vrši preusmeravanje na memorijsku adresu koja
sadrži maliciozni kod

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 29


Slika 3-8 Napad kroz bafer prepunjavanje

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 30


Mrežni napadi
• Denial of Service - DoS (Napadi uskraćivanja
Servisa)
– Pokušava da spreči sistem da funkcioniše normalno
– Ping flood attack (Napad sa puno ping zahteva)
• Koristi se komanda Ping za slanje većeg broja echo
request poruka (poruke koje daju informacije o vezi)
• Preopterećuje veb server
– Smurf attack (Štrumf napad :-)
• Ping zahtev sa izmenjenom adresom porekla
• Izgleda kao da računar sa kog se šalje ping traži
odgovor od svih računara na datoj mreži
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 31
Mrežni napadi
• Denial of Service - DoS (Napadi uskraćivanja
Servisa - nastavak)
– SYN flood attack (Napad slanjem mnogo SYN
zahteva)
• Koristi prednosti procedura za uspostavljanje
konekcije
• Distributed Denial of Service – DDoS (Distribuirani)
– Napadač koristi mnoge zombi računare u botnetu da
bi opteretio uređaj sa zahtevima koje prima
– Praktično je nemoguće identifikovati i blokirati izvor
napada
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 32
Slika 3-9 Napad slanjem mnogo SYN zahteva

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 33


Interception (Presretanje)
• Man-in-the-middle (Napadač u vidu posrednika)
– Presretanje regularne komunikacije
– Falsifikovanje odgovora koji se šalje pošiljaocu
– Pasivan napad čuva prenete podatke
– Aktivan napad menja sadržaj prenosa pre nego što
se pošalje primaocu
• Replay attacks (Napadi odgovorom)
– Slični pasivnom Napadač-u u vidu posrednika

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 34


Interception (Presretanje) nastavak
• Replay attacks (Napadi odgovorom - nastavak)
– Napadač pravi kopiju prenosa
• Nešto kasnije koristi tu kopiju
– Primer: presreće podatke o prijavi (login)
• Sofisticiraniji napadi odgovorom
– Napadač presreće poruku koju šalje mrežni uređaj
serveru
– Kasnije šalje originalnu, validnu poruku serveru
– Uspostavlja odnos poverenja između napadača i
servera

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 35


Poisoning (Trovanje)
• ARP poisoning (trovanje)
– Napadač menja MAC adresu u ARP-ovom kešu da
bi pokazivala na drugi računar

Tabela 3-3 Napad ARP trovanjem

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 36


Poisoning (Trovanje) nastavak

Tabela 3-4 Napadi iz ARP trovanja

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 37


Poisoning (Trovanje) nastavak
• DNS poisoning (trovanje)
– Domain Name System je distribuirani sistem
imenovanja koji služi da prevede ime u IP adresu
– DNS trovanjem se zamenjuju DNS adrese da bi se
preusmerio računar na drugi uređaj
• Dve lokacije za DNS trovanje
– Tabela lokalnog hosta
– Spoljni DNS server

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 38


Slika 3-12 DNS trovanje

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 39


Napadi na Prava Pristupa
• Privilege ecalation (Eskalacija privilegija)
– Iskorišćavanje ranjivosti softvera u svrhu dobijanja
pristupa zabranjenim podacima
– Korisnik sa manjim privilegijama pristupa funkcijama
namenjenim korisnicima sa većim privilegijama
– Korisnik sa ograničenim privilegijama pristupa
drugačijoj ograničenoj privilegiji od nekog drugog
sličnog korisnika

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 40


Napadi na Prava Pristupa (nastavak)
• Transitive access (Prelazni pristup)
– Napad uključuje treće lice kako bi se ostvarila prava
pristupa
– Ima veze sa tim čije osetljive podatke treba koristiti
kad se pristupa servisima
• Različiti korisnici imaju različita prava pristupa

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 41


Zaključak
• Mane veb aplikacija se iskorišćavaju kroz
uobičajene komunikacione kanale
• XSS napad koristi veb sajtove koji prihvataju unos
od strane korisnika bez provere validnosti
– Koristi server da započne napade na računare koji
mu pristupaju
• Napad na klijentskoj strani cilja ranjivosti u
klijentskim aplikacijama
– Klijent ima interakciju sa kompomitovanim serverom

Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 42


Zaključak (nema dalje :-)
• Session hijacking (Krađa sesije)
– Napadač krade broj sesije i uzima tuđi identitet
• Buffer overflow attack (Napad kroz bafer
prepunjavanje)
– Pokušava da ugrozi računar tako što smešta podatke
u neodgovarajuće memorijske lokacije
• DoS napad pokušava da optereti sistem tako da on
ne može da normalno funkcioniše
• Kod ARP i DNS trovanja važeće adrese su
zamenjene sa „lošim“ adresama
• Prava pristupa i privilegije se mogu eksploatisati
Bezbednost+ Vodič kroz Osnove Mrežne Bezbednosti 43

You might also like