|
Ateş duvarları ağın içinden veya dışından gelen yetkisiz erişimleri
engelleyen, süzen ve izin denetimi sağlayan yazılımlar veya
donanımlardır. Ateş duvarlarını yazılımsal, donanımsal veya her
ikisinin de bir arada oldugu gruplara ayırabiliriz. Aslına bakarsanız
donanımsal olanların üstünde de bir çeşit gömülü yazılım (firmware),
BIOS vs ismi altında yazılımlar çalışmaktadır.
Ateş duvarı deyince sadece bizi dışarıdan gelen saldırılara karşı
koruyan birşey düşünmemek gerekir. Gelişmiş ateş duvarları bunların
dışında NAT (Ağ Adres Çevrimi), VPN (Virtual Private Networking - Sanal
Özel Ağ) gibi teknolojileri de bize sunarlar. Fakat şimdilik bu
konulara girmeyeceğiz.
Koruma sağlamak için çeşitli ateş duvarı tipleri/teknolojileri vardır. Bunlardan en çok kullanılanları şunlardır;
Uygulama Katmanlı Ateş Duvarı - Application Level Firewall
Bu tip ateş duvarları içeri veya dışarı gidecek OSI modelinde uygulama
(application) katmanında çalışan belli iletişim kurallarına bakarlar
(OSI modeli ağ ortamında bilgisayarların birbirleriyle haberleşirken
kullandıkları yedi katmanlı bir standarttır). Programcılar ve ağ
cihazlarını üreten firmalar bu standarta uyarak ürünleri bize sunarlar.
İsteseler uymazlar da ama o zamanda standart dışında kalacakları için
yaptıkları bir işe yaramayacaktır. OSI modelini daha fazla uzatmayalım.
Başka bir makalede yedi katmanı da detaylı anlatırım. Konumuza dönelim.
FTP,HTTP,SMTP,POP3,IMAP,TELNET,FINGER,DNS.... Uygulama katmanında
çalışan iletişim kurallarından bazılarıdır.
Uygulama Katmanlı Ateş Duvarı - Application Level Firewall, Devam
İç ağdaki (LAN) bir kişi Internet Epxlorer'ı açtı
"www.tomshardware.com.tr" yazdı giriş tuşuna bastı diyelim. Yazılım dış
ağdaki (Internet) sunucuya bağlanmak isteyecektir ve 80 numaralı portu
hedef olarak gösterecektir. Bu paket ateş duvarına geldiğinde tamam iyi
güzel paket 80 numaralı porta gidiyor ama içinde HTTP var mı yok mu ona
bakar. Varsa HTTP'nin içinde istemediğim bir şey var mı yok mu ona da
bakabilir.
İstemciler bunu yapabilmek için bir yazılım kullanırlar. Bu yazılımda
IP paketi içerisine kendisi ile ilgili bilgiyi yerleştirir. Bu sefer
yönlendirici bölümünde bahsettiğimiz gibi IP başlığına değil de
uygulama başlığına (application header) koyar. Ateş duvarı da IP
paketini açar bakar ve bu başlık ile ilgilenir (Bütün ateş duvarları
paketleri açıp içlerine bakarlar. Sadece baktıkları yerler veya
kullandıkları teknolojiler farklılık gösterir). Bu tip ateş duvarlarını
MSN'yi dışarıya engellemek için kullanılabiliriz.
| 7.Uygulama (Application) |
HTTP, DNS, FTP, TFTP, BOOTP, SNMP, POP3, SMTP, MIME, NFS, FINGER, TELNET, SMB |
| 6.Sunum (Presentation) |
Şifreleme varsa burada gerçekleşir. |
| 5.Oturum (Session) |
NetBIOS, Names Pipes, Mail Slots, RPC |
| 4.Taşıma |
TCP, ARP, RARP, SPX, NWLink, NetBIOS, NetBEUI |
| 3.Ağ |
IP, IPX (Yönlendiriciler burası ile ilgilenir) |
| 2.Veri Bağlantısı |
Mantıksal bağlantı kontrolu : 802.1,802.2
Media Access Control(MAC) : 802.3CSMA/CD (Ethernet) 802.5 Token Ring |
| 1.Fiziksel |
IEEE 802,IEEE 802.2,ISDN |
Burada
siz MSN'de A harfine bastınız diyelim. Dünyanın her yerinde yediden
bire kadar olan sıra izlenir. Bire gelindiğinde A harfiniz artık
elektriğe dönüşmüştür ve karşı tarafa gönderilir. Karşı taraf da birden
yediye kadar olan sırayı izler ve karşısında A harfini (uygulama
katmanında) görür. Her katman bir üst veya alt katman ile ilgilenir.
İki üstü ile ilgilenmez. Bir sıra izlenmelidir. İletişim kuralları
(protocol) ve yapılan işlemler sadece örnek olsun diye yazılmıştır.
Bunların dışında daha pek çok işlem ve iletişim kuralı vardır.
Paket Süzen Ateş Duvarı (Packet Filtering Firewall)
Bu tip ateş duvarları IP iletişim kuralını (protocol), IP adresini ve
port numarasını denetleyen eden bizim tarafımızdan belirlenen bazı
kurallar (rule) içerirler. O yüzden ayarlarını çok iyi yapmamız
gerekmektedir. Diğer türlere nazaran daha zahmetlidir. Bu tip ateş
duvarları paketlerin uygulama olup olmadığıyla değil ağ tarafı ile
ilgilenirler.
IP paketini açıp IP başlığına yani kaynak (source) hedef (target), iletişim kuralı, port vs bakarlar.
Bunun bir kötü tarafı vardır. Örneğin ağ sunucunuz var diyelim. Her
şeyi engelleyip sadece web trafiğini açarsınız. Buraya kadar her şey
güzel. Herkes web sunucunuza erişiyor.
Başka hiçbir şey yapamıyorlar ama sizin web sunucunuza saldıran da
erişiyor gezinti yapan da. Bunu ayırt edebilmesi için IDS (Intrusion
Detection System - Saldırı Denetleme Sistemi) veya IPS (Intrusion
Prevention System - Saldırı Önleme Sistemi) özelliginin olması gerekir.
Paket süzen ateş duvarları bu farkı algılayamazlar.
Ayrıca bu tip ateş duvarları stateful packet inspection (ip paket
denetleme) yapamazlar. Yani paketlerin gerçekten istenilen iletişim
kuralı (protocol), port ve ip den gelip gelmediğini anlayamazlar. Biraz
daha açmak gerekirse paketin daha önceden kurulmuş bir bağlantıdan mı
geldiğini anlayamazlar. Eklediğimiz kural ne diyorsa ona bakarlar.
Yani bu tip ateş duvarına "sadece dışardan gelen paketlere izin ver ama bağlantı daha öncedenkurulmuş olsun" diyemiyoruz.
Bu biraz kafa karıştırıcı olabilir. Burada şunu anlamamız gerekiyor.
Mesela A ve B makinası TCP bağlantısı kurduğunda üç yollu el sıkışma
(3-way handshake) diye bir işlem gerçekleşir.
Basit olarak anlatacak olursak, bu işlemde A makinası B makinasına
(1)SYN paketi gönderir. B makinası karşılık olarak (2)SYN/ACK gönderir.
Ondan sonra A makinası B'ye (3)ACK paketi gönderir ve bağlantı kurulmuş
olur. Siz bilgisayarınızda başlat/çalıştır a "cmd" yazıp komut
isteminde "netstat -an" yazarsanız gördüğünüz "ESTABLISHED" bağlantılar
bu işlemin gerçekleştigini göstermektedir. Daha fazla ayrıntıya girmek
istemiyorum. Sonuç olarak herhangi bir A makinası böyle bir işlem
olmadan paket süzen bir ateş duvarının zaafından yararlanabilir. Mesela
saldıran biri durmadan SYN gönderebilir. IP yanıltma (spoofing)
yapabilir.
Durum Denetlemeli Ateş Duvarı (Stateful Firewall)
Bunlar paket süzen ateş duvarları gibilerdir ama daha akıllılardır.
90'larda Checkpoint firması tarafından geliştirilmiştir. Zamanla bir
standart haline gelmiştir. OSI modelinde ağ katmanına ve iletim
katmanına bakarlar (bazen tüm paketi daha iyi incelemek için üst
katmanlara da bakarlar).
Örnek verecek olursak yine bir ağ sunucunuz var diyelim. Siz kural eklersiniz ve kullanıcılar sunucuya bağlanır.
Bu noktada bu tip ateş duvarları gelen isteğin gerçekten bağlantı
kurulacak IP olup olmadığına, iletişim kuralına, kaynak ve hedef
portlarına bakarlar. Ondan sonra üç yollu el sıkışma (3-way handshake)
gerçekleşir ve bağlantı kurulur. Mesela saldırgan yanıltma (spoofing)
yapıyorsa (yani kendi ip adresini, iletişim kuralını veya portunu
olması gerektiğinden farklı gösteriyorsa) bunu anlarlar ve karşı tarafa
SYN/ACK göndermezler ve paket karşı tarafa herhangi bir bilgi
göndermeden düşürülür (Drop).
Bu olmasa ne olurki diyeceksiniz. Mesela eğer böyle bir şey olmazsa
saldırgan on binlerce yanıltıcı paket gönderip sizin ağ sunucunuzu
gelecek gerçek SYN paketlerine SYN/ACK gönderemez hale getirebilir.
Sonuç olarak kimse sunucuya erişemez.
Yine de bu ateş duvarları hala iyi ve kötü trafiği algılayamazlar. IDS
veya IPS gereklidir. Bu noktada IDS veya IPS'inde tabiri caizse kul
yapımı olduğunu belirtmek gerekiyor.
Yani bunlar bilmedikleri kötü trafik için bişey yapamazlar. Bazı
firmalar kendi IDS veya IPS sistemlerinin akıllı olduklarını ve
bilinmeyen saldırılara karşı önlem alabildiklerini iddia etseler de ne
kadar başarılı olduğu konusunda şüphe duymak gerekir. IDS/IPS demişken
ateş duvarı ile ilgili bir teknoloji daha var. Buna da Deep Packet
Inspection(Derin Paket İnceleme) diyoruz. Bu IDS/IPS ile tümleşik
çalışan bir teknolojidir. Şimdilik bu konuya değinmeyeceğiz.
Durum denetimi yapan (Stateful) ateş duvarına tanıdık bir örnek verecek
olursak Windows'umuzun o basit ateş duvarı bu türdendir.
Firewall Programları:
Kerio Personal Firewall
McAfee Personal Firewall
ZoneAlarm Professional
Symantec Internet Security
http://www.virusguvenlik.com dan alınmıştır.
|