#acl All:read <> = IPv6 Tűzfalak és az IPv6 biztonsági megoldások kialakítása és vizsgálata = Az IPv6 protokoll és környezet biztonsági elemei alapvetően a következő kategóriákra bonthatóak * IPv6 protokoll beépített biztonsági tulajdonságai * IPv6 protokollhoz kapcsolódó kötelező protokoll elemek pl. IPSec * IPv6 protokollhoz kapcsolódó kiegészítő protokoll elemek pl. SEND * IPv6 tűzfalak * IPv6 IDS/IPS rendszerek Ebben az alszakaszban elsősorban az IPv6 tűzfalakra koncentrál a projekt de hogy azt megfelelően el lehessen helyezni. Tárgyaljuk a többi elemet is. == IPv6 protokoll és a biztonság == === Kapcsolódó dokumentációk === * Átekintés az IPv6 protokoll biztonságáról * [[attachment:6net_ipv6security.pdf|6NET dokumentáció az IPv6 biztonságáról]] - Szerzők: Mohácsi János, Georgios Koutepas, Athannasios Liakopoulos, Eric Vyncke, Carlos Friacas - Angol nyelvű * [[Áttekintés_az_IPv6_biztonságáról]] - Szerzők: Mohácsi János - Magyar nyelvű * IETF RFC-k és draftok az IPv6 biztonságával kapcsolatban * [[http://tools.ietf.org/html/rfc4942|IPv6 transitions security overview]] - Szerzők: Elwyn Davies, S. Krishnan, P. Savola * [[http://tools.ietf.org/html/rfc3964|Security Considerations for 6to4]] - Szerzők: P. Savola, C. Patel * [[http://tools.ietf.org/html/rfc4891|Using IPsec to Secure IPv6-in-IPv4 Tunnels]] - Szerzők: R. Graveman, M. Parthasarathy. P. Savola, H. Tschofenig * [[http://tools.ietf.org/html/rfc4890|Recommendations for Filtering ICMPv6 Messages in Firewalls ]]- Szerzők: E. Davies, J. Mohacsi * Előadások az IPv6 biztonságával kapcsolatban * [[http://www.6diss.org/workshops/see-1/security.pdf|IPv6 Security előadás ]]- 6DISS workshop Kopaonik, Szerbia 2006 Március - Előadó: Mohácsi János * [[http://www.6diss.org/workshops/saf/security.pdf|IPv6 Security előadás ]]- 6DISS workshop Port Elizabeth, Dél-Afrika 2005 Szeptember - Előadó: Mohácsi János * [[https://www.terena.org/events/tnc2006/programme/presentations/show1c91.html?pres_id=190|The Security Implications of IPv6 ]] - Terena Networking Conference 2006, Catania, Italy - Előadó: Mike Warfield * [[http://www.seanconvery.com/Internet2.pdf|IPv6 Dual Stack Security Considerations]] - October 2004, Internet2 Fall 2004, IPv6 Security Panel - D. Miller, S. Convery, * [[http://www2.garr.it/conf_05_slides/j_mohacsi-IPv6_sec.pdf|IPv6 Security: New threats and countermeasures]] - 3rd 6NET workshop & GARR 2005 conference, Pisa, Italy - Előadó: Mohácsi János * [[http://tnc2004.terena.org/programme/presentations/show2149.html?pres_id=115|Security of IPv6: from a firewalls point of view]] - Terena Networking Conference 2004, Rhodes, Greece - Előadó: Mohácsi János * [[http://www.6net.org/events/workshop-2003/marin.pdf|What are the new challenges in securing IPv6 networks?]] 2nd 6NET workshop, Terena Networking Conference 2003, Zagreb, Croatia - Előadó: Eric Marin * [[http://ipv6.niif.hu/~mohacsi/downloads/athens_tf_ngn_ipv6_firewalls.pdf|IPv6 firewalls]] - TF-NGN meeting October 2001, Athens - Előadó: Mohácsi János * Egyéb cikkek: * [[http://www.cs.columbia.edu/~smb/papers/v6worms.pdf|Worm Propagation Strategies in an IPv6 Internet]] ;login:, February 2006 - Szerzők: Steven M. Bellovin, Angelos Keromytis, and Bill Cheswick * [[http://www.cs.columbia.edu/~smb/papers/tarp/tarp.html|Transient Addressing for Related Processes: Improved Firewalling by Using IPV6 and Multiple Addresses per Host]] - Proceedings of the Eleventh Usenix Security Symposium, August 2001, - Szerzők: Peter M. Gleitz and Steven M. Bellovin * IPSec-hez kapcsolódó anyagok * SEND-hez kapcsololódó anyagok == IPv6 tűzfalak == IPv6 tűzfalak az elmúlt évben kezdtek megjelenni a különböző operációs rendszerekhez. A projektben elsősorban a szabadon hozzáférhető vagy routerekbe épített tűzfal rendszereket vizsgáltuk, de felvettük a kapcsolatot kereskedelmi tűzfal gyártó cégekkel is, akik azt állítják magukról, hogy támogatják az IPv6-ot. Egyelőre válaszra sem méltattak bennünket. A projektben az IPv6 tűzfalakat szisztematikusan teszteltük [[Tüzfal_teszt_környezet| tipikus beállításokkal]], hogy meggyőződjünk róla, hogy alapvetően el tudják látni funkcióikat. <> === BSD pf tűzfal === Az OpenBSD-hez kifejlesztett pf tűzfal 2002 óta támogatja IPv6-ot. Gyakorlatilag 2004 decembere óta az összes szabadon elérhető BSD operációs rendszer (FreeBSD, NetBSD, OpenBSD) tartalmazza a pf csomagszűrő tűzfalat amely képes stateful packet inspection műveletre, ami segítségével könnyebben és hatékonyabban lehet a tűzfal szabályokat megfogalmazni. A projekt során kidolgozásra került oktatási anyagok az alábbi linkeken érhetők el: * [[attachment:ipv6_pf.pdf|Bevezetés a BSD pf IPv6-os használatába]] * Példa BSD pf konfigurációs állományok * [[attachment:pf_boot_client.conf.txt|Minimális DHCP/SLAAC boot kliens PF file - IPv6 autkonfiguráció támogatással, de minden egyéb kommunkáció blokkolva - nem alkalmas komplett kommunikációhoz]] * [[attachment:pf_simple_client.conf.txt|Kliens pf.conf file - IPv6 kommunikáció alapvető támogatása]] * [[attachment:pf_simple_firewall_noserver.conf.txt|Egyszerű tűzfal rendszer - alapvető IPv6 kommunikáció engedélyezve védett hálózatból kifelé, védett hálózatba csak a válaszok juthatnak be]] * [[attachment:pf_simple_firewall_http_ssh_server.conf.txt|Egyszerű tűzfal szabályok - alapvető IPv6 kommunikáció engedélyezve védett hálózatból kifelé, védett hálózatba csak a válaszok juthatnak be, illetve lehetséges a komminkáció a HTTP és SSH szerverrel]] <> === FreeBSD ip6fw tűzfal === Az erdetileg BSDI-hez kifejlesztett majd a FreeBSD-hez újra írt {{{ipfw}}} tűzfal rendszer IPv6-os portját a [[http://www.kame.net|KAME]] projekt készítette el. Ez a tűzfal rendszer teljes mértékben integrálva van a FreeBSD rendszerbe, olyan szinten, hogy kiindulási konfigurációs fájlok is elérhetőek az alap rendszer részeként az {{{/etc/rc.firewall6 }}}. Az integráltsága ellenére a legnagyobb hibája az ipfw rendszerenek, hogy az IPv6-os része nem müködik stateful módon. A legútobbi fejlesztések eredményeként a FreeBSD 6.1 rendszerben az {{{ipfw}}} segítségével is lehetséges az IPv6 tűzfal szabályokat módosítani. * [[attachment:ipv6_ip6fw.pdf|Bevezetés a FreeBSD ip6fw használatába]] * Példa FreeBSD ip6fw konfigurációs állományok * [[attachment:ip6fw_client.conf.txt|Kliens ip6fw.conf file - IPv6 kommunikáció alapvető támogatása]] * [[attachment:ip6fw_simple.conf.txt|Egyszerű tűzfal rendszer - alapvető IPv6 kommunikáció engedélyezve védett hálózatból kifelé, a tűzfal DNS és NTP szerverként funkcionál]] * [[Ip6fwVM| ip6fw tesztek virtuális környezetben]] <> === Linux Netfilter/ip6tables tűzfal === A Linux 2.6.16-os változatú kernel már támogatja IPv6 connection tracking működést, olyan módon, hogy a connection tracing protokoll független módon van implementálva. Ez mindenképpen szükséges hatékony és gyors IPv6 tűzfal szabályok konfigurálásához. Jelenlegi korlátozása a NF connection trackingnek, hogy nincsen hozzá NAT modul: 1. A kernel konfigurálásakor a default connection tracking modult ki kell kapcsolni (IP_NF_CONNTRACK) * Connection tracking (required for masq/NAT) különben a Layer-3 független kapcsolatnyomkövetö réteget (NF_CONNTRACK) * Layer 3 Independent Connection tracking (EXPERIMENTAL) nem lehet kiválasztani. 2. Fordítsuk be a kernelbe a következő kernel modulokat: * ip6table_filter - tüzfal szürési modul * nf_conntrack_ipv6 - IPv6 connection tracking * nf_conntrack_ftp - FTP helper . * Bevezetés a Netfilter IPv6-os használatába * [[attachment:ip6tables.conf.txt|Példa Netfilter/ip6tables IPv6-os konfigurációs állomány]] ==== SecureFilter 2.3 ==== A munkaszakasz eredményeként előált a KFKI-RMKI SzHK által kifejlesztett !SecureFilter tűzfal-rendszer egy újabb verziója (2.3), amely az IPv4-es protokollon kívül az IPv6-os protokollt is támogatja. A !SecureFilter legújabb verziója és a kapcsolódó dokumentációk elérhetőek a szoftver honlapján: http://www.kfki.hu/cnc/projekt/securefilter/ === Cisco ACL-ek IPv6-os használata === A Cisco IOS 12.2(2)T vagy 12.3(1)M illetve Cisco 12.2(14)S változata után az IOS lehetőséget biztosít a csomagok IPv6 szinten történő szűrésére. A szűrés csomagok szintjén lehetséges két fajta módón: * Alap (Standard) ACL-ekkel - ahol csak az IPv6 címek alapján lehet szűrni * Kibővített (Extended) ACL-ekkel - ahol protokoll mezők és portszámok alapján is lehet szűrni Ezenkívül lehetséges szimulálni a állapotfigyelő tüzfalak müködését ún. reflexiv ACL-ek segítégével. Az IPv6 FTP kapcsolatok felügyeletetét is támogatja a 12.3(11)T változat után - ftp inspection segítségével - ehhez teljesen bele kell olvasni az FTP csomagok protokoll részébe - ez csak SW alapú platformokon támogatott. * [[attachment:ipv6_ciscoacl.pdf|Bevezetés a Cisco ACL-ek IPv6-os alkalmazásába ]] * [[attachment:ipv6_ciscoacl_cisco.pdf|Cisco előadás a Cisco ACL-ek IPv6-os tulajdonságairól]] '''Figyelem!''' A Cisco ACL-ek egy nagyon furcsa implicit szabály rendszert tartalmaznak: * Ha nincsen deny szabály, akkor implicete engedélyezik a Neighbor Discovery csomagokat {{{ permit icmp any any nd-na permit icmp any any nd-ns deny ipv6 any any }}} * Ha azonban van deny szabály, akkor explicite engedélyezni kell a Neighbor Discovery csomagokat a szabályokban! === Microsoft Windows XP (SP2 után) & Windows 2003 tűzfalak === A Microsoft Windows XP SP2 után és a Windows 2003 szerver rendszerek tartalmaznak egy beépített tűzfalat, ami képes a bejövő csomagok megszűrésére. A bejövő csomagok szűrésére általában ugyanazt a szabályt használja a Windows rendszer mint az IPv4 esetében - ezzel lehetőség van a konzisztens tűzfal szabályrendszer kialakítására. Egy plusz lehetőség az IPv6 esetében, hogy lehet külön engedélyezni a IPv6 PATH-MTU-Discovery-t az ICMP fülön. * [[attachment:ipv6_windowsxp_firewall.pdf|Bevezetés a Windows XP tűzfal IPv6-os alkalmazásába ]] '''Figyelem!''' A Windows tűzfal rendszere nem képes a védett hálózatból/gépről induló csomagokat szűrni '''Megjegyzés!''' Egyéb windows tűzfalak (pl. Kerio, !ZoneAlarm stb.) nem támogatják az IPv6 protokollt. Szólni kell nekik, hogy ezt muszáj megtenniük. === NetScreen tűzfalak === [[NetScreen_tuzfal_config| NetScreen tűzfal IPv6 konfiguráció]] == IPv6 Intrusion Detection/Prevention rendszerek == * [[attachment:IDS-and-IPv6.pdf|IPv6 challenges for IDS ]] * [[http://www.sikurezza.org/ml/12_02/msg00178.html|Experimental IPv6 decoder for SNORT]] * [[http://www.snort.org/archive-5-1312.html|SNORT IPv6 support]] = Eredmények = A munkaszakasz keretében tételesen a következők készültek el: * !SecureFilter * !SecureFilter 2.3. (ISO image, Debian Linux OS-el együtt) * !SecureFilter 2.3 leírás és telepítési útmutató (magyar) * !SecureFilter Howto (magyar) * essence 2.0 manual oldal (angol) * Telepítés képernyő-képek * IPv6 biztonsági áttekintések * IPv6 tüzfal konfigurációs javaslatok * BSD pf IPv6 tűzfal konfigurációs tutorial és javaslatok