Határvédelmi technológiák
Az internet felől jövő fenyegetések elhárításának egyik alapköve a megfelelő határvédelem. A koncepció alapelve, hogy a hálózatot védett (belső, biztonságos) és nyilvános (külső, nem megbízható) zónákra osztjuk és a köztük zajló forgalmat ellenőrizzük.
Tartalomjegyzék |
OSI modell
Ahhoz, hogy bármely két számítógép kapcsolatba tudjon lépni, kommunikációs szabványokra van szükség. Ezek rendszerezését segíti az OSI (Open Systems Interconnection) modell, amely a kommunikációs funkciókat hét absztrakt logikai rétegbe csoportosítja. Minden szint az alsóbbak szolgáltatásait felhasználva nyújt újabb funkciót a kommunikációhoz.
Az egyes határvédelmi eszközök a modell különböző rétegeiben fejtik ki hatásukat. Egy komlex határvédelmi rendszerben – a védett erőforrásoktól függően – több, különböző rétegben működő eszközt is alkalmazhatnak.
A tűzfalak szempontjából legfontosabb rétegek:
3. a hálózati réteg (network layer)
Feladata, hogy az adatcsomagokat eljuttassa a hálózat egyik csomópontjából a másikba. Az internet hálózati réteg protokollja az IP (Internet Protokoll). A hálózat csomópontjainak IP címe van. A réteg a forrás és célállomás közötti útvonalválasztás mellett fragmentálást, protokoll átalakítást, hiba ellenőrzést is végezhet.
4. a szállítási réteg (transport layer)
A végpontok közötti megbízható, hibamentes adatátvitelt biztosítja. Feladata az összeköttetések felépítése, bontása, csomagok sorrendbe állítása. Az alkalmazásoktól kapott hosszú üzeneteket kisebb csomagokra bontja a hálózati réteg számára. Az internet leggyakoribb szállítási réteg protokolljai a TCP (Transmission Control Protocol) és az UDP (User Datagram Protocol). Néhány protokoll (például a TCP) állapot- és kapcsolat érzékeny. Ez azt jelenti, hogy a réteg nyomon követi az adatcsomagokat, és hiba esetén gondoskodik az újraküldéséről.
7. az alkalmazási réteg (application layer)
Közvetlenül az alkalmazások kommunikációs komponensével van kapcsolatban. Támogatja az alkalmazások egymás közötti kommunikációját olyan funkciókkal, mint a partner azonosítása, erőforrás elérhetőségének vizsgálata vagy a kommunikáció szinkronizálása. Ismert alkalmazási réteg szintű protokollok a HTTP, az SMTP, az FTP és a Telnet.
Határvédelmi eszközök
Tűzfalak
A tűzfal (firewall) hardver- és szoftverkomponensekből álló rendszer egy gateway szerveren. Célja, hogy megvédje egy privát hálózat erőforrásait a kívülről történő illetéktelen hozzáféréstől. A tűzfalak jegyzik az átmenő forgalmat, és a biztonsági házirendnek megfelelően reagálnak.
csomagszűrő (stateless/static packet filter)
Az ilyen elven működő tűzfal minden egyes csomagról kontextustól függetlenül, a benne található információk alapján dönt.
A felhasznált információk jellemzően a forrás- és cél cím, a használt protokoll, különböző flagek, valamint TCP és UDP forgalom esetén a forrás- és célport száma
A tűzfal döntése lehet a csomag továbbítása, elvetése vagy eldobása, illetve naplóbejegyzés rögzítése. Az elvetés az eldobástól abban különbözik, hogy az eldobott csomagról a tűzfal semmilyen jelzést nem küld.
A döntés alapja egy szabálylista, aminek minden bejegyzése egy tulajdonság halmazhoz rendel egy cselekvést. A tulajdonságok között mindig szerepel egy forrás (IP:port) – cél (IP:port) pár, valamint opcionálisan bármennyi a csomag által hordozott (fentebb felsorolt) információk közül. A cselekvés lehet az, hogy az adott bejegyzésre illeszkedő csomagot engedélyezni vagy tiltani kell, esetleg naplózni vagy másik szabályra ugrani.
A bejegyzések feldolgozása lineáris, és általában az első illeszkedésig tart, ezért számít a sorrend. A specifikus szabályoknak előre, az általánosaknak a lista végére kell kerülnie.
Ez a tűzfal típus az OSI modell hálózati rétegét, és a szállítási réteg létezését használja fel.
A TCP és az UDP protokoll bizonyos „szokásos” (well known) portokat használ az egyes forgalom fajtákhoz (pl. http: 80, smtp: 25, FTP: 21, DNS: 53). A csomagszűrő tűzfal el tudja különíteni a portok használatát, de nem ismeri a TCP/UDP logikáját, forgalmi előzményeit. Így egy statikus csomagszűrőn átjuthat olyan „válasz” csomag, amihez nem tartozik előzmény „kérdés”.
állapot tartó csomagszűrő (stateful/dynamic packet filter)
A csomagszűrő bővített formája. Az így működő tűzfal megjegyzi az egy-egy kapcsolatban átmenő csomagok bizonyos tulajdonságait, és ezekből meghatározza és tárolja a kapcsolat állapotát.
Az aktív kapcsolatok forrás- és cél címe, valamint a használt portok egy dinamikus kapcsolat táblába kerülnek. Hogy ez a tábla ne teljen meg, azok a kapcsolatok, amiken nincs forgalom, törlődnek. Emiatt sok alkalmazás periodikusan keepalive (életben tartó) üzeneteket küld, hogy a tűzfal ne törölje a kapcsolatot, amíg a felhasználó tétlen.
A legerőforrásigényesebb művelet az új kapcsolatok ellenőrzése. Ha egy csomag egy már létező kapcsolathoz tartozik, akkor további vizsgálat nélkül átmehet, ami jelentősen gyorsítja a feldolgozást. Ha viszont nem tartozik regisztrált kapcsolathoz, akkor a tűzfal nem engedi át. Ez megakadályozza a hackert abban, hogy kívülről kezdjen kapcsolatot a védett számítógéppel.
Ehhez a tűzfal teljesen felhasználja az OSI modell 3. és 4. szintjét.
Az állapot tartó csomagszűrő nem ismeri a porthoz tartozó alkalmazás protokollt, így például egy eredetileg webkiszolgálás céljára megnyitott 80-as porton átjuthat olyan nem szabványos http kérés, ami a mögöttes szerver meghibásodását okozhatja. Azt sem tudja megakadályozni, hogy ugyan ezen a porton egészen más (pl. ssh) alkalmazás forgalma menjen át.
alkalmazásszintű tűzfal (application-layer firewall)
Az ilyen tűzfal az átmenő csomagok tartalmát is figyeli. Értelmezi az átfolyó forgalmat, és ellenőrzi, hogy az adott porton zajló kommunikáció szabványos-e. Így például képes rá, hogy blokkolja a 80-as porton átmenő ssh forgalmat, és ezzel akár behatolási kísérleteket hiúsítson meg.
A kommunikáció ilyen értelmezése a 7. OSI réteghez tartozik.
A csomagok tartalmának vizsgálata miatt lassabb, mint a csomagszűrő tűzfalak.
Látható, hogy ahogy nőtt az elérhető számítási teljesítmény, úgy az egyre fejlettebb tűzfalak az OSI modell egyre magasabb szintjein dolgoztak. Egyre több és komplexebb információt kellett feldolgozniuk, viszont erősebb és jobban testreszabható szolgáltatást adnak.
proxy
A kliens a tűzfallal épít ki egy kapcsolatot, a tűzfal pedig a szerverrel egy másikat, így biztosítja a kommunikációt. A klienstől érkező kéréseket értelmezi, majd a szükséges adatokat a proxy kéri le a szerverről, így magas szintű védelmet tud nyújtani. (Például blokkolhatja az exe kiterjesztésű fájlok átvitelét FTP-n keresztül.)
Csak olyan kommunikációban használható, amit értelmezni tud. Minden magasabb kommunikációs protokollnak (HTTP, FTP, DNS, SMTP, POP3, MS-RPC, stb.) van egy saját, dedikált proxy-ja, de egy tűzfalon több proxy is futhat egyszerre.
A proxy a címfordítási (Network Address Translation – NAT) beállításaitól függően többféleképpen viselkedhet a hálózatban. Ha nem végez címfordítást, akkor a szerver és a kliens azt hiszi, hogy egymással beszélnek, és a proxy mindkét fél számára transzparens. De bármelyik fél láthatja a kommunikációban a másik fél címe helyett a proxyét , és ekkor anonim proxyról beszélünk. Ennek az az előnye, hogy a belső hálózat kívülről felderíthetetlen. Ha a kliensen be kell állítani a proxy használatát, az explicit proxy.
A proxy az OSI modell 7. rétegében működik.
Hátránya, hogy jelentősen növelheti a kapcsolat késleltetését.
Behatolás felismerés és –megelőzés (intrusion detection/prevention system – IDS/IPS)
Az IDS passzívan figyeli a hálózati aktivitást, és feljegyzi a gyanús viselkedéseket és szabálysértéseket. Kritikus eseményekről riasztást is küldhet. Az IPS aktív rendszer, mert különböző technikákkal megpróbálja megakadályozni a betörést (csomag eldobás, TCP reset, tűzfal átállítása).
Az IDS felismerhet betörést a meghatározott normálistól eltérő hálózati aktivitás alapján, vagy szintén előre leírt támadási mintákkal való összehasonlítással. Az első módszer rugalmasabb, ismeretlen támadásokat is felismerhet, de nagyobb eséllyel jelez fals-pozitívan.
Tartalomszűrés (content/information filtering)
Feladata az alkalmazás által szállított felhasználói tartalom vizsgálata. A forgalom értelmezésével rengeteg lehetőség adódik a kapcsolatok ellenőrzésére.
- vírusok felismerése
- spam szűrés
- url szűrés
- ActiveX és JavaScript kiszűrése a weboldalakról
- nem kívánatos tartalom szűrése kulcsszavak alapján
A tartalomszűrők az alkalmazás szintű tűzfalakhoz hasonlóan az OSI 7. rétegében működnek.
A határvédelem rövid története
Az informatikai határvédelem egy rendkívül széleskörű kifejezés, aminek sokféle értelmezése lehet.
Kezdetben a számítógép rendszerek különálló objektumok voltak egy termen belül. Az input és output adatokat kézzel szállították. Emiatt a határ teljesen egyértelmű volt, a biztonságot pedig fizikai szinten lehetett biztosítani.
Később az adatokat távoli terminálokról is be lehetett vinni a központi számítógépbe. Emiatt a fizikai biztonság már nem volt kielégítő, hanem azonosítást, és hozzáférés ellenőrzést kellett bevezetni. A határ viszont továbbra is egyértelmű maradt.
Ma a mobil eszközök és a drótnélküli technológiák elterjedésével a számítógépek nincsenek sem helyhez, sem személyhez kötve. Még az sem mindig egyértelmű, hogy az egyes alkalmazások melyik számítógépen futnak. Különböző rendszerek lépnek kapcsolatba a hálózat határával, ami miatt az dinamikussá válik. Úgy védhetjük meg, ha rendszer határokat definiálunk, amik képesek a hálózat határ részévé válni. Szükség van arra is, hogy globálisan kényszeríteni tudjuk biztonsági szoftver telepítését a mobil rendszerekre. Emellett folyamatosan fel kell derítenünk a hálózatot, hogy újradefiniáljuk a határt, és észrevegyük a veszélyes ismeretlen eszközöket.