Přejít na obsah

Kontrola otevřených portů

Zjistěte, jestli jsou na vašem serveru z internetu dostupné rizikové služby, jako je vzdálená plocha (RDP), sdílení souborů (SMB) nebo SSH. Zkontrolujeme 10 běžných portů a vysvětlíme, co s výsledkem dělat.

Načítáme ověření…

Co kontrola ověřuje

Každá služba, která na serveru naslouchá na síťovém portu, je možný vstup pro útočníka. Web na portech 80 a 443 do internetu patří, vzdálená plocha nebo sdílení souborů většinou ne. Kontrola ukáže, které z deseti běžných portů jsou na vašem serveru dostupné z internetu.

Sken neprovádíme sami. U domény nejdřív zjistíme její IPv4 adresu, ověříme, že je adresa veřejná, a předáme jen ji službě HackerTarget (australská společnost). Ta na ni ze svých serverů v tu chvíli spustí nástroj nmap. Výsledek tedy nepochází z databáze starších skenů jako u Shodanu nebo Censysu, ale odpovídá stavu v okamžiku kontroly, jak ho vidí servery HackerTarget.

Kontrolujeme těchto 10 TCP portů:

  • 21 FTP a 23 Telnet – starší protokoly pro přenos souborů a vzdálenou správu, které posílají hesla nešifrovaně.
  • 22 SSH – šifrovaná vzdálená správa, typicky linuxových serverů.
  • 25 SMTP, 110 POP3 a 143 IMAP – příjem a výběr pošty.
  • 80 HTTP a 443 HTTPS – web.
  • 445 SMB – sdílení souborů a tiskáren ve Windows.
  • 3389 RDP – vzdálená plocha Windows.

Jak číst výsledek

Nástroj vypíše jen porty ve stavu otevřený, tedy ty, na kterých server přijal spojení a nějaká služba na nich naslouchá. Port, který v seznamu chybí, je buď zavřený (server spojení odmítl), nebo filtrovaný (firewall spojení tiše zahodil). Tyto dva stavy nástroj nerozlišuje, z pohledu bezpečnosti jsou ale oba v pořádku.

Název služby přebíráme z výstupu nástroje nmap. Může jít jen o odhad podle čísla portu, proto si na serveru ověřte, co na portu skutečně běží. Pokud sken uvede i verzi služby, nástroj ji zobrazí pod jejím názvem. Je to údaj, který o sobě služba sama hlásí, ne ověřený fakt. Otevřený port také sám o sobě neznamená zranitelnost: rozhoduje, jestli tam služba má být, jestli je aktuální a jak chrání přihlášení.

Port   Služba          Stav
22     ssh             Otevřený
80     http            Otevřený
443    https           Otevřený
3389   ms-wbt-server   Otevřený
  • 80 a 443 jsou u webového serveru v pořádku. Port 80 by měl jen přesměrovat na HTTPS.
  • 22 SSH může zůstat dostupné, pokud se přihlašuje jen klíčem, server je aktualizovaný a nejlépe je přístup omezený na známé IP adresy.
  • 3389 (ms-wbt-server) je vzdálená plocha Windows. Útočníci na ni nepřetržitě zkoušejí hesla a patří k nejčastějším cestám k ransomwaru. Přímo z internetu by dostupná být neměla, jen přes VPN nebo bránu s vícefaktorovým ověřením.
  • 445 (microsoft-ds) je SMB. Do internetu nepatří nikdy, právě přes něj se v roce 2017 šířil WannaCry.
  • 21 FTP a 23 Telnet posílají hesla i data nešifrovaně. Nahraďte je SFTP a SSH.
  • 25 potřebuje jen poštovní server, který přijímá e-maily. POP3 a IMAP na portech 110 a 143 začínají nešifrovaně, bezpečnější jsou porty 995 a 993 se šifrováním od začátku spojení.
  • Databáze, například MySQL 3306, PostgreSQL 5432, MS SQL 1433, Redis 6379 nebo MongoDB 27017, tento nástroj nekontroluje. Z internetu by ale dostupné být neměly.

Co dělat s nalezenou službou

  1. Zjistěte, co na portu běží

    Naslouchající služby na serveru vypíšete příkazem ss -tlnp (Linux) nebo netstat -ano (Windows). U každé si ujasněte, kdo ji používá a jestli musí být dostupná z celého internetu.

  2. Nepotřebné služby vypněte

    Co nikdo nepoužívá, vypněte nebo odinstalujte. Službu, kterou potřebují jen aplikace na stejném serveru (typicky databázi), nastavte tak, aby naslouchala jen na adrese 127.0.0.1.

  3. Omezte přístup firewallem

    Veřejně povolte jen porty, které veřejné být mají, a ostatní blokujte. Správcovské služby povolte jen z konkrétních IP adres. V cloudu upravte i bezpečnostní skupiny a nezapomeňte na pravidla pro IPv6.

  4. Vzdálený přístup schovejte za VPN

    RDP, SSH nebo správu zařízení zpřístupněte přes VPN nebo bránu, například Remote Desktop Gateway, s vícefaktorovým ověřením. Pouhá změna čísla portu útočníky nezastaví, jen ubere část automatických pokusů.

  5. Aktualizujte a zabezpečte přihlášení

    Služby, které veřejné zůstanou, pravidelně aktualizujte. U SSH vypněte přihlašování heslem a používejte klíče. Jinde nastavte silná hesla, vícefaktorové ověření a omezení počtu pokusů o přihlášení.

  6. Ověřte výsledek zvenku

    Po změně spusťte kontrolu znovu. Sken z vnitřní sítě nestačí, protože firewall s ní často zachází jinak než s internetem.

