Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
Prijevodi ove stranice:

Skeniranje portova

1. Uvod

Skeniranje porta proces je provjere svih priključaka na IP adresi kako bi se vidjelo jesu li oni otvoreni ili zatvoreni. Softver za skeniranje portova provjerio bi port 0, 1, 2, pa sve do 65535. To čini jednostavnim slanjem zahtjeva na svaki port, te traženjem odgovora. Skeniranje portova jedna je od najpopularnijih taktika koje koriste cyber napadači u potrazi za ranjivim serverom. Koriste ih kako bi otkrili razinu sigurnosti različitih organizacija i utvrdili tko ima jak vatrozid i tko može imati ranjiv poslužitelj ili mrežu. Brojne tehnike protokola TCP zapravo omogućavaju napadačima da sakriju svoju mrežnu lokaciju i upotrebe “prikriveni promet” za obavljanje skeniranja portova bez otkrivanja mrežne adrese.

Skeniranje portova pokazalo bi napadaču koji su portovi otvoreni u sustavu, tj. informacije koje bi im pomogle da formuliraju plan napada. Na primjer, ako je otkriven Secure Shell (SSH) poslužitelj na ulazu 22, napadač bi se mogao pokušati povezati i provjeriti postoje li slabe lozinke. Ako druga vrsta poslužitelja sluša na nekom ulazu, napadač bi mogao vidjeti ima li pogrešaka koje se mogu iskoristiti. Možda je pokrenuta stara verzija softvera, na kojoj postoji poznata sigurnosna rupa. Ove vrste skeniranja mogu također pomoći u otkrivanju usluga koje se pokreću na portovima koji nisu zadani. Dakle, ako na portu 65001 postoji SSH poslužitelj, umjesto na standardnom portu 22, skeniranjem bi se to otkrilo i napadač bi se mogao pokušati povezati s SSH poslužiteljem na tom ulazu. Ne može se samo sakriti poslužitelj na neuobičajenom portu da bi se osigurao svoj sustav, iako je tako poslužitelja teže pronaći.

Port skeniranje ne upotrebljavaju samo napadači. Ona su korisna i za defenzivno testiranje. Organizacija može skenirati vlastite sustave kako bi utvrdila koji su servisi izloženi mreži i osigurala da su ispravno konfigurirani. U nastavku je opisano skeniranje portova, utjecaji na ciljni sustav i alati koji se mogu koristiti za provedbu skeniranja. U trećem poglavlju su opisani tipovi portova, a u četvrtom glavne tehnike skeniranja.

2. Općenito o skeniranju portova

Skeniranje portova metoda je otkrivanja koji su portovi na mreži otvoreni i mogu primati ili slati podatke. To je ujedno i proces slanja paketa određenim portovima na domaćinu i analiza odgovora radi prepoznavanja ranjivosti. Ovaj se postupak skeniranja ne može izvršiti bez identificiranja popisa aktivnih domaćina i mapiranja tih domaćina i njihovih IP adresa. Nakon temeljitog mrežnog skeniranja i sastavljanja popisa domaćina, može se izvršiti skeniranje portova. Organizacija IP adresa, hostova i portova omogućuje pravilno identificiranje otvorenih ili ranjivih lokacija poslužitelja s ciljem dijagnosticiranja razine sigurnosti.

I cyber napadači i administratori su u mogućnosti koristiti skeniranje portova za provjeru sigurnosti mreže i prepoznavanja ranjivosti; i u slučaju napadača identificiranja slabe ulazne točke.

Opći protokoli koji se koriste za skeniranje portova su TCP (protokol za kontrolu prijenosa) i UDP (protokol korisničkog datagrama). Oba omogućuju prijenos podataka za Internet, ali imaju različite mehanizme. TCP je pouzdan, dvosmjerni prijenos za koji je potrebno uspostavljanje veze kako bi se paketi uspješno poslali. UDP protokol ne zahtijeva povezivanje, te je i nepouzdan. Podaci se samo šalju na odredište; prema tome, nije zajamčeno da će oni i uspješno stići na odredište. Postoji više različitih načina provođenja skeniranja portova pomoću ova dva protokola. Oni su opisani poglavlju 4.

