fajrvolTaképacket filter, WAF, web application firewall, stavový firewallZákladní

Definice

Firewall je bezpečnostní prvek, který podle nastavených pravidel povoluje nebo blokuje síťovou komunikaci mezi zařízeními, sítěmi nebo aplikacemi. Může běžet jako software v operačním systému, specializované síťové zařízení, cloudová služba nebo aplikační filtr chránící web před nežádoucími požadavky a omezuje dopad chybné konfigurace.

Kategorie: KyberbezpečnostAktualizováno

Nezaměňujte: Firewall může mimo IT znamenat protipožární přepážku; v tomto hesle jde o síťovou a aplikační ochranu v kyberbezpečnosti.

Proč firewall stojí na hranici důvěry

Firewall vymezuje, komu a čemu systém věří. Pravidla obvykle hodnotí zdroj, cíl, protokol, port, směr komunikace a někdy i stav spojení. Síťový firewall pracuje s údaji jako IP adresa a TCP nebo UDP port, zatímco aplikační firewall u webu zkoumá i HTTP požadavek, hlavičky, cestu URL nebo tělo formuláře.

Firewall neslouží jen k blokování útoků. Firewall také omezuje omyly: vývojář může spustit testovací službu na serveru, ale pravidla zabrání tomu, aby byla dostupná z celého internetu. Název domény a DNS záznamy samy o sobě přístup nezabezpečí, protože skutečné rozhodnutí probíhá na úrovni provozu.

Podle čeho firewall propouští pakety a požadavky

Pravidlo firewallu má typicky podmínku a akci. Podmínka říká například „provoz z administrátorské sítě na port 22“ a akce říká „povolit“, „zamítnout“ nebo „zahodit bez odpovědi“. Pořadí pravidel bývá zásadní, protože první shoda může rozhodnout o výsledku dřív, než se vyhodnotí další pravidla.

Stavový firewall si pamatuje, že odpověď patří k již navázanému spojení. Bez této paměti by správce musel ručně povolovat i návratový provoz. Aplikační firewall jde výš: webový WAF může zastavit pokus o SQL injection, podezřelý upload nebo požadavek porušující očekávaný tvar API.

Dva praktické scénáře

Příklad: server s SSH jen pro správce

Správce provozuje veřejný server, který má obsluhovat HTTPS, ale administrace přes SSH má být dostupná pouze z jedné kancelářské adresy. Pravidla nejdřív zakážou příchozí provoz a potom výslovně povolí jen potřebné výjimky.

ufw default deny incoming
ufw allow from 203.0.113.10 to any port 22 proto tcp
ufw allow 443/tcp

Výsledek je jednoduchý: web zůstane dostupný zákazníkům, ale pokusy o přihlášení přes SSH z cizích sítí se k démonu vůbec nedostanou.

Příklad: webová aplikace za WAF

E-shop přijímá vyhledávací dotazy, komentáře a formulářové objednávky. Webový aplikační firewall před aplikací rozpozná požadavek s podezřelým řetězcem v parametru a zablokuje ho dřív, než se dostane k backendu. Provozní tým zároveň sleduje logy, protože příliš agresivní pravidlo může omylem zastavit i legitimního zákazníka.

Kde firewall nezachrání špatnou architekturu

Firewall není náhrada za opravy, bezpečný kód ani správu identit. Pokud aplikace sama dovolí útočníkovi obejít autorizaci, síťové pravidlo tomu nemusí zabránit, protože požadavek přichází po povoleném portu 443. Stejně tak známá zranitelnost v dostupné službě potřebuje aktualizaci nebo mitigaci, ne jen další filtr.

Šifrovaný provoz navíc skrývá obsah před běžným síťovým firewallem. Kontrola aplikačních dat vyžaduje ukončení TLS na důvěryhodném prvku nebo ochranu přímo v aplikaci. Firewall proto patří do vrstvené obrany, kde se kombinuje segmentace sítě, minimální oprávnění, monitoring a pravidelné revize.

Firewall v cloudu a DevOps praxi