Co kontrola neříká

  • Kontroluje jen 10 TCP portů uvedených výše. Další porty, například 8080, 8443, databáze nebo správu routerů a kamer, ani UDP služby jako DNS, SNMP nebo VPN neověřuje. Úplný přehled dá až sken všech 65 535 TCP portů a důležitých UDP portů.
  • Skenujeme jen IPv4 a u domény jen jednu z jejích IPv4 adres. Pokud je server dostupný i přes IPv6, ověřte pravidla firewallu pro IPv6 zvlášť. Pokud je web za CDN nebo proxy, například Cloudflare, uvidíte porty proxy, ne vašeho serveru.
  • Výsledek ukazuje pohled ze serverů HackerTarget. Pokud firewall povoluje přístup jen z některých zemí nebo IP adres, případně sken zablokuje systém prevence průniků (IPS), z jiných míst může být vidět víc.
  • Když server na sken vůbec neodpoví, nástroj to oznámí a výsledek nehodnotí. Pokud ale firewall tiše zahodí jen spojení na kontrolované porty, vypadá výsledek stejně jako u zavřených portů.
  • Nehledá zranitelnosti a nezkouší se přihlásit. Verzi služby, pokud se zobrazí, s databázemi zranitelností neporovnává.
  • Počet skenů je omezený, u nás na několik za minutu a u služby HackerTarget malým denním limitem, který sdílejí všichni uživatelé nástroje. Když je vyčerpaný, zkuste kontrolu později, případně další den.
  • Službě HackerTarget předáváme jen skenovanou IPv4 adresu, ne zadanou doménu ani vaši IP adresu. Ochranu proti robotům zajišťuje Cloudflare Turnstile. Výsledek neukládáme.

Časté otázky

Smím skenovat porty cizího serveru?

Kontrolujte jen servery, které spravujete, nebo ty, k jejichž testování máte souhlas vlastníka, ideálně písemný. Skenování cizích systémů bez souhlasu obvykle porušuje podmínky poskytovatelů připojení i služby HackerTarget a správce ho může vyhodnotit jako útok. Pokud by po skenu následovaly pokusy o přihlášení nebo zneužití služby, může jít i o trestný čin, například neoprávněný přístup k počítačovému systému podle § 230 trestního zákoníku. Pozor také na sdílený hosting a CDN: IP adresa pak patří poskytovateli, ne vám. Nejde o právní radu, v nejasných případech se obraťte na právníka.

Nástroj nenašel žádný otevřený port. Je server v bezpečí?

Znamená to jen, že žádný z 10 kontrolovaných portů nepřijal spojení. Ostatní porty ani samotné aplikace kontrola neověřuje. Pokud nevidíte ani port 80 nebo 443 u webu, který funguje, sken nejspíš zablokoval firewall nebo server na sken neodpověděl.

Proč jsou otevřené porty 80 a 443? Je to chyba?

Není. Na portech 80 a 443 běží web a bez nich by ho návštěvníci nenačetli. Port 80 by měl jen přesměrovat na HTTPS. Pozornost věnujte hlavně správcovským službám a sdílení souborů.

Proč se výsledek liší od Shodanu nebo od skenu z naší sítě?

Shodan a podobné služby zobrazují výsledky svých dřívějších skenů, které mohou být dny i týdny staré, zatímco tato kontrola skenuje teď. Sken z vnitřní sítě zase obchází hraniční firewall, takže uvidí víc. Rozdíl způsobí i CDN, různé IP adresy domény nebo firewall, který blokuje jen některé zdroje.

Pozná správce serveru, že proběhl sken?

Často ano. Sken přichází z adres služby HackerTarget a firewall nebo systém detekce průniků ho může zaznamenat, nahlásit nebo zablokovat. Pokud server spravuje hostingová firma nebo dodavatel, dejte jim předem vědět.

Stačí přesunout RDP nebo SSH na jiný port?

Nestačí. Automatické skenery procházejí všechny porty, takže službu na nestandardním portu najdou také, jen o něco později. Ubude tím část pokusů o přihlášení, ochranu ale zajistí až VPN, omezení přístupu na známé IP adresy a vícefaktorové ověření.

Nevíte, které služby mají být vidět z internetu?

Napište nám, které porty nástroj našel a k čemu server slouží. Poradíme vám, jak přístup omezit, abyste nepřišli o vzdálenou správu.

Napsat nám

Deset portů je jen začátek. Při penetračním testu zjistíme, jaké služby váš server nabízí do internetu, a ověříme, jestli se přes ně útočník dostane dál.

Penetrační testování