2.1. Alati za skeniranje portova

Kada bi se ručno provjeravali portovi, jedan po jedan, bilo bi potrebno mnogo vremena. Za to su dostupni alati koji omogućuju brže skeniranje portova. Postoje razne metode skeniranja, ali ne podržavaju svi alati svaku od tehnika skeniranja. Najpoznatiji alat koji se koristi radi provjeravanja portova je Nmap. Može se koristiti na operacijskim sustavima Windows, Linux, MacOS ili pomoću izvornog koda.

TCP Port Scanner alat je koji je u mogućnosti provesti samo skeniranja TCP portova. Advanced Port Scanner je besplatni alat za provjeru otvorenih portova. Alat je višedretveni, te je stoga i brz. Network Scanner by MiTeC je višenamjenski alat za skeniranje dostupan na Windows OS 32-bit ili 64-bit. NetScan Tools ima više od 50 alata za DNS, Ping, SNMP, Discovery, Whois, ARP… Podržava iduće tehnike skeniranja portova: TCP connect, SYN stealth, UDP ICMP, TCP/UDP ICMP, te kombinacije SYN, URG, PSH, ACK, RST. Navedene učestale tehnike su opisane u poglavlju 4.

2.2. Utjecaji na ciljani sustav

Skeniranje porta može pomoći napadaču da pronađe slabu točku za napad i proboj u računalni sustav. No to je samo prvi korak. To što je pronađen otvoreni port ne znači da ga se može i napasti. Ali u slučaju da je pronađen otvoreni port koji pokreće uslugu slušanja, može ga se skenirati na ranjivosti. Tu se nalazi prava opasnost.

Na kućnim mrežama gotovo sigurno postoje ruteri koji se nalazi između korisnika i interneta. Netko bi putem Interneta mogao skenirati ruter, ali ne bi pronašao ništa osim potencijalnih usluga na samom ruteru. Razlog tome je taj što on djeluje kao vatrozid - osim ako pojedinačni portovi s rutera nisu proslijeđeni na uređaj. U tom slučaju su ti određeni portovi izloženi Internetu.

Za računalne poslužitelje i korporativne mreže, vatrozidi se mogu konfigurirati tako da otkriju skeniranje portova i blokiraju promet s adrese koja skenira. Ako su sve usluge koje su izložene internetu ispravno i sigurnosno konfigurirane, te nemaju poznate sigurnosne rupe, skeniranja portova ne bi trebala biti previše zastrašujuća.

3. Tipovi portova

Portovi su središnja priključna točka za protok informacija iz programa ili interneta do uređaja ili drugog računala u mreži i obrnuto. Broj porta u kombinaciji s IP adresom tvore vitalne podatke koje čuva svaki pružatelj internetskih usluga kako bi ispunio zahtjeve. Portovi se kreću od 0 do 65,536.

Portovi 0 do 1023 su dobro poznati brojevi priključaka koji su dizajnirani za upotrebu na internetu, iako mogu imati i specijalizirane svrhe. Njima upravlja IAN (Internet Assigned Numbers Authority). Te portove drže vodeće tvrtke poput Apple QuickTime, MSN, SQL servisa i druge ugledne organizacije. Neki od istaknutijih portova i dodijeljenih usluga su:
• Port 20 (UDP) sadrži protokol za prijenos datoteka (FTP) koji se koristi za prijenos podataka
• Port 22 (TCP) sadrži protokol SSH za sigurne prijave, ftp i prosljeđivanje porta
• Port 53 (UDP) je domenski sustav imena (DNS) koji povezuje simbolička imena adresa s IP adresama
• Port 80 (TCP) je HTTP

Brojevi 1024 do 49151 smatraju se „registriranim portovima“, što znači da su registrirani od strane softverskih korporacija. Portovi 49.151 do 65.536 su dinamični i privatni priključci - i mogu ih koristiti gotovo svi.

Skenovi portova vraćaju korisniku status mreže ili poslužitelja, opisan u jednoj od tri kategorije: otvoren, zatvoren ili filtriran.

3.1. Otvoreni portovi

