Alkalmazásszintű tűzfal

A Wikipédiából, a szabad enciklopédiából

Az alkalmazásszintű tűzfal egy formája a tűzfalnak, ami kontrollálja a bemenetet, a kimenetet és/vagy a hozzáférést egy alkalmazáshoz vagy szolgáltatáshoz. A kimenet, bemenet vagy rendszerszolgáltatás-hívás felügyeletével és potenciális blokkolásával, (ha nem egyezik a tűzfal kialakított politikájával) működik. Az alkalmazásszintű tűzfal tipikusan azért épült, hogy kontrolláljon minden hálózati forgalmat minden OSI rétegen, egészen az alkalmazás rétegig. Képes arra, hogy specifikusan kontrolláljon alkalmazásokat és szolgáltatásokat, nem úgy, mint az Állapotmegőrző hálózati tűzfal, ami - hozzáadott szoftver nélkül - nem képes a hálózati forgalom kontrollálására egy specifikus alkalmazásra vonatkozólag. Két fő kategóriája van az alkalmazásszintű tűzfalnak: hálózat-alapú alkalmazásszintű tűzfal és gazdagép-alapú alkalmazásszintű tűzfal.

Hálózatalapú alkalmazásszintű tűzfal[szerkesztés]

A hálózatalapú alkalmazásszintű tűzfal egy számítógép-hálózati tűzfal, ami az alkalmazásszinten működik a protokollverem tetején, és proxy alapú vagy fordított proxy alapú tűzfalként is ismert. Az alkalmazásszintű tűzfal specifikus egy bizonyos fajtájú hálózati forgalomnak, ami talán azonosítva van a szolgáltatás nevével, mint egy webalkalmazás-szintű tűzfal. Ezek megvalósíthatók egy szoftver gazdagépen vagy egy egyedülálló darabja a hálózati hardvernek. Gyakran egy gazdagép használ különböző formájú proxy servereket a proxy forgalomhoz, mielőtt átadja a kliens szervernek. Mivel működik az alkalmazás rétegen, megvizsgálja a forgalom tartalmát, blokkol specifikus tartalmakat, mint bizonyos weboldalak, vírusok, kísérletek, melyek arra irányulnak, hogy kiaknázzák a kliens szoftverének hiányosságait.

A hálózat-alapú alkalmazásszintű tűzfalak az alkalmazás szintjén működnek a hálózati modellnek (mint például minden web böngésző, telnet vagy ftp forgalom), és elfoghat minden csomagot, amely egy alkalmazástól vagy alkalmazáshoz utazik. Általában az alkalmazásszintű tűzfalak el tudnak hárítani minden nem kívánt forgalmat a védett géptől.

A modern alkalmazásszintű tűzfalak offload encryption from servers blokkolhatják az alkalmazás ki- és bemenetét a felfedezett behatolások vagy rossz formátumu kommunikáció, eléri vagy egyesíti hitelesítés vagy Modern application firewalls may also offload encryption from servers, block application input/output from detected intrusions or malformed communication, manage or consolidate authentication, or block content which violates policies.

Történelem[szerkesztés]

Gene Spafford a Purdue Egyetemről , Bill Cheswick az AT&T laboratóriumból és Marcus Ranum leírt egy harmadik generációs tűzfalat ami az alkalmazásszintű tűzfal néven ismert. Marcus Raum munkája a technológiával vezette a megalkotását az első kereskedelmi terméknek. A terméket a DEC hozta forgalomba, és a DEC SEAL névre keresztelte. A DEC első fontosabb eladása 1991. június 13-án volt egy vegyi cég számára, melynek bázisa az USA északi partján volt.

