abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | IT novinky

    Evropská komise zahájila tři vyšetřování týkající se cloudových platforem Amazon Web Services (AWS) a Microsoft Azure. Evropská exekutiva, která plní také funkci unijního antimonopolního orgánu, chce mimo jiné určit, zda jsou americké společnosti Microsoft a Amazon v cloudových službách takzvanými gatekeepery, tedy hráči, kteří významně ovlivňují provoz internetu a musí dle nařízení o digitálních trzích (DMA) na společném trhu

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 12:33 | IT novinky

    Společnost Meta Platforms vyhrála ostře sledovaný spor o akvizici sítě pro sdílení fotografií Instagram a komunikační aplikace WhatsApp. Podle amerického soudu firma jejich převzetím neporušila antimonopolní zákon, protože si tak nemonopolizovala trh sociálních sítí. Žalobu na Metu podala před pěti lety americká Federální obchodní komise (FTC). FTC argumentovala, že Meta, tehdy známá jako Facebook, koupila tyto dvě společnosti v letech 2012 a 2014 proto, aby s nimi nemusela soutěžit.

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | IT novinky

    Home Assistant včera představil svůj nejnovější oficiální hardware: Home Assistant Connect ZBT-2 pro připojení zařízení na sítích Zigbee nebo Thread.

    Ladislav Hagara | Komentářů: 5
    včera 19:44 | Nová verze

    Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 1
    včera 17:44 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 12
    včera 17:22 | IT novinky

    Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 3
    18.11. 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    18.11. 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    18.11. 19:44 | Nová verze

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 372 hlasů
     Komentářů: 17, poslední včera 21:57
    Rozcestník

    Linuxové DMZ - VI

    12. 3. 2003 | Michal Vymazal | Bezpečnost | 18603×

    Firewall: paketový filtr, stavový firewall, aplikační proxy, analyzátor paketů.

    Firewall - základní popis

    V dnešním dílu se vám pokusím přiblížit základní funkce firewallu. Budeme se pohybovat v obecné rovině a podíváme se, z čeho vlastně čerpají profesionální návrháři. V závěru článku jsem pak uvedl odkazy na dokumenty, které pocházejí z dílny amerického normalizačního úřadu (NIST), a popisují velmi podrobně problematiku, kterou zde dnes budeme probírat. České normy zatím bohužel neexistují, takže nezbývá než se odkazovat na dokumenty v anglickém jazyce. Dnes se tedy budeme pohybovat v obecné rovině. Odkazy na zajímavé projekty z oblasti Linuxu uvedeme v některém z dalších dílů.

    Síťové firewally jsou zařízení nebo systémy, které oddělují jednotlivé datové sítě a to prostřednictvím pravidel, kterým říkáme bezpečnostní politiky. Firewall je vlastně jakási ochranná hráz, skrze kterou musejí projít všechny informace (rozumějte pakety), které si chceme "mezi oddělenými světy" předat. Ve velké většině případů je firewall zmiňován právě v souvislostech propojení s Internetem a ve spojitosti s rodinou protokolů TCP/IP. Nicméně, firewally nejsou nutně závislé na Internetu a musejí být schopny pracovat i s jinými protokoly. Internet je sice častý, nicméně ne jediný případ jejich využití. Klasickým příkladem mohou být například vnitropodnikové sítě, kdy jednotlivé pobočky jsou k "hlavnímu stanu" připojeny pomocí privátních kanálů. Tyto kanály (např. WAN sítě) jsou rovněž chráněny firewally, přestože v těchto větvích se nemusí nacházet jediná přípojka do Internetu. V době zvané "informace nad zlato" se tak jejich provozovatelé snaží předejít neoprávněným přístupům k zařízením (k informacím v těchto zařízeních uložených), monitorovat provoz v těchto sítích, povolit jen vybrané síťové služby, omezit provoz na pronajatých linkách apod. Určité modelové topologie zapojení firewallu jsme si již ukázali ve 3.dílu, podrobný popis jednotlivých zapojení pak najdete v literatuře (1).

    Skladba firewallu

    V 2. dílu jsme uvedli, že firewall má celkem 4 stupně. Pokud se však pozorně začtete do níže uvedené literatury (2), dozvíte se, že můžeme rozlišovat celkem až 8 (!) stupňů. Tento zdánlivý rozpor si hned vysvětlíme.

    Členění stupňů firewallů vypadá (podle 2) v současné době takto:

    • paketový filtr (ano, o tom slyšíme neustále)
    • stavový firewall (stateful inspection firewall)
    • aplikační proxy (application proxy gateway firewall)
    • dedicated proxy firewall
    • hybrid firewall technologies (sem je možné zařadit analyzátory paketů)
    • network address translation
    • host based firewall
    • personal firewall

    Podíváte-li se blíže, pak pojmy dedicated proxy firewall, host based firewall a personal firewall jsme si ve druhém dílu dovolili vynechat, protože se jedná o zvláštní případy instalací. Ještě připomenu, že vlastní překlad adres (network address translation - NAT) bývá často zařazován na úroveň paketových filtrů. Nyní jsme tedy již u našeho starého známého schématu:

    • paketový filtr
    • stavový firewall
    • aplikační proxy
    • analyzátor paketů

    tak, jak jsme uvedli v druhém dílu. Podívejme se teď na jednotlivé stupně poněkud blíže.

    Paketový filtr

    Tvoří základní stupeň každého firewallu a to mimo jiné i proto, že má na své straně dvě velké výhody, kterými jsou rychlost a přizpůsobitelnost (flexibility). Paketový filtr může být použit v libovolné síti na libovolný typ protokolu (my se ale budeme věnovat jen rodině protokolů TCP/IP). I to je důvod, proč jsou paketové filtry využívány i na jiných zařízeních než firewallech, klasickým případem jsou směrovače (router).

    Paketové filtry však mají i řadu nevýhod:

    1. Vzhledem k tomu, že nezkoumají (neumějí to) tzv. "upper layer data" (jinými slovy, vše co je nad 3. vrstvou OSI modelu (OSI model popisujeme zde) tj. od Transportní vrstvy výše), nemohou bránit specifickým útokům na slabiny operačních systémů nebo aplikací. Stručně řečeno, paketové filtry umějí sledovat hlavičky paketů, ne jejich vzájemné vazby nebo návaznost.
    2. Mají omezené logovací možnosti. Vlastní logování snižuje výkonnost systému, na kterém je paketový filtr provozován. Pokud úroveň logování "přeženete", může dojít k přetížení daného zařízení a k jeho následnému kolapsu. Klasickým příkladem může být pokus o logování např. všech příchozích SYN paketů. U domácího stroje (modelová topologie - Domácí PC, zde) to asi vadit nebude, nicméně u modelové topologie č. 5 (Linuxová DMZ, samostatná rozhraní pro WAN a Modem pool, připojení k Internetu skrze router, zde) vám pokus o logování všech SYN paketů na firewallu (např. do log souboru) může přivodit kolaps firewallu. Je vcelku jedno, jestli ten log soubor vytváříte na firewallu, nebo na jiném stroji. Zkrátka - u paketových filtrů musíte pečlivě zvážit, které události budete logovat a které nikoliv. Budete muset vzít v potaz výkonnost stroje, propustnost všech jeho síťových rozhraní, stanovit mez pod kterou nesmí klesnout výkon (např. 20%).
    3. Řada paketových filtrů nepodporuje autentizační mechanismy.
    4. Paketové filtry jsou náchylné k útokům, které zneužívají nedokonalosti TCP/IP protokolů (např. network layer address spoofing). Vzhledem ke své jednoduchosti nastavení vzniká řada chyb vlivem špatné konfigurace filtrů (na nepovolenou potřebnou službu obvykle přijdete, ale na povolenou nepotřebnou službu nemusíte přijít nikdy).

    Klasickým příkladem zařízení, které bude používat pouze paketový filtr, je právě router provozující ACL (access list) pro kontrolu síťového provozu. Takovýto "přístupový" router je v literatuře (1) označován jako Boundary router a jeho zapojení může vypadat právě takto:

    Vidíme, že náš Boundary router vlastně tvoří jakýsi "první stupeň" firewallu. Můžeme na něm provozovat paketový filtr, který odfiltruje nežádoucí pakety a zbytek provozu předá firewallu, který pak může provádět kontrolu na vyšších vrstvách OSI modelu, jak si řekneme níže.

    Stavový firewall (Stateful inspection firewall)

    Jakmile TCP (spojově orientovaná služba) aplikace vystaví TCP spojení (relaci) s protější stranou, ja na zdrojové straně tomuto spojení rovněž přiřazen určitý port. Tento port pak "obhospodařuje" spojení vystavené s protější stranou (remote host system). Paketový filtr musí povolit (přijmout) všechny příchozí pakety (příchozí ve směru od druhé strany) tak, aby spojově orientovaná služba mohla vůbec pracovat. Nicméně povolení určitého množství portů již vytváří prostor pro neposedy, kteří by této vlastnosti chtěli využívat k nejrůznějším pokusům, případně nekalostem.

    Stavový firewall to řeší tak, že si vytvoří tabulku pro každé spojení, kam zaznamenává každé vytvořené (platné) TCP spojení a to včetně portů odpovídajících tomuto spojení. Tato "stavová tabulka" je pak následně využívána pro ověřování činnosti jednotlivých spojení. Dorazí-li tedy paket, který žádnému vystavenému spojení neodpovídá (neodpovídá tabulce), je stavovým firewallem vyhodnocen jako nevyhovující (přesněji, nevyhovující politice) a podle politiky s ním pak stavový firewall i naloží (zahodí jej, odmítne, propustí, přesměruje apod.).

    Stavový firewall se oproti paketovému filtru liší také tím, že není obecně univerzální, ale je využitelný (nasaditelný) pouze pro TCP/IP protokoly.

    Jistěže, stavové firewally mohou obsluhovat (podobně jako paketové filtry) řadu protokolů, ale technologie "stavových tabulek" je zatím využitelná pouze pro protokoly z rodiny TCP/IP. Z tohoto důvodu je stavový firewall někdy v literatuře označován jako "nadstavba" paketového filtru. Podrobnější popis stavového firewallu nad IPTABLES můžete najít například zde.

    Aplikační proxy server (Application proxy firewall gateway)

    Jedná se o další rozšíření funkčnosti firewallu, které kombinuje tzv. "lower layer access control" (tedy na úrovni síťové vrstvy OSI modelu zde, což zajišťuje právě paketový filtr) s tzv. "upper layer" (tedy 7, neboli Aplikační vrstva OSI modelu). Všechny síťové pakety, které procházejí skrze firewall, pak musí projít skrze tuto bránu. Zde je tedy ono správné místo, kde můžeme narazit na výrazy typu "SMTP proxy, http proxy, ftp proxy" a podobně.

    Velkou výhodou aplikačních serverů je právě ta skutečnost, že kontrolu provádějí přímo na aplikační, tedy 7. vrstvě OSI modelu. Nevýhodou je skutečnost, že tento provoz "něco stojí" a zaplatíte za něj částí výkonu stroje. To bývá obvykle hlavním důvodem, proč jsou jednotlivé aplikační servery umístěny v DMZ na samostatných strojích. Klasickým příkladem je samostatný stroj pro poštu (SMTP server), samostatný stroj pro ftp, samostatný stroj pro www služby apod. Modelová topologie pak může vypadat třeba takto:

    Dedicated proxy firewall

    Přece jen se o nich krátce zmíním. Tento firewall se od klasické aplikační proxy liší tím, že představuje jakýsi "mezistupeň". Jeho úkolem je zachycovat provoz sledované síťové služby a dané pakety přeposílat na další stroj, který se nachází v DMZ, Vnitřní síti apod. Vlastní provoz může být jak jednosměrný (tedy pakety zvenčí dovnitř nebo zevnitř ven), tak obousměrný. Klasickým příkladem je SMTP proxy zvaná SMTP on firewall. Popis konfigurace můžete najít zde.

    Důvod tohoto zapojení je prostý - zvenčí je vidět pouze SMTP proxy, která však poštu předává dalšímu poštovnímu serveru v DMZ nebo ve vnitřní síti. Vlastní poštovní server pak není zvenčí vidět. Není asi třeba zdůrazňovat, že náš "dedicated proxy firewall" nebo-li SMTP proxy je jednoúčelový tupoučký automat, který skutečně neumí nic jiného než to, co po něm přesně chceme. Pak si jej můžeme dovolit předřadit před firewall a umístit buď někam na samostatný stroj nebo na přístupový router (opět náš Boundary router viz. literatura (1) na konci článku).

    Analyzátory paketů

    Vlastní analyzátor je samozřejmě pasivní záležitost. Výstupem mohou být zpracované výstupy v podobě logů, varovných nebo kritických zpráv. Klasickým analyzátorem paketů je třeba snort, který toho samozřejmě umí mnohem více (snort již lze zařadit do kategorie nástrojů IDS, nicméně u této kapitoly ještě zdaleka nejsme). Za další lze jmenovat např. portsentry (pro Debian např. zde) a anglicky psaný popis zde.

    Nicméně, v této kapitolce bych uvítal aktivitu čtenářů a čtenářek. Pokud tedy máte odkaz na zajímavý nástroj z této oblasti, pak neváhejte a napište. Rádi vaše dílko uveřejníme.

    Překlad síťových adres (Network Address Translation)

    Zde jen krátce. Hlavním posláním zmíněného překladu adres je "skrytí" vnitřní sítě před sítí vnější. Vlastní NAT pak může probíhat v několika režimech zvaných static, hiding a port. Vzhledem k tomu, že této věci se již věnoval Martin v jednom z předchozích dílů, dovolím si zájemce o podrobnější vysvětlení odkázat na literaturu na konci článku nebo na nějaké to NAT HOWTO, například sem nebo sem.

    Shrnutí

    Shrneme-li tedy vše, co zde již bylo řečeno, pak lze základní funkce firewallu popsat asi takto:

    • Filtrování paketů
    • Provádění stavových kontrol (stateful inspections) jednotlivých spojení.
    • Proxy operace na vybraných aplikacích.
    • Logování zakázaného/povoleného provozu na firewallu.
    • Provádění ověřování uživatelů na základě mechanismů, které nepoužívají statická hesla (ta je možné odposlechnout).
    • Analýza paketů.

    Je celkem zřejmé, že všechny tyto stupně se mohou, ale také nemusejí, nacházet na jednom a témž stroji. Rozdělení těchto modulů na fyzické stroje bude závislé na konkrétní situaci a na celkové zátěži, kterou jsme ochotni "přidělit" každému stroji.

    Filtrování paketů by pak mělo probíhat na základě následujících charakteristik:

    • Protokoly (tj. IP protokoly, ICMP protokol)
    • Zdrojová a cílová IP adresa
    • Zdrojové a cílové porty (vlastně označují konkrétní aplikaci)
    • Síťové rozhraní na firewallu, jímž paket prochází

    Související články

    Linuxové DMZ - I (Úvod do problematiky)
    Linuxové DMZ - II (Zařízení v DMZ)
    Linuxové DMZ - III (Modelové topologie)
    Linuxové DMZ - IV (Protokoly rodiny TCP/IP)
    Linuxové DMZ - V (Routery a minidistribuce LRP)
    Linuxové DMZ - VII (Paketové filtry)

    Odkazy a zdroje

    SP 800-41 Guidelines on Firewalls and Firewall Policy (NIST)
    DRAFT NIST Special Publication 800-36, Guide to Selecting IT Security Products

    NIST je zkratka pro National Institute of Standards and Technology a jak sami již z názvu tušíte, jedná se o organizaci zabývající se vývojem a vydáváním standardů (v našem případě se tedy jedná o standardy z oblasti informačních systémů). Bližší informace o NIST naleznete zde

           

    Hodnocení: 36 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.