Ciljni poslužitelj ili mreža aktivno prihvaća veze ili datagrame i odgovara paketom koji označava da sustav sluša. Također označava da se koristi ista usluga koja se koristi i za skeniranje (obično TCP ili UDP). Pronalaženje otvorenih portova obično je ukupni cilj skeniranja portova i cyber kriminalaca koji traži lokaciju za napad. Administratori pokušavaju zabarikadirati te portove instaliranjem vatrozida kako bi ih zaštitili bez ograničavanja pristupa zakonitim korisnicima.

3.2. Zatvoreni portovi

Poslužitelj ili mreža primili su zahtjev, ali na tom priključku nema usluge “slušanja”. Zatvoreni port je i dalje dostupan i može biti koristan kako bi se pokazalo da je domaćin na toj IP adresi. Te je portove potrebno nastaviti pratiti jer mogu postati otvoreni i tako se stvoriti ranjivosti. Administratori bi trebali razmotriti blokiranje njih pomoću vatrozida gdje bi oni tada postali filtrirani portovi.

3.3. Filtrirani portovi

Poslan je paket zahtjeva, ali domaćin nije odgovorio i ne sluša. To obično znači da je paket zahtjeva filtriran i / ili blokiran vatrozidom. Paketi ne dosežu svoje ciljno mjesto i stoga napadači ne mogu otkriti više informacija. Često odgovaraju porukama o pogreškama kao što su “nedostupno odredište” ili “zabranjena komunikacija“.

4. Tehnike skeniranja portova

Postoji nekoliko različitih tehnika skeniranja portova koje pakete šalju na odredišta. U nastavku su objašnjene neke od učestalijih tehnika skeniranja portova, kao i njihove razlike.

4.1. TCP

Pri TCP skeniranju portova, skener pošalje SYN poruku, tj. zahtjev za vezom. Ako je port otvoren, udaljeni sustav odgovara SYN-ACK (potvrdnom) porukom. Alat za skeniranje tada odgovara vlastitom ACK (potvrdnom) porukom. To se naziva potpunim rukovanjem TCP veze, te tako skener zna da sustav prihvaća veze na zahtijevanom priključku ako se dogodi ovaj postupak. Na slici 4.1. je prikazana razmjena poruka između klijenta i servera prilikom „full handshake-a“.

Slika 4.1 Prikaz TCP “full handshake-a”


Ako je port zatvoren, udaljeni sustav će odgovoriti RST (reset) porukom. U slučaju da udaljeni sustav jednostavno nije prisutan na mreži, neće biti odgovora.

4.2. SYN stealth

Neki skeneri izvode TCP poluotvoreno skeniranje. Umjesto da prođu kroz cijeli SYN, SYN-ACK, a potom i ACK ciklus, oni samo šalju SYN poruku i čekaju odgovor SYN-ACK ili RST. Ne treba poslati konačni ACK paket za dovršavanje veze, jer bi već SYN-ACK rekao skeneru sve što treba znati. Taj postupak je brži jer treba poslati manje paketa.

4.3. Idle

Idle je naziv za metodu skeniranja TCP priključaka koja se sastoji od slanja lažnih paketa na računalo kako bi se otkrilo koje su usluge dostupne. To se postiže lažnim predstavljanjem pomoću drugog računala zvanog “zombi” i promatranjem ponašanja “zombi” sustava.

Napadač će ispitivati javnog domaćina (zombi) sa SYN | ACK (potvrda sinkronizacije) porukom i primiti RST (resetiranje veze) odgovor koji sadrži trenutni IPID. Napadač će zatim poslati paket zahtjeva za SYN (sinkronizaciju) ciljanom portu s izvornim IP javnoga domaćina (zombija). Ako je ciljani port otvoren, poslat će SYN | ACK paket javnom hostu. Javni domaćin će tada poslati RST paket do cilja i povećati IPID. Ako je port zatvoren, poslat će RST paket javnom domaćinu koji pokazuje da je port zatvoren. Napadač će zatim poslati drugi SYN | ACK paket javnom hostu i pogledati IPID broj kako bi utvrdio da li se dogodilo slanje RST paketa do cilja i povećao IPID.