A TIS egy határolt DARPA szerződés alatt kifejlesztette a Firewall Toolkit-et (FWTK), és a megfelelő licenc alatt ingyen elérhetővé tette 1993. október 1-jén. Az ingyen elérhetőség mellett álló érvek a FWTK-nál a következők voltak: a szoftveren keresztül demonstrálni, dokumentálni és bemutatni, hogy egy cég 11 éves tapasztalattal a szabályszerű védelmi eljárásokban, illetve magánszemélyek segítségével létrehozzanak egy tűzfal szoftvert, hogy mások számára megalapozzák egy gyakori bázisát egy nagyon jó tűzfal szoftvernek, melyre építhetnek, és hogy feljebb emeljék a lécet a használatban lévő tűzfal szoftvereknek.

A kulcshaszon az alkalmazás szintű szűrésben, hogy meg tudjunk érteni bizonyos alkalmazásokat és protokollokat (mint például File küldés protokoll, DNS vagy webes böngészés), és észlelje, ha egy hívatlan protokoll át akar csúszni egy nem szabványos porton vagy ha egy protokollal bármilyen káros módon visszaélnek.

Kiszolgáló-alapú alkalmazásszintű tűzfal[szerkesztés]

A kiszolgáló-alapú alkalmazásszintű tűzfal képes ellenőrizni bármilyen alkalmazás ki- és bemenetelét és/vagy a rendszerszolgáltatás hívását. Ez a rendszer híváson áthaladó információ vizsgálatával történik a hálózati modell helyett vagy mellett. A kiszolgáló-alapú alkalmazásszintű tűzfal csak az ugyanazon a gazdagépen futó alkalmazásoknak tud biztonságot nyújtani.

Az alkalmazásszintű tűzfal úgy működik, hogy meghatározza, hogy egy folyamat elfogadjon-e bármilyen adott kapcsolatot. Az alkalmazásszintű tűzfalak úgy teljesítik funkciójukat, hogy feliratkoznak (hooking) a socket call eseményre, így kiszűrik a kapcsolatot az alkalmazásszintű és az alacsonyabb szintű OSI modellek közt. Az alkalmazásszintű tűzfalakra, amik feliratkoznak a socket call eseményre, socket szűrőként is utalhatunk. Az alkalmazásszintű tűzfalak sokkal inkább úgy működnek, mint a csomagszűrök, de az alkalmazásszűrők a szabályok szűrését (engedélyezését/blokkolását) process alapon végzik ahelyett, hogy a kapcsolatokat port alapon szűrnék. Általában a parancsjelek arra vannak használva, hogy meghatározza a szabályokat a folyamatok számára, amelyek még nem érték el a kapcsolatukat. Ritka, hogy olyan alkalmazásszintű tűzfalat találunk, ami nincs kombinálva, esetleg nem áll kapcsolatban egy csomagszűrővel.

Továbbá az alkalmazásszintű tűzfalak azáltal szűrik a kapcsolatokat, hogy megvizsgálják az adatcsomagok folyamatainak azonosítóit egy, a helyi adatátvitelben érintett folyamatokra vonatkozó szabályhalmaz alapján. Az alkalmazások változatossága miatt az alkalmazásszintű tűzfalak csak az alapértelmezett szolgáltatásokkal képesek összetett szabályhalmazt kezelni, mint például a megosztási szolgáltatások. Ezek a folyamatalapú szabályhalmazok korlátozott hatékonysággal bírnak minden egyéb folyamattal szemben. Szintén nem képesek kivédeni a process módosításokból származó veszélyeket, mint például a memória-fertőzésveszély. Ezek miatt az alkalmazásszintű tűzfalakat egyre inkább leváltja egy új tűzfal generáció, ami az úgynevezett homokozó (sand boxing) módszert alkalmazza, hogy védelmet nyújtson a kártékony szolgáltatások ellen. Egy ilyen tűzfal például az AppArmor.

A kiszolgáló alapú alkalmazásszintű tűzfalak biztosíthatnak hálózat alapú alkalmazásszűrést is.

Példák[szerkesztés]

A fenti fogalom jobb illusztrálása érdekében a következő szakaszban felsorolunk néhány konkrét megvalósítást.

Megvalósítások[szerkesztés]

