Press "Enter" to skip to content

Skenování webových aplikací: Porty

Porty jsou klíčovým bodem v bezpečnostním průzkumu, protože představují brány, přes které komunikují aplikace, servery a služby. Skenování a analýza portů pomáhají identifikovat, které služby běží na cílovém systému, a odhalují potenciální zranitelnosti. Zde je, proč a jak se zabývat porty při bezpečnostním průzkumu:

Co jsou porty?

  • Porty jsou čísla (v rozsahu 0–65535), která umožňují různým službám a aplikacím komunikovat přes síť pomocí protokolů, jako je TCP a UDP.
  • Např.:
    • 80 (HTTP): Pro přístup k webovým serverům.
    • 443 (HTTPS): Šifrované připojení k webovým serverům.
    • 22 (SSH): Pro vzdálený přístup k serverům.

Proč je skenování portů důležité?

  • Identifikace běžících služeb:
    • Pomáhá zjistit, které služby jsou dostupné na cílovém systému (např. webový server, FTP, SSH).
  • Odhalení nechráněných portů:
    • Otevřené a nezabezpečené porty mohou být vstupním bodem pro útoky.
  • Zjištění nesprávné konfigurace:
    • Např. porty, které by měly být uzavřeny, ale jsou omylem otevřené.
  • Detekce zranitelností:
    • Např. služby běžící na zastaralých verzích softwaru.

Typy portů a co zkoumat

  1. Známé porty (0–1023):
    • Standardizované služby (např. 22 – SSH, 80 – HTTP).
    • Důležité je zajistit jejich bezpečné nastavení a zabezpečení.
  2. Registrované porty (1024–49151):
    • Používají je specifické aplikace a služby (např. databáze, DNS).
    • Potenciální riziko, pokud jsou otevřené a nechráněné.
  3. Dynamické/Privátní porty (49152–65535):
    • Používají se dočasně aplikacemi a službami.
    • Je méně pravděpodobné, že budou zneužity, ale stále je dobré je sledovat.

Jak skenovat porty?

Nmap (Network Mapper):

Nejpoužívanější nástroj pro skenování portů.

Základní příklady:

nmap example.com

Skenování konkrétních portů:

nmap -p 22,80,443 example.com

Skenování všech portů:

nmap -p- example.com

TCP / UDP:

TCP (Transmission Control Protocol)UDP (User Datagram Protocol)
Spolehlivý přenos: Zajišťuje doručení dat díky kontrolám a opakovanému odesílání.Nespolehlivý přenos: Nezaručuje doručení dat ani pořadí.
Protokol orientovaný na spojení: Vyžaduje vytvoření spojení před přenosem dat.Bez spojení: Data jsou odesílána přímo bez navázání spojení.
Pomalý, ale přesný: Vhodný pro aplikace vyžadující přesnost (např. HTTP, e-mail).Rychlý, ale nepřesný: Vhodný pro aplikace, kde je důležitá rychlost (např. streamování, VoIP).
Ověřování: Používá kontroly integrity dat a potvrzení o přijetí (ACK).Žádné ověřování: Neověřuje přijetí ani správnost dat.

Příklady použití: TCP: Webové stránky (HTTP/HTTPS), e-mail (SMTP), souborové přenosy (FTP). UDP: Videohovory, streamování videa/audio, DNS dotazy, online hry.

Skenování UDP portů (pomalejší):

nmap -sU -p 53,123 example.com

Kombinace TCP a UDP:

nmap -sS -sU example.com

Detekce služeb a jejich verzí:

nmap -sV example.com

Skenování verzí a OS:

nmap -A example.com

Změna rychlosti skenování:

  • -T0 až -T5: Určuje agresivitu skenování.
  • -T0: Velmi pomalé, obtížně detekovatelné.
  • -T5: Velmi rychlé, vhodné pro interní sítě.
  • Standardně se používá rychlostní profil -T3 (defaultní)
nmap -T4 example.com

Vyhledávání živých hostitelů:

Ping scan (zjistí aktivní hostitele):

nmap -sn 192.168.1.0/24

Zakázání pingů (např. pokud firewall blokuje ICMP):

nmap -Pn example.com

Specifické techniky skenování:

SYN scan (rychlý, tichý): nmap -sS example.com
Connect scan (úplné spojení): nmap -sT example.com
Stealth scan (obtížně detekovatelný): nmap -sN example.com

Export výsledků:

nmap -oN scan.txt example.com (normální výstup)
nmap -oX scan.xml example.com (xml výstup)

Netcat (nc):

Masscan: Velmi rychlé skenování rozsáhlých IP sítí.

OpenVAS nebo Nessus: Pro hlubší analýzu zranitelností spojených s otevřenými porty.

Co hledat při skenování portů?

  • Otevřené porty:
    • Ověřte, zda jsou nezbytné pro dané služby.
    • Pokud nejsou potřeba, uzavřete je firewall pravidly.
  • Skryté nebo filtrované porty:
    • Porty, které firewall blokuje, ale stále by mohly být dosažitelné jinými způsoby.
  • Služby běžící na portech:
    • Zjistěte, jaké služby běží na otevřených portech (pomocí Nmap nebo Netcat).
  • Zastaralé nebo nezabezpečené služby:
    • Např. zastaralé verze SSH, FTP nebo HTTP bez šifrování.
  • Neobvyklé porty:
    • Pokud služby běží na neobvyklých portech (např. SSH na portu 2222), může to znamenat pokus o skrytí nebo špatné nastavení.

Co hrozí při špatně zabezpečených portech?

  • Bruteforce útoky:
    • Např. útočníci se mohou pokusit prolomit přístup přes SSH (port 22).
  • Exploity zranitelných služeb:
    • Otevřené porty s nezabezpečenými službami mohou být cílem exploitů.
  • Únik informací:
    • Některé služby mohou útočníkům poskytnout citlivé informace (např. verze softwaru, konfigurační údaje).
  • Malware a DoS útoky:
    • Otevřené porty mohou být zneužity pro šíření malware nebo zahájení DDoS útoku.

Jak zabezpečit porty?

  • Uzavření nepotřebných portů:
    • Konfigurujte firewall, aby umožňoval pouze nezbytné porty.
  • Použití šifrování:
    • Např. HTTPS místo HTTP, SSH místo Telnetu.
  • Aktualizace softwaru:
    • Zajistěte, aby služby běžící na otevřených portech byly pravidelně aktualizované.
  • Použití IDS/IPS:
    • Nástroje pro detekci a prevenci útoků na porty (např. Snort).