Cunoașteți-vă rețeaua pe dinafară verificând regulat dacă există porturi deschise cu aceste comenzi Linux.
Porturile de rețea deschise sunt cele mai ușoare puncte de intrare în rețea. Uneori, pot exista servicii nedorite care rulează pe porturi care sunt vizibile extern de pe internet. În cazul în care aceste servicii sunt vulnerabile, rețeaua dvs. ar fi amenințată constant cu un atac, deoarece în fiecare zi întregul internet este scanat în masă pentru servicii vulnerabile pe porturi deschise.
Aflați cum puteți scana și vizualiza porturile deschise pe sistemele dvs. Linux, astfel încât să vă puteți apăra rețeaua de amenințări.
Ce sunt porturile de rețea?
Porturile de rețea sunt puncte de acces logice ale sistemului dvs. care pot fi utilizate ca canal pentru a găzdui mai multe servicii. Un port este reprezentat de un număr întreg de 16 biți, astfel încât cel mai mare număr de port este 65535.
Vă puteți gândi la porturi precum ferestrele și ușile unei case - practic toate punctele de intrare diferite către o casă sau un computer. Porturile sunt de trei tipuri: porturi de sistem (1-1023), porturi înregistrate (1024-49151) și porturi efemere sau dinamice (49152-65535).
Când porniți o aplicație care necesită conexiune la internet, aceasta utilizează porturi dinamice pentru a transmite și a primi date prin rețea. Cu toate acestea, atunci când porniți un server web sau un server SSH, acesta se leagă de obicei la porturile de sistem sau la porturile înregistrate.
Pentru serverele web care deservesc HTTP, portul implicit de sistem este 80, iar pentru SSH este 22. Aceste reglementări, cum ar fi gamele de porturi, sunt dezvoltate de Internet Assigned Numbers Authority (IANA). Puteți trece prin RFC referitor la porturi pentru a obține o listă completă cu toate porturile și funcțiile acestora.
Este important să cunoști cele mai frecvente porturi vulnerabile astfel încât să vă puteți asigura că sunt închise sau protejate.
1. Verificați porturile deschise cu netstat
netstat este un utilitar popular pe care îl puteți folosi pentru a vizualiza statisticile de rețea ale sistemului dumneavoastră Linux. Face parte din pachetul net-tools.
Pachetul net-tools este acum amortizat din cauza lipsei de întreținere adecvată din partea dezvoltatorului. Acesta este și motivul pentru care vă puteți întâlni o eroare „ifconfig: comandă nu a fost găsită”. când rulați populara comandă ifconfig pe Linux.
Deci, pe sistemele moderne, ar putea fi necesar să instalați mai întâi pachetul net-tools și apoi veți putea rula comanda netstat. Iată cum să verificați dacă există porturi deschise cu netstat:
netstat -tuln
Explicația comenzii:
- -t afișează porturile TCP.
- -u afișează porturile UDP.
- -l arată porturile de ascultare. Înlocuiește asta cu A dacă doriți să vedeți toate porturile, indiferent de starea lor.
- -n arată valoarea numerică a porturilor în loc să se rezolve la nume de servicii. De exemplu, afișați portul 22 în loc de SSH, adică serviciul care rulează pe port.
2. Verificați porturile deschise cu ss
ss este echivalentul modern al instrumentului netstat. Veți găsi acest lucru preinstalat în toate distribuțiile Linux moderne. Sintaxa pentru a verifica porturile deschise cu ss este identică cu netstat.
Iată cum să verificați dacă există porturi deschise cu ss:
ss -tuln
Explicația comenzii:
- -t afișează porturile TCP.
- -u afișează porturile UDP.
- -l arată porturile de ascultare. Înlocuiește asta cu A dacă doriți să vedeți toate porturile, indiferent de starea lor.
- -n arată valoarea numerică a porturilor în loc să se rezolve la nume de servicii. De exemplu, afișați portul 21 în loc de FTP, adică serviciul care rulează pe port.
3. Verificați dacă există porturi deschise cu Nmap
Nmap este unul dintre cele mai populare instrumente în securitatea cibernetică și rețele. Este un nume de bază atunci când vine vorba de testarea de penetrare a securității rețelei. Cazul său de utilizare principal este scanarea portului, astfel încât nu numai că veți obține informații despre porturile deschise în sistemul dvs., ci și dacă acestea sunt vulnerabile și exploatabile.
În plus, dacă doriți să verificați porturile deschise într-un sistem la distanță cu IDS/IPS configurat și firewall-uri instalate, nu vă faceți griji, deoarece Nmap poate ocoli și firewall-urile și IDS/IPS cu comutatoarele potrivite.
Verifica asta ghid cuprinzător despre Nmap pentru începători pentru a explora diversele caracteristici ale Nmap și cum să le folosiți. Deși puteți, nu este recomandat să încercați și să ocoliți firewall-urile, deoarece nu este pe deplin de încredere, așa că cel mai bine este să faceți SSH pe serverul de la distanță și apoi să rulați Nmap pe acesta local.
Iată comanda pentru a verifica porturile deschise cu Nmap:
nmap -sTU -sV -T 5 --min-rate 9000 --min-paralelism 9000 --initial-rtt-timeout 50ms --max-rtt-timeout 3000ms --max-retry 50 -Pn --disable-arp-ping -n -- script vuln, exploit, auth -v -oX
Explicația comenzii:
- -sTU setează tipul de scanare la TCP Connect și UDP scan.
- -T 5 setează șablonul de sincronizare la agresiv pentru scanări extrem de rapide (nu este recomandat pe un sistem neprotejat, deoarece poate duce la un atac DoS).
- -sV activează scanarea serviciului.
- --rată minimă 9000 îi spune Nmap să trimită 9000 de pachete pe secundă.
- --initial-rtt-timeout 50ms îi spune Nmap să aștepte inițial 50 ms pentru un răspuns la fiecare pachet SYN pe care îl trimite.
- --max-rtt-timeout 3000ms îi spune Nmap să aștepte maxim 3000 ms pentru un răspuns.
- --min-paralelism 9000 setează numărul minim de rulări simultane de scripturi la 9000.
- --max-reîncercări 50 îi spune Nmap să reîncerce de 50 de ori să se conecteze la un port.
- -Pn dezactivează sondarea ping.
- --disable-arp-ping dezactivează sondarea ARP.
- -n dezactivează rezoluția DNS.
- --script vuln, exploit, auth rulează trei scripturi pentru a testa diferite tipuri de vulnerabilități în porturile descoperite.
- -v returnează o ieșire detaliată.
- -bou salvează rezultatele într-un fișier XML.
- -6 Parametru opțional pentru scanarea adreselor IPv6.
4. Verificați porturile deschise cu lsof
Comanda lsof în Linux este folosită pentru a lista fișierele deschise. Cu toate acestea, dacă îi adăugați câteva comutatoare, veți putea vedea conexiunile și porturile de internet deschise pe computerul dvs. local. Iată cum să verificați dacă există porturi deschise cu lsof:
lsof -i -n
Explicația comenzii:
- -i listează toate fișierele de rețea și de internet.
- -n nu rezolvă numele de gazdă.
5. Verificați dacă există porturi deschise cu netcat
netcat este un utilitar de linie de comandă care vă permite să citiți și să scrieți din și către conexiunile TCP/UDP. Rețineți că aceasta este doar o caracteristică a netcat. Puteți consulta pagina sa de manual folosind om netcat comandă pentru a explora toate caracteristicile sale și cum să le folosești.
Iată cum puteți utiliza netcat pentru a scana porturile deschise:
nc -zv | grep -v „a refuzat”
Explicația comenzii:
- -z setează netcat în modul scaner.
- -v returnează o ieșire detaliată.
- grep -v „a refuzat” returnează liniile de ieșire fără cuvântul „refuzat”. Acest lucru este pentru a preveni blocarea terminalului cu mesaje „conexiune refuzată” atunci când netcat nu primește nicio ieșire de la un port.
- 2>&1: Acesta este un comutator opțional pe care ar putea fi necesar să-l porniți pentru ca grep să funcționeze când rulați netcat în modul verbose. netcat returnează ieșirea la stderr (notat cu 2). Deci, pentru a grep ieșirea, ar trebui să redirecționați stderr la stdout (notat cu 1) și apoi să îl redirecționați în grep.
Cu cât vă cunoașteți mai profund rețeaua, cu atât o puteți apăra mai bine
A ști ce porturi sunt deschise și ce servicii rulează pe sistemul tău este un pas excelent pentru a-l apăra de potențialele atacuri externe. Acest lucru vă permite să căutați și să închideți servicii inutile, să găsiți servicii învechite și, de asemenea detectați dacă există fișiere rău intenționate, cum ar fi ușile din spate bind sau reverse shell care rulează pe dvs sistem.
Dacă sunteți serios în ceea ce privește securitatea rețelei, ar trebui să luați în considerare instalarea și configurarea unei soluții IDS pentru a monitoriza toată activitatea din rețea și pentru a aplica seturile de reguli pentru a preveni conexiunile nesolicitate.