Nakon nekoliko stotina takvih lažnih zahtjeva za vezom, IDS (Sustav za otkrivanje upada) shvatit će da nešto skenira mrežu, te će s vremenom blokirati javnog domaćina (zombija). No uljez je i dalje uspio preslikati mrežu.

Veći problem ovakvog tipa skeniranja je ako je javni domaćin koji se koristi za skeniranje vaše interne mreže jedan od pouzdanih strojeva koji se nalazi ispred vatrozida. Međutim, moguće je mrežu zaštititi od ove vrste skeniranja. Na slikama 4.2 i 4.3. su prikazane dvije razine Idle skeniranja, tj. opisani postupak navedene metode.


Slika 4.2 Prva razina Idle skeniranja portova

Slika 4.3 Druga razina Idle skeniranja portova

4.4. FIN

Napadač koristi TCP FIN skeniranje kako bi utvrdio jesu li portovi zatvoreni na ciljnom računalu. Ova vrsta skeniranja postiže se slanjem TCP segmenata s FIN bitom postavljenim u zaglavlju paketa. Očekivano ponašanje (prema RFC 793) otvorenog porta je da se svaki neočekivani TCP segment poslan na otvoreni port odbacuje, dok oni koji se šalju u zatvorene portove trebaju dobiti poruku RST kao odgovor. Ovo ponašanje trebalo bi omogućiti napadaču da skenira portove slanjem određenih vrsta neočekivanih paketa i detektira zatvorene portove putem RST paketa. Uz svoju relativnu brzinu u usporedbi s drugim vrstama skeniranja, glavna prednost TCP FIN Scan je njegova sposobnost neprimjetnog skeniranja pri korištenju vatrozida ili ACL filtera. Takvi su filteri konfigurirani da blokiraju pristup portovima obično sprječavanjem SYN paketa, čime se zaustavlja svaki pokušaj izgradnje veze.

Mnogi operativni sustavi, međutim, ne implementiraju RFC 793 točno iz navedenog razloga. S takvim uređajima, FIN skeniranja ne funkcioniraju očekivano. Neki operativni sustavi, poput Microsoftovog Windows-a, šalju RST paket kao odgovor na bilo koji nepravilno oblikovani ili nesinkronizirani TCP segment (umjesto da ispuštaju paket preko RFC 793), na taj način sprečavajući napadača da razlikuje otvorene i zatvorene portove. FIN skeniranje je ograničeno rasponom platformi na kojima rade. Nadalje, s obzirom na to da se otvoreni portovi uspostavljaju bez odgovora, ne može se razlikovati otvoreni port od filtriranog priključka bez daljnje analize. FIN skeniranje je i dalje relativno prikriveno jer se paketi obično stapaju s pozadinskom bukom na mrežnoj vezi.

4.5. Xmas

Xmas skenovi su još tiši i manje uočljivi. Zato se i njih, čak i uz ne-prijeteći naziv, treba tretirati s oprezom kao što bi i bilo koje drugo mrežno skeniranje. Ovo skeniranje koristi rupu TCP RFC-a za razlikovanje otvorenih i zatvorenih portova.

„Očekivano ponašanje RFC 793 jest da se svaki TCP segment s postavljenom neočekivanom zastavicom poslan na otvoreni port odbacuje, dok segmenti s postavljenim neočekivanim zastavicama koji se šalju u zatvorene portove trebaju dobiti RST odgovore. Ovo ponašanje treba omogućiti napadaču skeniranje zatvorenih portova slanjem određenih vrsta neočekivanih paketa i otkrivanje zatvorenih portova putem RST paketa ”- CAPEC

Drugim riječima, Xmas skeniranje će s ciljem prepoznavanja portova poslati određeni paket. Ako je port otvoren na ciljnom sustavu, paketi će se zanemariti. Ako je zatvoren, primit će se poruka RST. Xmas skeniranja bila su popularna ne samo zbog njihove brzine u usporedbi s drugim skeniranjima, već i zbog sličnosti s FIN i ACK paketima koji lako zaobilaze vatrozidove i ACL filtere. Međutim, oni naiđu na probleme s različitim operativnim sustavima koji nisu u skladu s RFC 793. Ovi sustavi će poslati RST odgovor kad bilo koji nepravilno oblikovani segment TCP bude primljen, umjesto da ga samo ispuste. Napadačev je rezultat u tom slučaju neuspješan. Na slici 4.4. je Wireshark prikaz postavljenih zastavica PSH, URG i FIN, tj onih koje su uključene pri obavljanju Xmas skenova.

