Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Razlike

Slijede razlike između dviju inačica stranice.

Poveznica na ovu usporedbu

Starije izmjene na obje strane Starija izmjena
Novija izmjena
Starija izmjena
racfor_wiki:mrezna_forenzika:napadi_na_tcp [2022/01/08 13:09]
mrobic [Vrste napada]
racfor_wiki:mrezna_forenzika:napadi_na_tcp [2024/12/05 12:24] (trenutno)
Redak 11: Redak 11:
  
  
-Keywords: Transmission Control Protocol; podatkovni okteti; web preglednici; SSH; sigurnosni mehanizmi; napadi;+Ključne riječi: Transmission Control Protocol; podatkovni okteti; web preglednici; SSH; sigurnosni mehanizmi; napadi;
  
 ===== Uvod ===== ===== Uvod =====
  
-Transmission Control Protocol (TCP) nalazi se iznad IP sloja. Kako TCP omogućuje pouzdanu komunikaciju među procesima zahtjeva uspostavu veze prije samog prijenosa podataka. +Transmission Control Protocol (TCP) nalazi se iznad IP sloja. Kako TCP omogućuje pouzdanu komunikaciju među procesima zahtijeva uspostavu veze prije samog prijenosa podataka. 
  
-Procedura uspostave je jednostavna, svaka strana šalje tzv. SYN segment u kojem objavljuje parametra bitne za konekciju. Odvija se u tri koraka (threeway handshake).+Procedura uspostave je jednostavna, svaka strana šalje tzv. SYN segment u kojem objavljuje parametre bitne za konekciju. Procedura se odvija se u tri koraka ("three'way handshake").
  
 {{ :racfor_wiki:mrezna_forenzika:uspostava.png?400 |}} {{ :racfor_wiki:mrezna_forenzika:uspostava.png?400 |}}
  
-Raskid TCP veze događa se kada aplikacije nemaju više podataka za razmjeniti. Prvo jedna strana šalje FIN bit postavljen na 1, zatim druga strana odgovara sa ACK i FIN te prva strana zaključuje raskid šaljući ACK bit. +Prekid TCP veze događa se kada aplikacije nemaju više podataka za razmijeniti. Prvo jedna strana šalje FIN bit postavljen na 1, zatim druga strana odgovara sa ACK i FIN bitovima te prva strana zaključuje prekid šaljući ACK bit postavljen na 1
  
 {{ :racfor_wiki:mrezna_forenzika:raskid_tcp_veze.png?400 |}} {{ :racfor_wiki:mrezna_forenzika:raskid_tcp_veze.png?400 |}}
  
