Spoznajte svoju sieť naruby pravidelným kontrolovaním otvorených portov pomocou týchto príkazov Linuxu.
Otvorené sieťové porty sú najjednoduchšie vstupné body do vašej siete. Niekedy môžu existovať nechcené služby spustené na portoch, ktoré sú externe viditeľné z internetu. V prípade, že sú tieto služby zraniteľné, vaša sieť by bola neustále ohrozená útokom, pretože každý deň je celý internet hromadne prehľadávaný na prítomnosť zraniteľných služieb na otvorených portoch.
Zistite, ako môžete skenovať a zobraziť otvorené porty na systémoch Linux, aby ste mohli chrániť svoju sieť pred hrozbami.
Čo sú sieťové porty?
Sieťové porty sú logické prístupové body vášho systému, ktoré možno použiť ako kanál na hosťovanie viacerých služieb. Port je reprezentovaný 16-bitovým celým číslom, takže najvyššie číslo portu je 65535.
Môžete si predstaviť porty ako okná a dvere domu – v podstate všetky rôzne vstupné body do domu alebo počítača. Porty sú troch typov: systémové porty (1-1023), registrované porty (1024-49151) a efemérne alebo dynamické porty (49152-65535).
Keď spustíte aplikáciu, ktorá vyžaduje pripojenie na internet, používa dynamické porty na prenos a príjem dát cez sieť. Keď však spustíte webový server alebo server SSH, zvyčajne sa naviaže na systémové porty alebo registrované porty.
Pre webové servery obsluhujúce HTTP je predvolený systémový port 80 a pre SSH je to 22. Tieto predpisy, ako napríklad rozsahy portov, vypracovala organizácia IANA (Internet Assigned Numbers Authority). Môžete prejsť cez RFC týkajúce sa portov získať úplný zoznam všetkých portov a ich funkcií.
Je dôležité, aby ste vedeli najčastejšie zraniteľné porty aby ste sa mohli uistiť, že sú zatvorené alebo chránené.
1. Skontrolujte otvorené porty pomocou netstat
netstat je populárny nástroj, ktorý môžete použiť na zobrazenie sieťových štatistík vášho systému Linux. Je súčasťou balíka net-tools.
Balík net-tools je teraz odpísaný z dôvodu nedostatočnej údržby zo strany vývojára. To je aj dôvod, prečo sa môžete stretnúť chyba "ifconfig: príkaz nenájdený". pri spustení obľúbeného príkazu ifconfig v systéme Linux.
Takže na moderných systémoch možno budete musieť najprv nainštalovať balík net-tools a potom budete môcť spustiť príkaz netstat. Tu je postup, ako skontrolovať otvorené porty pomocou netstat:
netstat -tuln
Vysvetlenie príkazu:
- -t zobrazuje porty TCP.
- -u zobrazuje UDP porty.
- -l zobrazuje počúvacie porty. Nahraďte toto za a ak chcete vidieť všetky prístavy bez ohľadu na ich stav.
- -n zobrazuje číselnú hodnotu portov namiesto rozlíšenia na názvy služieb. Napríklad namiesto SSH zobrazte port 22, t. j. službu spustenú na porte.
2. Skontrolujte otvorené porty pomocou ss
ss je moderný ekvivalent nástroja netstat. Toto nájdete predinštalované vo všetkých moderných distribúciách Linuxu. Syntax na kontrolu otvorených portov pomocou ss je identická so syntaxou netstat.
Tu je postup, ako skontrolovať otvorené porty pomocou ss:
ss -tuln
Vysvetlenie príkazu:
- -t zobrazuje porty TCP.
- -u zobrazuje UDP porty.
- -l zobrazuje počúvacie porty. Nahraďte toto za a ak chcete vidieť všetky prístavy bez ohľadu na ich stav.
- -n zobrazuje číselnú hodnotu portov namiesto rozlíšenia na názvy služieb. Napríklad namiesto FTP zobrazte port 21, t. j. službu spustenú na porte.
3. Skontrolujte otvorené porty pomocou Nmap
Nmap je jedným z najpopulárnejších nástrojov v oblasti kybernetickej bezpečnosti a sietí. Je to bežné meno, pokiaľ ide o penetračné testovanie bezpečnosti siete. Jeho primárnym prípadom použitia je skenovanie portov, takže nielenže získate informácie o portoch otvorených vo vašom systéme, ale aj o tom, či sú zraniteľné a zneužiteľné.
Navyse, ak chcete skontrolovat otvorene porty vo vzdialenom systeme s nastavenym IDS/IPS a firewallmi, nerobte si starosti, pretoze Nmap dokaze obist aj firewally a IDS/IPS so spravnymi prepinacmi.
Pozrite si toto komplexný sprievodca Nmapom pre začiatočníkov preskúmať rôzne funkcie Nmap a ako ich používať. Aj ked mozes, neodporuca sa skusat a obchadzat firewally, pretoze to nie je uplne spolahlive, takze je najlepsie, ked si SSH na vzdialeny server a potom na nom spustis Nmap lokalne.
Tu je príkaz na kontrolu otvorených portov pomocou Nmap:
nmap -sTU -sV -T 5 --min.rýchlosť 9000 --min.paralelnosť 9000 --počiatočný-rtt-timeout 50ms --max-rtt-timeout 3000ms --max-retries 50 -Pn --disable-arp-ping -n -- script vuln, exploit, auth -v -oX
Vysvetlenie príkazu:
- -sTU nastaví typ skenovania na TCP Connect a UDP sken.
- -T 5 nastaví šablónu načasovania na agresívnu pre bleskovo rýchle skenovanie (neodporúča sa na nechránenom systéme, pretože to môže viesť k útoku DoS).
- -sV zapne servisné skenovanie.
- --minimálna sadzba 9000 povie Nmapu, aby odoslal 9000 paketov za sekundu.
- --initial-rtt-timeout 50 ms povie Nmapu, aby na začiatku počkal 50 ms na odpoveď na každý SYN paket, ktorý odošle.
- --max-rtt-timeout 3000 ms povie Nmap, aby na odozvu počkal maximálne 3000 ms.
- --min-paralelnosť 9000 nastaví minimálny počet simultánnych spustení skriptu na 9000.
- --maximálny počet opakovaní 50 povie Nmap, aby sa 50-krát pokúsil o pripojenie k portu.
- -Pn deaktivuje ping sondovanie.
- --disable-arp-ping deaktivuje sondovanie ARP.
- -n deaktivuje rozlíšenie DNS.
- --script vuln, exploit, auth spúšťa tri skripty na testovanie rôznych typov zraniteľností v objavených portoch.
- -v vráti podrobný výstup.
- -vôl uloží výsledky do súboru XML.
- -6 Voliteľný parameter na skenovanie adries IPv6.
4. Skontrolujte otvorené porty pomocou lsof
Príkaz lsof v systéme Linux sa používa na zobrazenie zoznamu otvorených súborov. Ak k nemu však pridáte niekoľko prepínačov, budete môcť vidieť otvorené internetové pripojenia a porty na vašom lokálnom počítači. Tu je postup, ako skontrolovať otvorené porty pomocou lsof:
lsof -i -n
Vysvetlenie príkazu:
- -i zoznam všetkých sieťových a internetových súborov.
- -n nerozlišuje názvy hostiteľov.
5. Skontrolujte otvorené porty pomocou netcat
netcat je nástroj príkazového riadka, ktorý vám umožňuje čítať a zapisovať za do pripojení TCP/UDP. Všimnite si, že toto je len jedna vlastnosť netcat. Jeho manuálovú stránku si môžete pozrieť pomocou muž netcat preskúmať všetky jeho funkcie a ako ich používať.
Tu je návod, ako môžete použiť netcat na skenovanie otvorených portov:
nc -zv | grep -v "odmietla"
Vysvetlenie príkazu:
- -z nastaví netcat do režimu skenovania.
- -v vráti podrobný výstup.
- grep -v "odmietla" vráti výstupné riadky bez slova „odmietnuté“. Toto má zabrániť zaneseniu terminálu správami „spojenie odmietnuté“, keď netcat nedostane žiadny výstup z portu.
- 2>&1: Toto je voliteľný prepínač, ktorý možno budete musieť zapnúť, aby grep fungoval pri spustení netcat v podrobnom režime. netcat vráti výstup do stderr (označeného 2). Takže ak chcete výstup grepu, museli by ste presmerovať stderr na stdout (označený 1) a potom ho presmerovať do grep.
Čím hlbšie poznáte svoju sieť, tým lepšie ju môžete brániť
Vedieť, ktoré porty sú otvorené a aké služby sú spustené vo vašom systéme, je skvelým krokom k jeho ochrane pred potenciálnymi vonkajšími útokmi. To vám umožní vyhľadať a vypnúť nepotrebné služby, nájsť zastarané služby a tiež zistiť, či sú na vašom počítači spustené nejaké škodlivé súbory, ako napríklad backdoors bind alebo reverzné shell systém.
Ak to s bezpečnosťou siete myslíte vážne, mali by ste zvážiť inštaláciu a nastavenie riešenia IDS na monitorovanie všetkej aktivity vo vašej sieti a uplatňovanie množín pravidiel, aby ste zabránili nevyžiadaným pripojeniam.