3.6. Tűzfalak

A tűzfal eredetileg a az egyes épületekben esetlegesen kitörő tüzeket korlátozó falakat jelentette ám később a mérnöki nyelvben az egyes gépezetek illetve járművek hasonló feladatokat ellátó elemeit is annak nevezték.

A tűzfalak olyan szoftver vagy hardverelemek, amelyek a hálózat egy részének, jellemzően egy intranetnek a külső támadók elleni védelmére hivatottak. Mint legtöbb biztonsági intézkedés illetve eszköz is erőforrásokat igényel: az egyes tűzfalak tipusuktól függően kisebb-nagyobb mértékben késleltetik a külső hálózat és a tűzfal által védett hálózatrész közötti kommunikációt.

A tűzfalak az általuk védett rendszer és a külvilág között állnak. Minden kimenő és bejövő kommunikáció rajta keresztül halad át. A tűzfal a rajta áthaladó csomagok közül csak azokat engedi át amelyeket a beletáplált szabályoknak megfelelően veszélytelennek ítél. Ezt nevezzük csomagszűrésnek. Veszélyesnek ítélt csomagok esetén minden figyelmeztetés vagy visszajelzés nélkül kiszűri, elnyeli az adott csomagot.

A legegyszerűbb esetben ez annyit jelent, hogy megadhatjuk, hogy mely portokra, milyen típusú forgalmat engedélyezünk (bemenő, kimenő, TCP, UDP). Ez a típusú csomagszűrés jellemzően csak a hálózati protokollverem alsó három rétegét érinti. Az egyes alkalmazások vagy protokollok tiltása vagy engedélyezése az alkalmazás vagy a protokoll által használt standard portok szűrésével történik. Ha például az adott alkalmazás mindkét oldalon az alapértelmezettől eltérő portokat használ, akkor azzal meg tudja kerülni a tűzfal korlátozó szabályozásait.

Az úgynevezett alkalmazás tűzfalak, a hálózati protokollverem alkalmazás rétegének szintjén tevékenykednek. Jellegüknél fogva hozzáférnek az adott alkalmazás teljes forgalmához és betekinthetnek az adott protokoll által közvetített információtömegbe is. Ez nem csak az átmenő tartalom megszűrését teszi lehetővé (például egy adott projektre személyre vagy szerződésre vonatkozó bármilyen információ kivitelét), de az ismert alkalmazás specifikus hibákat kihasználó kódrészletek kiszűrésére is módot ad. az alkalmazás tűzfal lehet hálózatalapú vagy operációs rendszer szintű. Az operációs rendszer szintű alkalmazás tűzfal nem a hálózati protokollverem alkalmazás rétegében operál, hanem az adott operációs rendszeren rendszerhívásokkal kommunikál a védett alkalmazással.

Az alkalmazás tűzfalak használata, mint ahogy nevük is mutatja, gyakran egy adott alkalmazáshoz vagy szolgáltatáshoz és nem a rendszer egészéhez kapcsolódik. Az adott szolgáltatás vagy alkalmazás megvédésére, a hozzáférés sokkal pontosabb szabályozására ad lehetőséget.

Az alkalmazás tűzfalak legnagyobb hátránya, hogy a bonyolult, magas szintű vizsgálatok amik lehetővé teszik a pontosabb szabályozást és az alaposabb szűrést nagyobb erőforrásokat igényelnek és a kommunikációt is jobban késleltetik.

Azok a tűzfalak amik csak az OSI modell három alsó rétegében tevékenykednek, sokkal kisebb erőforrásokat igényelnek és kisebb késleltetéssel járnak. Ezt a hatékonyságot ötvözik a nagyobb fokú biztonsággal az állapottal rendelkező csomagszűrő tűzfalak. Továbbra is csak az alsó három rétegben működnek, de nyilvántartják az egyes kapcsolatok aktuális állapotát és az adott fázisban érvénytelen vagy értelmetlen csomagokat kiszűrik. Mindehhez az összes éppen aktív kapcsolatot illetve azok állapotát nyilván kell tartaniuk. Hogy a belső kapcsolattáblájuk betelését megelőzzék, a túl hosszú ideig inaktív kapcsolatokat megszakítják. A kapcsolatokat nyilvántartó táblázat szándékos telítésével válaszképtelen állapotban lehet tartani a teljes védett rendszert, ez az alapja az ilyen tűzfalak ellen irányuló DoS támadásoknak.

A tűzfalak egy része NAT (Network Adress Translation - Hálózati Cím Fordítás) funkcióval is rendelkezik. Ezt az eljárást elsősorban az ipv4 címterének szűkössége miatt dolgozták ki, de a védelem szempontjából is jelentős hatással bír. A támadók csak a rendszer azon részei ellen léphetnek csak amit "látnak", azaz meg tudnak célozni, címezni. A NAT elrejti a külvilág elől a rendszer elemeinek címeit így jelentősen megnehezíti a támadás első fázisát, a hálózati felderítést.