www.plixer.com_wp-content_uploads_2015_12_xmaswireshark.jpg

Slika 4.4. Wireshark prikaz postavljenih URG, PSH i FIN zastavica

4.6. Ping

Najjednostavnija metoda skeniranja portova naziva se ping skeniranje. Koriste se zahtjevi protokola internetske kontrole (ICMP). Ping skeniranja automatizirano šalju nekoliko ICMP zahtjeva na različite poslužitelje kako bi dobili odgovore. Administratori mogu upotrebljavati ovu tehniku za rješavanje problema ili onemogućivanje ping metode vatrozidom - što napadačima onemogućuje pronalaženje mreže ovim putem.

4.7. IP Protocol

Skeniranje IP protokola omogućuje određivanje koji IP protokoli (TCP, ICMP, IGMP itd.) su omogućeni kod ciljanog računala. Ovo skeniranje portova se kreće kroz brojeve IP protokola, a ne kroz TCP ili UDP brojeve portova.

Skeniranje se sastoji od slanja paketa s određenom vrstom protokola ciljnom računalu. Ako protokol nije aktivan, ciljni domaćin će odgovoriti paketom ICMP tipa. Ako je protokol aktivan, odgovora neće biti.

4.8. UDP

Moguće je i skeniranje UDP-a, iako postoje tehnički izazovi. UDP je protokol koji ne zahtijeva vezu pa nema ekvivalenta TCP SYN paketu. Međutim, ako se UDP paket pošalje portu koji nije otvoren, sustav će odgovoriti ICMP nedostupnom porukom. Većina skenera UDP porta upotrebljava ovu metodu skeniranja i koristi nepostojanje odgovora kako bi zaključilo da je port otvoren. Međutim, ako port blokira vatrozid, ova će metoda lažno prijaviti da je port otvoren. Na taj način će se svi portovi činiti otvorenima.

Alternativni pristup je slanje UDP paketa specifičnih za aplikaciju u nadi da će stvoriti odgovor aplikacijskog sloja. Na primjer, slanje DNS upita portu 53 rezultirat će odgovorom, ako je prisutan DNS poslužitelj. Ova je metoda mnogo pouzdanija u identificiranju otvorenih portova. Međutim, ograničena je pri skeniranju portova za koje je dostupan specifičan probni paket. Neki alati (npr. Nmap) općenito imaju probne pakete za manje od 20 UDP usluga, dok neki komercijalni alati imaju čak 70. U nekim slučajevima usluga može slušati na portu, ali isto tako biti konfigurirana da ne reagira na određeni probni paket.

5. Zaključak

Skeniranje porta korisno je za utvrđivanje ranjivosti sustava. Koriste ga cyber napadači, ali i organizacije pri testiranju razine sigurnosti vlastitog sustava. U svom najjednostavnijem obliku softver za skeniranje portova šalje zahtjev na svaki port, jedan po jedan. Ponašanjem udaljenog sustava se zaključuje je li port otvoren ili zatvoren.

Otvoreni i zatvoreni portovi upućuju napadače da se mreža zapravo nalazi na prijemnom kraju skeniranja. Cyber napadači tada mogu odrediti razinu sigurnosti i vrstu operacijskog sustava. Skeniranje porta stara je tehnika koja zahtijeva sigurnosne promjene i najnovije informacije o prijetnjama jer se protokoli i sigurnosni alati svakodnevno razvijaju. Upozorenja i vatrozidovi potrebni su za praćenje prometa na priključcima kako bi osigurali da zlonamjerni promet ne prepozna mrežu.

Dakle, skeniranje portova je osnovni sigurnosni alat kada je u pitanju prodor i osiguranje računalnih sustava. Ali ono je samo alat koji omogućuje napadačima da pronađu portove koji mogu biti ranjivi. Ne daju napadaču pristup sustavu, pa tako sigurnosno konfiguriran sustav može izdržati potpuno skeniranje portova bez ikakve štete.

