Skanimi dhe identifikimi

Ne kete paper do te trajtojme skanimin e nje hosti ne nje network, te gjejm portat qe perdor dhe te identifikojme sistemin e operimit qe perdor.
Ky pikerisht eshte hapi i dyte pasi kemi mbledhur informacione publike nga footprinting.
Nmap eshte nje nga toolset me te kompletuar dhe te mir per tu perdorur per kete qellim.
Ai eshte free kshu qe mund ta shkarkoni nga faqja zyrtare keni dhe version GUI per windows.

Para se te fillojm doja te benim nje permbledhje te shkurter mbi procesin e lidhjes TCP. Ato te cilet jane te informuar nga kjo ane mund te kalojne me poshte 😉
Kur nje lidhje TCP realzohet midis dy sistemeve, nje cikel i njohur “three way handshake” kryhet, Kjo perfshin shkembimin e 3 paketave dhe sinkronizimin e sistemeve me njeri tjetrin.
Sistemi i cili nis lidhjen dergon nje pakete sistemit me te cilin do qe te lidhet. Paketat TCP kane nje pjese (header) me nje fushe qe percakton “flamurin” (tipin e paketes)
Ketu do flasim per 6 tipat e mundshme te paketave, te cilat jane :
1. SYN (Synchronise) – permbajne nje numer sekuence te TCP, te cilat e njohin sistemin remote, se cilen sekuence te perdor per lidhjen pasardhese.
2. ACK (Acknowledge) – njehuri mbi marrjen dhe futjen e paketave.
3. FIN (Finished) – dergohet kur lidhja ka perfunduar
4. RST (Reset) – dergohet kur lidhja eshte per tu rikrijuar.
5. URG (Urgent) – do te thote qe segementi permban data urgjente
6. PUSH (Push)  – i tregon krahut qe po merr ne lidhjen TCP qe duhet te njoftoj procesin e marrjes per kete fakt.
Per te nisur nje lidhje TCP, sistemi qe fillon lidhjen dergon nje pakete SYN tek destinacioni, kjo e fundit do te dergoj nje pakete SYN nga ana e saj dhe nje ACK e cila do te njoftoj per ardhjen e paketes se pare.
Keto jane te kombinuara ne nje pakete te vetme SYN/ACK. Mbas kesaj sistemi i pare dergon nje pakete ACK per te informuar qe SYN/ACK arriti me sukses dhe qe mund te filloj shkembimi. Ky informacion do ju duhet per me poshte 😉

Ping
Menyra me e shpejte per te percaktuar nese nje host eshte “gjall” apo jo eshte te ping-ojme ate.
Kemi dy menyra pingimi me ane te nmap:
1. Dergojme nje kerkes echo ICMP, e cila ben qe ti kthehet si pergjigje nje paket ICMP. Nje host mund te konfigurohet qe mos ti pergjigjet
ketyre kerkesave kshuqe nuk eshte e then qe ai te mos jet “gjall” 😀 .

nmap -sP 192.168.1.*          – ne kete menyre do te pingojme te gjitha hostet

2. Per te verifikuar nqs jan bllokuar kerkesat ICMP apo eshte ne te vertet hosti down, bejm nje TCP Ping.
Nje tcp ping dergon nje paket SYN apo ACK te nje porte e caktuar (80 porta default) tek sistemi qe po skanojme.
Nqs nje RST apo nje SYN/ACK thehet atehere sistemi remote eshte online. Nqs jo atehere mund te jete offline ose porta e caktuar eshte e filtruar.

nmap -PT porta_qe_do_te_dergohet_paketa destinacioni

Per te ndaluar TCP ping apo ICMP ping mund te perdorim nje firewall te mir-konfiguruar.

Skanimi i portave
Eshte procesi i lidhjes me portat UDP dhe TCP te nje hosti per te percaktuar cilat porta jan hapur ne pritje te lidhjeve.
Skanimi mund te realizohet ne rrug te ndryshme. Keto qe paraqes me poshte jane me te perdorshmet:

1. Lidhje me ane te TCP.
Sic njihet TCP connect() scan, e ka marr emrin nga socket e programimit te UNIX e cila perdor nje thirrje te sistemit, connect()
per te realizuar nje lidhje me hostin. Nqs connect() realizohet me sukses lidhja realizohet, Nqs jo lidhja nuk realizohet, serveri mund te jete offline, porta mund te jete e mbyllur
apo mund te ket ndonje problem tj gjat rruges. Krijohet lidhja nje nga nje me portat kryesore ose nqs duam me te gjitha portat dhe per ato porta qe realizohet lidhja klasifikohen te hapura
te tjerat te mbyllura.
Gjeja e keqe eshte se kjo i regjistron ip derguese dhe indetifikohesh shpejte. Gjithsesi ky lloj skanimi mund te realizohet me ane te komandes -sT ne nmap.

2. Skanimi TCP SYN.
Ky tip skanimi ben qe te dergohet nje pakete SYN ne host. Nqs hosti eshte duke pritur lidhje ne nje porte te caktuar atehere kthen nje pakete SYN+ACK. Nqs hosti eshte online dhe nuk eshte ne pritje
ne ate porte atehere dergon nje pakete RST dhe nqs eshte e filtruar atehere nuk dergohet asgje. Kjo eshte rruga qe ndjek nmap per te skanuar. Ne kete rast nuk perfundohet i gjith cikli three-way handshake. Kjo menyre eshte e pakapshme(e fshehur) derisa nuk logohet nga hosti xD .

nmap -sS destinacioni -g porta – nqs firewall ka bllokuar ndonje porte.