Cloudové firewally často vypadají jako bezpečnostní skupiny, síťové ACL nebo pravidla u load balanceru. DevOps tým je obvykle zapisuje jako infrastrukturu v kódu, aby změna prošla review stejně jako aplikace. Dobrá praxe je popisovat důvod pravidla, omezovat zdrojové rozsahy a pravidelně mazat dočasné výjimky, které po incidentu nebo migraci zůstaly aktivní.

Příklady z praxe

  1. SSH jen z kanceláře

    Správce veřejného serveru povolí zákazníkům HTTPS, ale SSH nechá dostupné jen z kancelářské IP adresy. Automatické pokusy o přihlášení z internetu se k SSH službě nedostanou, zatímco web zůstává dostupný.

    ufw default deny incoming
    ufw allow from 203.0.113.10 to any port 22 proto tcp
    ufw allow 443/tcp
  2. WAF před e-shopem

    E-shop nasadí webový aplikační firewall před objednávkový formulář. WAF zablokuje požadavek s typickým vzorem SQL injection a tým v logu ověří, jestli pravidlo nezastavuje i běžné dotazy zákazníků.

Časté omyly

MýtusKdyž máme firewall, server už je bezpečný.
Ve skutečnostiFirewall snižuje dostupnou útočnou plochu, ale neodstraní chyby v aplikaci, slabá hesla ani nezáplatovaný software. Bezpečnost vyžaduje více vrstev ochrany.
MýtusStačí povolit všechny porty, ať nic neblokuje.
Ve skutečnostiPovolení všech portů ruší hlavní smysl firewallu. Správnější je povolit jen služby, které mají být dostupné, a zbytek nechat zavřený.
MýtusFirewall automaticky pozná každý škodlivý provoz.
Ve skutečnostiFirewall rozhoduje podle pravidel a viditelnosti do provozu. Neznámý útok na povolenou službu nebo šifrovaný obsah může projít, pokud ho nezachytí další ochranná vrstva.

Časté dotazy

Má firewall smysl i na domácím počítači?
Firewall má smysl i na domácím počítači, protože omezuje příchozí spojení z lokální sítě i internetu. Domácí router obvykle filtruje provoz na hranici sítě, ale osobní firewall v operačním systému chrání zařízení i v cizí Wi-Fi nebo při chybně nastaveném sdílení. Praktický přínos je největší u notebooků, které se často připojují do různých sítí.
Proč firewall někdy blokuje aplikaci, která dřív fungovala?
Firewall může rozbít funkční aplikaci, když pravidlo neodpovídá skutečnému provozu aplikace. Typickým důvodem je zapomenutý port, špatný směr spojení, omezení jen na část IP rozsahu nebo blokovaná odpověď navazujícího spojení. Diagnostika obvykle začíná logy firewallu, testem spojení a kontrolou, zda aplikace opravdu používá porty uvedené v dokumentaci.
Nahradí firewall VPN nebo šifrování?
Firewall nenahrazuje VPN ani šifrování, protože každý nástroj řeší jinou část rizika. Firewall rozhoduje, který provoz smí projít. VPN vytváří chráněný tunel mezi body a šifrování chrání obsah proti přečtení po cestě. Bez firewallu může být šifrovaná služba zbytečně vystavená, bez šifrování zase povolený provoz může prozrazovat citlivá data.
Co znamená default deny u firewallu?
Default deny ve firewallu znamená, že provoz je zakázaný, pokud pro něj neexistuje výslovné povolovací pravidlo. Přístup je bezpečnější než opačný model, protože nová služba se po spuštění automaticky neotevře celému světu. Default deny ale vyžaduje pečlivou správu pravidel, jinak může nečekaně zastavit monitoring, zálohování nebo interní integrace.

Zdroje

  1. Behavior of and Requirements for Internet Firewalls(otevře se v novém okně)RFC Editor, 2000
  2. Guidelines on Firewalls and Firewall Policy(otevře se v novém okně)NIST, 2009
  3. Web Application Firewall(otevře se v novém okně)OWASP

Související pojmy

Potřebujete to vyřešit v praxi?

Poradíme, jak na to ve vašem projektu

Vysvětlit pojem je jedna věc, navrhnout kolem něj funkční řešení druhá. Ozvěte se a probereme, co dává smysl u vás.