Különféle tűzfal megvalósítások érhetők el, köztük az ingyenes, nyílt forráskódú és a kereskedelmi termékek is.

Mac OS X[szerkesztés]

Mac OS X, mint például a Leopard, tartalmaz egy MAC keretrendszert, ami FreeBSD-ből származik. TrustedBSD keretrendszer is a homokozó technikát alkalmazza, mint a mDNSresponder, hasonlóan az AppArmorhoz néhány Linux disztribúcióban. A TrustedBSD MAC keretrendszer egy alapértelmezett tűzfalréteget biztosít, beállítva a megosztási szolgáltatást a MAC OS X Leopard és Snow leopard rendszerekben.

A MAC OS X Leopard verziójától kezdve a biztonsági beállításokban megtalálható alkalmazásszintű tűzfal korlátozott tűzfalszolgáltatást nyújt a digitális forráskód aláírás technológiának köszönhetően. Többségében ez az alkalmazásszintű tűzfal csak azt ellenőrzi hogy a bejövő kapcsolat egy olyan alkalmazás felé irányul-e ami megtalálható a tűzfal blokkolt vagy engedélyezett alkalmazások listáján.

Linux[szerkesztés]

A következő lista olyan Linux szoftvercsomagokat tartalmaz, amelyek lehetővé teszik az operációs rendszer kommunikációjának szűrését felhasználói jogosultság alapon.

Windows[szerkesztés]

Különleges alkalmazásszintű tűzfalak[szerkesztés]

A különleges alkalmazásszintű tűzfalak gazdag szolgáltatásokat nyújtanak a különleges alkalmazások védelme és vezérlése érdekében. A legtöbb különleges hálózati alkalmazásszintű tűzfal a webalkalmazások számára készül.

Elosztott webalkalmazás-szintű tűzfalak[szerkesztés]

Az elosztott webalkalmazás-szintű tűzfalak (dWAF) a webalkalmazás-szintű tűzfalak és a webalkalmazás-szintű tűzfalak közé tartoznak. Ezek tisztán szoftveralapúak. A dWAF architektúrát arra tervezték, hogy képes legyen elkülöníteni a hálózat különböző területein található fizikai komponenseket. Úgy tervezték, hogy különálló komponensként képes legyen a hálózat különböző területein létezni. Ennek az architektúrának az előnye abban nyilvánul meg, hogy megengedi a dWAF számára, hogy az erőforrás felhasználása szétterjedjen a hálózaton ahelyett, hogy egy konkrét hardverre nehezedjen, így szabad utat engedve a szükség szerinti skálázhatóságnak. Ez a megközelítés ideális a nagy, elosztott virtualizált infrastruktúrák számára, mint például a privát, publikus vagy a hibrid felhő modellek.

Felhő-alapú webalkalmazás-szintű tűzfalak[szerkesztés]

Az felhő-alapú webalkalmazás-szintű tűzfalak a webalkalmazás-szintű tűzfalak és a webalkalmazás-szintű tűzfalak közé tartoznak. Ez a tűzfal úgy működik, hogy a DNS manipulálással minden webforgalmat átirányítanak ezen a WAF-on, ahol megvizsgálja azt. A felhő alapú WAF tipikusan központilag vezérelt. Mint a többi felhő alapú megoldás, ez a technológia is rugalmas, skálázható, és tipikusan közüzemi szolgáltatásként vehető igénybe.

2010-ben Incapsula-ból kivált az Imperva, hogy egy felhő alapú WAF szolgáltatást biztosítson a kis és közepes méretű cégek számára.

Webalkalmazás-szintű tűzfalak[szerkesztés]

Kombinált hálózati és alkalmazási tűzfalak[szerkesztés]

A kombinált hálózati és alkalmazásszintű tűzfalak általában kevesebb szolgáltatást biztosítanak mint a különleges alkalmazásszintű tűzfalak. Sok ezek közül külön licenc alatt biztosítja a teljes alkalmazás szolgáltatásait.

További információk[szerkesztés]