3. Skanimi me ane te paketes FIN
Ne kete metode dergohet nje pakete FIN ne hostin qe do te skanojme. Nqs hosti eshte online por nuk eshte ne pritje ne nje porte te caktuar
atehere ai pergjigjet me nje pakete RST, perndryshme nqs nuk eshte ne pritje ne ate porte atehere nuk kthen pergjigje. Duhet te keni parasysh qe ne Windows perher hosti dergon nje paket RST. Kjo eshte ne interes per te
percaktuar sistemin operativ, por eshte me thjesht me fingerprining qe do te shohim me poshte.
Gjithashtu FIN dhe skanime te tj qe do te shohim me poshte jan e nevojshme per te shmangur firewall dhe IDS te cilat perqendrohen shumicen e rasteve tek paketat SYN.
Komanda per te realizuar FIN SKAN :
nmap -sF destinacioni

4. Skanimi me XMAS
Kjo metode skanimi perfshin dergimin e paketes TCP me flamujte FIN, URG, PUSH. Atehere nqs hosti eshte ne pritje ne nje porte te caktuar atehere kthen nje pakete RST, nqs jo atehere nuk kthen pergjigje.
Paketat FIN jane normalisht te perdorura per te hedhur posht nje lidhje TCP te realizuar.
Komanda: nmap -sX destinaioni

5. Skanimi NULL
Atehere, dergohet nje paket TCP me asnje flamur te inseruar ne header…Nqs hosti eshte ne pritje ne nje porte te caktuar atehere nuk kthen pergjigje, ne te kundert dergon nje pakete RST.
Komanda: nmap -sN desinacioni

6. Skanimi RPC
Ky lloj skanimi dergon paketa NULL ne menyre qe te kontrolloj nqs nje porte e caktuar eshte port RPC (remote procedure call) apo jo. Gjithashtu percakton programin dhe versionin.
Komanda: nmap -sR destinacioni

7. Skanimi IP Protocol
Ky lloj skanimi krontrollon protokollet te cilat jan te suportuara ne hostin qe po skanojme.
Komanda: nmap -sO destinacioni

8. Skanimi Window
Ky tip skanimi, eshte i ngjashem me ate ACK, shpesh na ndihmon te gjejme portat e hapura, te filtruara , jo te filtruara ne nje sistem.
Perdoret per te pecaktuar dhe OS e hostit, nje list te mir per te ber krahasime mund ta gjejm ne google.
Komanda: nmap -sW destinacioni

9. Skanimi UDP
Per te percakuar nqs nje host eshte ne pritje ne nje porte te caktuar UDP, nje pakete UDP dergohet ne ate porte. Nqs hosti nuk eshte ne pritje atehere nje paket ICMP na dergohet nga hosti.
Perndryshe nqs hosti eshte ne pritje ne nje port te caktuar atehere nuk dergohet asnje lloj pakete.
Komanda: nmap -sU destinacioni

10. Skanimi Idle
Skanimi Idle eshte nje skanim i avancuar, ku paketat te cilat dergojme ne hostin qe skanojme nuk mund te identifikojne sistemin qe po ben skanimin.
Nje host zombi mund te percaktohet per te ber kete skanim. Ky host zombi duhet fillimisht te plotesoj disa kritere qe te na realizohet skanimi.
Ky tip skanimi funksionon duke exploit-uar sekuencat IP ID te gjeneruara ne hostin zombi per te percaktuar portat e hapura ne hostin qe do te skanojme.
Ne fillim sqarojme…C’eshte IPID Cdo pakete ne internet ka nje ID identifikimi nje nr. Shume sisteme operative thjeshte e shtojne kete nr me  1 per cdo pakete qe dergojme.Duke kontrolluar me kujdes IPID, nje person qe po realizon skanimin mund te marri informacion sesa paketa jane derguar nga kontrolli i fundit.
Skanimi kontrollon IPID tek zombi dhe realizon nje lidhje me nje host qe do te skanohet, duke e ber ate te duket sikur vjen nga zombi 😀
Nqs porta qe skanohet eshte hapur nje SYN/ACK kthehet nga hosti qe po skanohet tek zombi :D, dhe ky i fundit ben reset lidhjes (RST) sepse ai nuk ka asnje lidhje me par ne memorje. Nqs porta eshte e mbyllur nje RST dergohet tek zombi dhe asnje paket tj nuk dergohet.
Atehere cfare bejm ne…Ne shkojme e kontrollojme IPID pasi e kemi kontrolluar njeher ne fillim. Nqs ajo eshte rritur me nje atehere porta eshte mbyllur sepse nuk i ka khyr pergjigje hostit qe skanojme dmth hosti ka derguar nje paket RST. Rritjen me e ka ber lidhja qe kemi kryer ne per te marr IPID.
Rasti dyte eshte kur rritet IPID me 2 ne kete rast nje paket eshte derguar tek ne dhe nje paket eshte derguar tek hosti qe po skanojme dmth, hosti i ka derguar nje SYN/ACK dhe zombi eshte pergjigjur me RST :D. Ne kete rast kemi porte te hapur, jo 100% e sigurte por ka shume shume mundesi. Rasti 3 eshte kur kemi rritje me me shum se 2 atehere hosti zombi
qe po perdorim nuk eshte per kete pune sepse ka shum trafik.
Komanda: nmap -sI zombi destinacioni

Nje her tj do te trajtojme kohen e dergimit te paketave, fingerprinting, skanime te fshehta si ne rastin e idle 😉
shpresoj te jete sa me teper informative :) .