Türkiye'deki alternatiflerine nazaran ucuz ve performanslı olması ADSL'yi hemen
cazip hale getirdi. Tabi bununla birlikte pek çok yeni terim de hayatımıza girdi. Söyle
bir senaryo yazalım. ADSL modem almaya gittik. Bir baktık üzerinde Yönlendirici
(Router), ates duvarı (firewall) gibi terimler yazıyor.
Bilgisayarımıza bağladık yok IP
vereceğiz ağ geçidi (gateway) yazacağız derken ortalık biraz karıstı. Đlk bakısta pek
önemsemedik. Đnternete bağlanayım yeter dedik. Peki, bunlar nedir? Bu yazıda
merak edenler için temel ağ bilesenlerini kısaca açıklamaya çalısacağız. Burada
anlatılan bazı terimler havada kalabilir. Onlar üstünde pek durmayın. Bilgisayarlar
arasındaki iletisim baslı basına bir uzmanlık isidir bu yüzden simdilik sadece öyle bir
sey olduğunu bilmek yeterli.
Bir yönlendirici en az iki ağa bağlıdır. Çoğu zaman bunlar iki tane yerel ağ (LAN) ve
iki tane genis ağ (Genis Ağ) veya yerel ağ ve servis sağlayıcı arasındaki ağ olur (evde
kullandığımız basit ADSL yönlendiricilerimiz yerel ağımız ve Türk Telekom (servis
sağlayıcı) arasındaki yönelendirici konumundadır). Yönlendiriciler yönlendirme islemi
yaparken NAT/PAT (Port Address Translation - Port Adres Çevirimi), Unicast
yönlendirme, Multicasting, Demand-Dial gibi teknolojiler kullanırlar. Kısaca biz NAT'ı
(Network Address Translation - Ağ Adres Çevirimi) birden fazla istemciyi (client) tek
bir IP üzerinden Internete çıkarırken kullanıyoruz. Bunun terside olabilir. Evde
kullandığımız ADSL yönlendiriciler genelde NAT yaparlar ancak bu NAT islemi nasıl
gerçeklesiyor olayına simdilik girmeyelim.
Đstek üzerine çevirim (Demand-Dial) ise herhangi bir istek geldiğinde baslayan
yönlendirmedir. Bu yönlendirmede ISDN, çevirmeli ağ (dial-up) gibi teknolojiler
kullanılır. Đstek üzerine çevirim (Demand-Dial) genelde yedekleme amaçlı veya VPN
geçisi sağlamak amacıyla kullanılır. Numara çevrilir, bağlantı kurulur ve yönlendirme
baslar.
Son olarak kısaca Unicast yönlendirme için iki farklı nokta arasında olan multicast
içinse bir noktadan çıkıp belli noktalara dağılan yönlendirme diyebiliriz. Daha
baskaları da var ama yönlendirme teknolojileri üzerinde fazla durmak istemiyorum.
Yoksa yönlendirici nedir onu unutacağız.
Yönlendiriciler iki veya daha fazla ağın birlestigi yer olan ağ geçidine (gateway'e)
yerlestirilir. Ağ geçitleri mutlaka yönlendirici olmak zorunda değildirler. Ağ geçidi
konusunda daha ayrıntılı bilgiyi ilgili baslıkta vereceğiz. Yönlendiriciler paketin
gideceği yeri IP baslıklarından (header) anlarlar. Diğer özelliklere de bakarlar ama
simdilik bunları bilmek yeterli. Üzerinde bulundurduğu yönlendirme tablolarından
(Routing Table - Hangi IP'nin hangi ağda olduğunu ve o ağa nereden gidileceğinin
bilgisinin tutulduğu tablolardır) istenilen adresi bulurlar ve en iyi, en verimli, en hızlı,
en kısa yolu bulmak içinde RIP, RIPv2, IGRP, IGRP, OSPF gibi iletisim kuralları
kullanırlar. Kendileri ile haberlesmek için ICMP (Internet Control Messaging Protocol
- Đnternet Denetim Haberlesme Đletisim Kuralı) gibi iletisim kuralları kullanırlar.
Örneğin çoğu kisi için tanıdık olan "ping" komutu ICMP iletisim kuralını kullanır.
Ağ Geçidi (Gateway)
Ağ geçidi (gateway) baska bir ağa geçis hizmeti veren bir noktadır. Büyük sirketlerde
genelde ağ geçitleri bir istemciyi (client) internet ortamına yönlendirme görevi
üstlenirler. Bu durumda ağ geçidi bir vekil (Proxy) sunucu veya bir ates duvarı
(firewall) olabilir.
Ağ geçitleri yönlendiriciler ile de ilgilidir. Yönlendiricilerde paket baslıklarına ve
yönlendirme tablolarına bakarak geçisi sağlarlar. Ayrıca yönlendiriciler veya Ates
duvarları VPN ile geçisi sağlayabilir. Bu durumda ismi VPN Ağ Geçidi olacaktır veya
bir e-postalarımızın geçtiği SMTP sunucusu olabilir. Bu seferde ismine SMTP ağ
geçidi diyeceğiz. Vekil (Proxy) sunucuları üzerinden internete çıkabiliriz. Yine bizim
ağ geçidimiz olurlar.
Bu örnekleri vermemin sebebi ağ geçidinin bir kavram olduğunu anlatmak. Biz farklı
bir ağa nereden ulasıyorsak orası bizim ağ geçidimizdir. Evde kullandıgımız ADSL
yönlendiricimiz, sayesinde internete çıktığımız ağ geçitlerimizdir, aynı zamanda bir
yönlendiricidir. Baslat/çalıstıra gelip "cmd" yazdığımızda gelen komut isteminde
"ipconfig" yazarsak orada varsayılan ağ geçidi yanında ADSL yönlendiricimizin IP
adresinin yazdığını görebiliriz.
Sonuç olarak ağ geçitlerini bulunduğumuz yerden farklı bir yere giderken
kullandıgımız çıkıs kapısı olarak düsünebiliriz. Bu çıkıs kapısının vekil sunucu, ates
duvarı veya yönlendirici falan olması hiçbir seyi değistirmez. Bu arada not olarak
söyleyeyim ağ geçitleri farklı ağlar arası geçisin yanında farklı iletisim kurallarının da
(protocol) birbiriyle anlasmasını sağlayan noktalar da olabilirler.
Ates Duvarı(Firewall)
Ates duvarları ağın içinden veya dısından gelen yetkisiz erisimleri engelleyen, süzen
ve izin denetimi sağlayan yazılımlar veya donanımlardır. Ates 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 çesit gömülü yazılım (firmware),
BIOS vs ismi altında yazılımlar çalısmaktadır.
Ates duvarı deyince sadece bizi dısarıdan gelen saldırılara karsı koruyan birsey
düsünmemek gerekir. Gelismis ates duvarları bunların dısında NAT (Ağ Adres
Çevrimi), VPN (Virtual Private Networking - Sanal Özel Ağ) gibi teknolojileri de bize
sunarlar. Fakat simdilik bu konulara girmeyeceğiz.
Koruma sağlamak için çesitli ates duvarı tipleri/teknolojileri vardır. Bunlardan en
çok kullanılanları sunlardır;
Uygulama Katmanlı Ates Duvarı - Application Level Firewall
Bu tip ates duvarları içeri veya dısarı gidecek OSI modelinde uygulama (application)
katmanında çalısan belli iletisim kurallarına bakarlar (OSI modeli ağ ortamında
bilgisayarların birbirleriyle haberlesirken 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ısında kalacakları için
yaptıkları bir ise yaramayacaktır. OSI modelini daha fazla uzatmayalım. Baska bir
makalede yedi katmanı da detaylı anlatırım. Konumuza dönelim.
FTP,HTTP,SMTP,POP3,IMAP,TELNET,FINGER,DNS.... Uygulama katmanında çalısan
iletisim kurallarından bazılarıdır.
Uygulama Katmanlı Ates Duvarı - Application Level Firewall
Đç ağdaki (LAN) bir kisi Internet Epxlorer'ı açtı "www.google.com.tr" yazdı giris
tusuna bastı diyelim. Yazılım dıs ağdaki (Internet) sunucuya bağlanmak isteyecektir
ve 80 numaralı portu hedef olarak gösterecektir. Bu paket ates 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 sey 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 yerlestirir. Bu sefer yönlendirici bölümünde
bahsettiğimiz gibi IP baslığına değil de uygulama baslığına (application header) koyar.
Ates duvarı da IP paketini açar bakar ve bu baslık ile ilgilenir (Bütün ates duvarları
paketleri açıp içlerine bakarlar. Sadece baktıkları yerler veya kullandıkları
teknolojiler farklılık gösterir). Bu tip ates duvarlarını MSN'yi dısarıya engellemek için
kullanılabiliriz.
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üsmüstür ve
karsı tarafa gönderilir. Karsı taraf da birden yediye kadar olan sırayı izler ve
karsı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. Đletisim kuralları
(protocol) ve yapılan islemler sadece örnek olsun diye yazılmıstır. Bunların dısında
daha pek çok islem ve iletisim kuralı vardır.
Paket Süzen Ates Duvarı (Packet Filtering Firewall)
Bu tip ates duvarları IP iletisim 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 ates duvarları paketlerin uygulama olup olmadığıyla değil ağ tarafı ile
ilgilenirler. IP paketini açıp IP baslığına yani kaynak (source) hedef (target), iletisim
kuralı, port vs bakarlar.
Bunun bir kötü tarafı vardır. Örneğin ağ sunucunuz var diyelim. Her seyi engelleyip
sadece web trafiğini açarsınız. Buraya kadar her sey güzel. Herkes web sunucunuza
erisiyor. Baska hiçbir sey yapamıyorlar ama sizin web sunucunuza saldıran da
erisiyor 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 ates duvarları bu farkı algılayamazlar.
Ayrıca bu tip ates duvarları stateful packet inspection (ip paket denetleme)
yapamazlar. Yani paketlerin gerçekten istenilen iletisim kuralı (protocol), port ve ip
den gelip gelmediğini anlayamazlar. Biraz daha açmak gerekirse paketin daha
önceden kurulmus bir bağlantıdan mı geldiğini anlayamazlar. Eklediğimiz kural ne
diyorsa ona bakarlar. Yani bu tip ates duvarına "sadece dısardan gelen paketlere izin
ver ama bağlantı daha önceden kurulmus olsun" diyemiyoruz.
Bu biraz kafa karıstırıcı olabilir. Burada sunu anlamamız gerekiyor. Mesela A ve B
makinası TCP bağlantısı kurduğunda üç yollu el sıkısma (3-way handshake) diye bir
islem gerçeklesir. Basit olarak anlatacak olursak, bu islemde A makinası B
makinasına (1)SYN paketi gönderir. B makinası karsılık olarak (2)SYN/ACK gönderir.
Ondan sonra A makinası B'ye (3)ACK paketi gönderir ve bağlantı kurulmus olur. Siz
bilgisayarınızda baslat/çalıstır a "cmd" yazıp komut isteminde "netstat -an"
yazarsanız gördüğünüz "ESTABLISHED" bağlantılar bu islemin gerçeklestigini
göstermektedir. Daha fazla ayrıntıya girmek istemiyorum. Sonuç olarak herhangi bir
A makinası böyle bir islem olmadan paket süzen bir ates duvarının zaafından
yararlanabilir. Mesela saldıran biri durmadan SYN gönderebilir. IP yanıltma
(spoofing) yapabilir.
Durum Denetlemeli Ates Duvarı (Stateful Firewall)
Bunlar paket süzen ates duvarları gibilerdir ama daha akıllılardır. 90'larda
Checkpoint firması tarafından gelistirilmistir. Zamanla bir standart haline gelmistir.
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 ates duvarları gelen isteğin
gerçekten bağlantı kurulacak IP olup olmadığına, iletisim kuralına kaynak ve hedef
portlarına bakarlar. Ondan sonra üç yollu el sıkısma (3-way handshake) gerçeklesir
ve bağlantı kurulur. Mesela saldırgan yanıltma (spoofing) yapıyorsa (yani kendi ip
adresini, iletisim kuralını veya portunu olması gerektiğinden farklı gösteriyorsa)
bunu anlarlar ve karsı tarafa SYN/ACK göndermezler ve paket karsı tarafa herhangi
bir bilgi göndermeden düsürülür (Drop). Bu olmasa ne olurki diyeceksiniz. Mesela
eğer böyle bir sey 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 erisemez.
Yine de bu ates 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 bisey yapamazlar. Bazı firmalar
kendi IDS veya IPS sistemlerinin akıllı olduklarını ve bilinmeyen saldırılara karsı
önlem alabildiklerini iddia etseler de ne kadar basarılı olduğu konusunda süphe
duymak gerekir. IDS/IPS demisken ates duvarı ile ilgili bir teknoloji daha var. Buna
da Deep Packet Inspection(Derin Paket Đnceleme) diyoruz. Bu IDS/IPS ile tümlesik
çalısan bir teknolojidir. Simdilik bu konuya değinmeyeceğiz. Durum denetimi yapan
(Stateful) ates duvarına tanıdık bir örnek verecek olursak Windows'umuzun o basit
ates duvarı bu türdendir.
Sonuç olarak ev kullanıcılarına gelecek olursak. Evde bilgisayarımızda kullandığımız
yazılımsal ates duvarları genelde bunların hepsini bir arada bulundururlar veya
birkaç tanesini içlerinde bulundururlar. Zaten ürünün özelliklerine baktınızda
görürsünüz uygulama denetimi yaparım, durum denetimi (stateful) yaparım, IP
kuralları ekleyebilirsiniz vs. Bende her sey var bana bisey olmaz derler. Çok
beklenmedik bir terslik olmadıkça ve ayarlarınız düzgün olduğu sürece buna
katılabilirim.
ADSL yönlendiricilerimize gelince orada ufak bir ates duvarı bilmecesi mevcut.
Bazıları bende ates duvarı var derken ADSL yönlendiricilerimizdeki NAT özelliğini
içeriden bir bağlantı olmadığı sürece dısardan gelenleri engellediği için ates
duvarıymıs gibi öne çıkarıyorlar. Ates Duvarı ile NAT ayrı ayrı seylerdir. Buraya
dikkat etmek gerekiyor. Gerçekten ates duvarı olanlarda var tabi ki. Bunlarda
genelde paket süzme yapıyorlar. Uygulama katmanlı olanları da mevcut.
Bu noktada evde kullandıgımız ates duvarını da kullanmayı bilmiyorsak oda bir ise
yaramaz. Ona hangi kuralı ekleyeceğimizi, hangi uygulamaya izin verecegimizi
bilmedikten sonra olmaz. Bir virüs bulastı diyelim. Ates duvarı uyarı verdi. Đnternete
bağlanmak isteyen bir uyugulama var izin vereyim mi vermeyim mi? Sizde bunun ne
olduğuna dikkat etmeden izin verirseniz ne kadar ates duvarınız olsa da bir ise
yaramaz.
Bu arada bu isi kötü niyetle yapanlar evde kullandığımız yazılımsal ates duvarlarına
(kisisel ates duvarları-personal firewalls) yakalanmamak içinde sızma (leaking) gibi
yöntemler kullanmaktadırlar. Bu sayede ates duvarını etkisiz hale getirip istediklerini
yapabilmektedirler. Ates duvarı üreticileri de buna karsı önlemlerini almaya devam
ediyorlar tabi ki.
Internet'in ülkemizde yaygınlastığı su günlerde internette geçirdiğimiz vakit de
artmakta. Artık bilgisayarlarımızı yalnızca bir oyun aracı değil özel islerimizi, alıs
verisimizi, banka aktarımlarını hatta isimizi yaptığımız para kazandığımız cihazlar
olarak kullanmaktayız. Sonuç olarak artık hayatımızın önemli bir parçası haline
geldiler. O yüzden kullandığımız bu cihazlara iyi bakmak, korumak, nasıl
haberlestiklerini öğrenmek gerekmektedir.
Hiç yorum yok:
Yorum Gönder