-struktura TCP zaglavlja posebno nam je zanimljivo polje sequence number” čija je veličina 32 bita. Ovo polje nam služi za numeriranje jer sadrži broj prvog okteta segmenta.+strukturi TCP zaglavlja posebno nam je zanimljivo polje broj u nizu (eng. "sequence number"čija je veličina 32 bita. Ovo polje nam služi za numeriranje jer sadrži broj prvog okteta segmenta.
  
 ====== Vrste napada ====== ====== Vrste napada ======
  
-TCP protokol može biti napadnut na mnogo načina. Napad uskraćivanjem resursa, sekvencijsko predviđanje, TCP resetiranje samo su neki od najčešćih TCP napada. Rezultate sveobuhvatne analize ranjivosti TCP protokola objavljene su 2009.+TCP protokol može biti napadnut na mnogo načina. Napad otmice veze (eng. session hijacking), sekvencijsko predviđanje (koje je u osnovi slično TCP vetu), TCP resetiranje samo su neki od najčešćih TCP napada.  
 +Rezultati sveobuhvatne analize ranjivosti TCP protokola objavljeni su 2009. godine. Kako je protokol nezamjenjiv za sve ove probleme ponuđena su konkretna rješenja koja ublažavaju ili potpuno rješavaju sve probleme
  
- +===== SYN preplavljivanje =====
-===== SYN Flooding napad =====+
  
  
Redak 38: Redak 38:
 Ovaj napada događa se tijekom uspostave TCP konekcije, odnosno napada “three-way handshake” protokol. U slučaju DOS napada, napadač teško može server “srušiti” direktno, prvo mora naći serverovu Ahilovu tetivu. “Half-open connection queue” je upravo to. Ovaj napada događa se tijekom uspostave TCP konekcije, odnosno napada “three-way handshake” protokol. U slučaju DOS napada, napadač teško može server “srušiti” direktno, prvo mora naći serverovu Ahilovu tetivu. “Half-open connection queue” je upravo to.
  
-Kada server zaprimi inicijalni SYN paket, on sprema posebnu strukturu u svoj red zvanu Transmission Control Block (TCB). U tom trenutku veza između klijenta servera na pola je uspostavljena. Kada server dobije ACK paket od klijenta, TCB će maknuti iz reda.+Kada server zaprimi inicijalni SYN paket, on sprema posebnu strukturu u svoj red zvanu Transmission Control Block (TCB). U tom trenutku veza između klijenta servera napola je uspostavljena. Kada server dobije ACK paket od klijenta, TCB će maknuti iz reda.
  
-Prije nego three-way handshake” završi server mora spremiti u red sve TCB strukture te ako napadač uspije popuniti sav kapacitet reda u kratkom razdoblju, server neće moći prihvaćati nove SYN pakete te tako neće više primati nove konekcije iako CPU njegov bandwith nisu dostigli maksimum. +Prije nego "three-way handshakezavrši server mora spremiti u red sve TCB strukture te ako napadač uspije popuniti sav kapacitet reda u kratkom razdoblju, server neće moći prihvaćati nove SYN pakete te tako neće više primati nove konekcije iako CPU njegov bandwith nisu dostigli maksimum. 
  
 Napadačev posao je jednostavan, što prije napuniti serverov red tako da samo šalje SYN pakete na njega. Napadač će korisiti slučajnu IP adresu sa svakim novim zathjevom kako ga serverov vatrozid ne bi blokirao. Jedini način kako server može sada prazniti vlastiti red je da TCB-u istekne timeout koji može biti vremenski dugotrajan (otpr. 40s). Napadačev posao je jednostavan, što prije napuniti serverov red tako da samo šalje SYN pakete na njega. Napadač će korisiti slučajnu IP adresu sa svakim novim zathjevom kako ga serverov vatrozid ne bi blokirao. Jedini način kako server može sada prazniti vlastiti red je da TCB-u istekne timeout koji može biti vremenski dugotrajan (otpr. 40s).
Redak 50: Redak 50:
 Ova vrsta napada poznata je dulje vrijeme i postoji nekoliko pristupa koji pokušavaju prekriti ovu slabost. SYN kolačići (eng. cookies) predstavljaju rješenje problema. Ideja je sljedeća, server će nakon primitka SYN segmenta, napraviti hash koristeći privatni ključ koji je poznat samo njemu. Ključ sadržava informacije o IP adresi, broju vrata, broju u nizu. Server šalje vrijednost H u SYN+ACK paketu. Ako je klijent napadač, neće dobiti serverov paket (jer koristi lažnu IP adresu). Ako klijent nije napadač, dobit će paket te poslati natrag ACK paket, sa vrijednošću H+1. Naravno, napadač i dalje može napuniti server sa mnogo SYN paketa, ali oni neće dovesti do popunjavanja reda jer server ne alocira resurse sve dok ne dobije ACK paket od klijenta. Ova vrsta napada poznata je dulje vrijeme i postoji nekoliko pristupa koji pokušavaju prekriti ovu slabost. SYN kolačići (eng. cookies) predstavljaju rješenje problema. Ideja je sljedeća, server će nakon primitka SYN segmenta, napraviti hash koristeći privatni ključ koji je poznat samo njemu. Ključ sadržava informacije o IP adresi, broju vrata, broju u nizu. Server šalje vrijednost H u SYN+ACK paketu. Ako je klijent napadač, neće dobiti serverov paket (jer koristi lažnu IP adresu). Ako klijent nije napadač, dobit će paket te poslati natrag ACK paket, sa vrijednošću H+1. Naravno, napadač i dalje može napuniti server sa mnogo SYN paketa, ali oni neće dovesti do popunjavanja reda jer server ne alocira resurse sve dok ne dobije ACK paket od klijenta.
  
-===== TCP Reset napad =====+===== TCP resetiranje =====
  
 Cilj ove vrste napada je prekinuti postojeću vezu između dva servera. Iako TCP  koristi TCP FIN protokol kako bi završio trenutnu konekciju, ako jedna strana pošalje segment sa bitom RST postavljenim na 1, konekcija se odmah završava. Treba uočiti kako su na meti uglavnom konekcije koje traje neko određeno vrijeme jer je teško vjerojatno da napadač može prekinuti vezu u trajanju nekoliko sekundi. Cilj ove vrste napada je prekinuti postojeću vezu između dva servera. Iako TCP  koristi TCP FIN protokol kako bi završio trenutnu konekciju, ako jedna strana pošalje segment sa bitom RST postavljenim na 1, konekcija se odmah završava. Treba uočiti kako su na meti uglavnom konekcije koje traje neko određeno vrijeme jer je teško vjerojatno da napadač može prekinuti vezu u trajanju nekoliko sekundi.
Redak 70: Redak 70:
 ===== TCP veto napad ===== ===== TCP veto napad =====
  
-Napad koji može predvidjeti sljedeći sequence number” te veličinu sljedećeg paketa rezultirajući da primatelj primi potpuno ispravan paket kao da je sve normalno. Kada primatelj primi paket sa ispravnim brojem originialnog pošiljatelja, paket se samo odbaci (smatrajući da se radi o duplikatu prvog paketa). Kažemo da je maliciozni paket izvršio “veto” nad legitimnim paketom. Iako TCP veto napad daje napadaču manje kontrole nad komunikacijom od npr. TCP Session Hijacking napada, ova vrstu napada jako je tešto otkriti. +Napad koji može predvidjeti sljedeći broj u nizu (eng. sequence numberte veličinu sljedećeg paketa rezultirajući da primatelj primi potpuno ispravan paket kao da je sve normalno. Kada primatelj primi paket sa ispravnim brojem originialnog pošiljatelja, paket se samo odbaci (smatrajući da se radi o duplikatu prvog paketa). Kažemo da je maliciozni paket izvršio “veto” nad legitimnim paketom. Posebno je problematično što ovakav napad generira i do 600 puta manje mrežnog prometa od ostalih napada. Iako TCP veto napad daje napadaču manje kontrole nad komunikacijom od npr. TCP Session Hijacking napada, ova vrstu napada jako je teško otkriti
 +Sprječavanje ovakve vrste napada uključuje tcpcrypt, IPsec itd...
  
  
 ===== Zaključak ===== ===== Zaključak =====
  
-TCP protokol nema ugrađene sigurnosne mehanizme kako bi zaštitio konekciju te podatke od napada. Rezultat toga su mnogobrojne vrste napada. SYN Flooding i TCP Reset spadaju pod DoS vrste napada, dok ostala dva napada omogućuju napadaču ubacivanje malicioznih podataka u postojeću TCP vezu.+TCP protokol nema ugrađene sigurnosne mehanizme kako bi zaštitio konekciju te podatke od napada. Rezultat toga su mnogobrojne vrste napada. SYN poplavljivanje TCP resetiranje spadaju pod DoS vrste napada, dok ostala dva napada omogućuju napadaču ubacivanje malicioznih podataka u postojeću TCP vezu.
  
-Iako se napad oduzimanja veze (eng. session hijacking) može riješiti pomoću enkripcije, za ostale napade postoje rješenja (npr. SYN cookies za SYN Flooding napad) probleme vezane uz sigurnost teško je riješiti. +Iako se napad oduzimanja veze(eng. session hijacking) može riješiti pomoću enkripcije, za ostale napade postoje rješenja (npr. SYN kolačići za SYN poplavljivanje), ali općenito probleme vezane uz sigurnost teško je riješiti. 
  
-Važna lekcija naučena iz ovog protokola, ali i bilo kojeg drugog mrežnog protokola je da se sigurnost mora odmah ugraditi kako bi odmah riješila potencijalne napade+Važna lekcija naučena iz ovog protokola, ali i bilo kojeg drugog mrežnog protokola je da se sigurnost mora odmah ugraditi kako bi odmah riješila potencijalne probleme
  
  
Redak 87: Redak 88:
 [1] [[https://web.ecs.syr.edu/~wedu/seed/Book/book_sample_tcp.pdf|Computer Security: A Hands-on Approach, Wenliang Du, 2017.]] [1] [[https://web.ecs.syr.edu/~wedu/seed/Book/book_sample_tcp.pdf|Computer Security: A Hands-on Approach, Wenliang Du, 2017.]]
  
-[2] [[https://en.wikipedia.org/wiki/Transmission_Control_Protocol]]+[2] Komunikacijske mreže, FER predavanja, 2017. 
 + 
 +[3] [[https://en.wikipedia.org/wiki/Transmission_Control_Protocol]]
  
-[3] [[https://robertheaton.com/2020/04/27/how-does-a-tcp-reset-attack-work|How does a tcp reset attack work, Rober Heaton, 2020.]]+[4] [[https://robertheaton.com/2020/04/27/how-does-a-tcp-reset-attack-work|How does a tcp reset attack work, Rober Heaton, 2020.]]
  
  
racfor_wiki/mrezna_forenzika/napadi_na_tcp.1641647389.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0