6. Literatura

[1] All about port scanning, Defined, What it Does, How a Port Scan is Used, [Online]

https://smb.avast.com/answers/port-scanning-techniques-and-explanations

[2] HTG Explains: What is Port Scanning, [Online], 14.10.2018.

https://www.howtogeek.com/369506/htg-explains-what-is-port-scanning/

[3] Defend our network from idle scanning, [Online],13.9.2007.

https://www.techrepublic.com/blog/it-security/defend-your-network-from-idle-scanning-86384/

[4] CAPEC-302: TCP FIN Scan, [Online], 30.9.2019.

https://capec.mitre.org/data/definitions/302.html

[5] Understanding Xmas Scans, [Online], 23.12.2015.

https://www.plixer.com/blog/understanding-xmas-scans/

[6] Idle scan, [Online], 8.8.2019.

https://en.wikipedia.org/wiki/Idle_scan

[7] TCP Series #1: How to Diagnose TCP Connection Setup Issues?, [Online], 15.2.2017.

https://accedian.com/enterprises/blog/diagnose-tcp-connection-setup-issues/

[8] 8 Port Scanner Tools for Network Administrator, [Online], 30.3.2019.

https://geekflare.com/port-scanner-tools/

Sažetak

Skeniranje portova uključuje slanje i primanje paketa od/do ciljanog porta. Cyber napadači često koriste skeniranje portova kao preliminarni korak pri ciljanju mreža. Napadači ispituju mreže i sustave kako bi vidjeli kako će svaki port reagirati, tj. da li je on otvoren, zatvoren ili filtriran. Isto tako, skeniranje portova provode i organizacije kako bi ispitale i poboljšale razinu sigurnosti vlastitog sustava.
Jednostavno skeniranje portova gdje softver traži podatke o svakom ulazu, jedan po jedan, lako je uočiti. Mrežni vatrozidi mogu se konfigurirati tako da otkriju i zaustave ovo ponašanje. Zato neke tehnike skeniranja portova djeluju drugačije. Na primjer, može se skenirati manji raspon portova ili čitav raspon portova u mnogo dužem razdoblju kako bi ga bilo teže otkriti.

TCP skeniranje uspostavlja vezu obavljanjem „full handshake-a“, tj šalje poruku SYN, te ako primi SYN-ACK, odgovara s ACK. Polu otvoreno skeniranje ili SYN stealth skeniranje šalje samo SYN (sinkronizacijsku) poruku i ne dovršava vezu, ostavljajući ciljano odredište bez odgovora. To je brza i lukava tehnika usmjerena na pronalaženje potencijalnih otvorenih portova na uređajima. Idle tehnika skeniranja koristi drugo računalo, tzv. zombi sustav, kako bi se skenirao ciljani port.

Druge vrste skeniranja uključuju slanje neznanih, nepravilno oblikovanih vrsta paketa i čekaju da udaljeni sustav vrati RST paket koji zatvara vezu. Ako to uspije, skener zna da na tom mjestu postoji udaljeni sustav i da je na njemu zatvoren jedan određeni ulaz. Ako nije primljen nijedan paket, skener zaključuje da je port biti otvoren. Neke od takvih tehnika su FIN i Xmas skeniranje. Xmas skeniranje je dobilo svoje ime zbog skupa zastava koje su uključene u paketu. Ponekad FIN pakete (poruka koja znači da “pošiljatelj više nema dostupnih podataka”) vatrozid ne primijeti jer uglavnom traži SYN pakete. Zato su Xmas skeniranja dizajnirana da manipuliraju PSH, URG i FIN zastavama TCP zaglavlja. Ovo je jednostavno lukaviji način da se sazna o zaštiti mreže i vatrozidu jer se ovo skeniranje rijetko pojavljuje u zapisnicima. Uz navedene učestale tehnike skeniranja, postoje i mnoge druge, poput Ping, IP Protocol i UDP skeniranja.

Keywords: port; skeniranje; TCP; UDP; napadači

racfor_wiki/mrezna_forenzika/skeniranje_portova.txt · Zadnja izmjena: 2023/06/19 18:17 (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