Perşembe, Mart 01, 2007

70-296 Notları (11.Bölüm)

Ağ ortamında birbirleriyle iletişim kuran sunucu sistemleri ve uygulamaların aralarındaki veri değiş tokuşu güvenli metotlarla yapılmıyorsa yabancı kişiler tarafından dinlenebilir ve gizli bilgiler fark edilmeden ele geçirilebilir. Aşağıdaki örnekte FTP uygulamasına şifresini giren kullanıcının şifresinin Network Monitor yazılımı ile yakalanması buna gösterilebilecek en basit örneklerdendir:

IPsec

IPsec protokolü veriyi gönderilmeden önce sayısal olarak imzalamak ve şifrelemek esasına dayanır. IPsec protokolü IP datagramlarını şifreler ve iletişimin herhangi bir noktasında paketlerin incelenerek çözülmesi olasılığını ortadan kaldırır. IPsec OSI modeline göre Network katmanında çalışır ve uçtan uca şifreleme –paketin çıkış noktasında şifrelenmesi ve varış noktasına kadar şifresinin çözülmemesi prensibi- yapar. Ağ ortamında trafiği yönlendiren routerlar için şifrelenmiş içerik payload olarak algılandığından routerlar bu paketlerin şifresini çözmeye gerek duymadan olduğu gibi iletirler.

SSL gibi diğer şifreleme protokolleri OSI modeline göre Application katmanında çalıştıklarından uygulamaların seçtikleri trafik türlerini şifrelerler (web trafiği gibi).

IPsec protokolünün sağladığı birden fazla güvenlik özelliği vardır :

Anahtar Üretimi (Key Generation) : Ağ üzerinden şifrelenmiş paketler gönderip alan iki bilgisayarın gelen paketleri çözmeleri için ortak paylaşılan bir anahtara ihtiyaçları vardır. Ancak bu anahtarın ağ üzerinden gönderilmesi ele geçirilmesi ihtimalini ortaya koymaktadır. Bu nedenle, ağ üzerinden IPsec ile haberleşecek bilgisayarlar Diffie-Helmann algoritması denilen, her bilgisayarda uygulanıp aynı sonucu elde eden hesaplama teknikleri sayesinde anahtarlarını paylaşmadan aralarında veri değiş tokuşu yapabilirler.

Şifrelenmiş Dip toplam (Cryptographic checksum) : Ağ üzerinden gönderilen trafiği şifrelemeye ek olarak, IPsec her pakette HMAC (Hash message authentication code) denen dip toplam hesaplamaya yarayan anahtarı da gönderir. Böylece paket yolda birileri tarafından değiştirilse bile alıcı paketi değiştirilmiş olduğunu anlayabilir. IPsec Message Digest 5 (MD5) ve Secure hash algoritm (SHA-1) fonksiyonlarını kullanabilir. SHA-1 160 bittir ve MD5 (128 bit) e göre daha güvenlidir.

Mutual Authentication : Windows 2003 IPsec, Kerberos, sayısal sertifikalar veya önceden paylaşılan anahtar uygulamaları ile aralarında IPsec kullanacak bilgisayarların birbirlerini tanımlamalarına imkan sağlar. Dolayısıyla her iki tarafın da sayısal imzasının karmaşıklıklığı ve diptoplamı yanlış veya hatalı bilgisayarın tanınmasını engeller.

Paket tekrarlamanın engellenmesi (Replay prevention) : IPsec her pakete bir numara atadığından paketlerin tekrarlanması veya dışarıdan üretilerek araya karıştırılarak gönderilmesi mümkün değildir.

IPsec Protokolleri

IPsec standartını aşağıdaki iki farklı protokol sağlar. IP Authentication Header -AH- ve IP Encapsulating Security Payload –ESP- :

IP Kimlik Doğrulama Başlığı (IP Authentication Header -AH-)

IP authentication header protokolü IP paketleri içindeki veriyi şifrelemez, ancak kimlik doğrulama, paket tekrarının engellenmesi ve bütünlük fonksiyonlarını sağlar. AH kendi başına veya ESP ile kullanılabilir. AH, kendi başına yetkisiz kullanıcıların paket içeriğini okumalarını engelleyemez ancak AH kullanmak paketlerin yolda değiştirilmemesini ve paketin gerçekten de kaynak IP’ye sahip sistemden çıktığını garantiler.

İletişimde AH kullanan bir sistem IP paketinin içine AH başlığını yerleştirir.

AH başlığının içinde aşağıdaki bilgiler yer alır.

Next header : IANA (Internet Assigned Numbers Authority) tarafından belirlenen spesifik protokol kodunu içerir. IPsec AH protokolünü tek başına kullanıyorsa bu alan, datagram payloadu oluşturan protokol tarafından üretilen kodla doldurulur. Genelde TCP, UDP veya ICMP dir.

Standart IP paket başlığında aslında bir Protokol kodu alanı vardır. Normalde bu alana TCP için 6, UDP için 17 ve ICMP için 1 yazılır. Ancak AH kullanan bir pakette bu alanın kodu 51dir. Çünkü AH başlığı hemen IP başlığının ardına yazılır. AH başlığının içinde bulunan Next Header alanında TCP, UDP veya ICMP’ye ait kod bulunur.

Payload Length : AH başlığının uzunluğunu belirler.

Reserved : Kullanılmamaktadır.

Security Parameters Index : Paketin hedef IP adresi ve güvenlik protokolünün (AH) kombinasyonundan oluşan bir değer içerir (SA - Security Association). Paketin gönderileceği bilgisayara iletişimin güvenliği için kullanılacak tüm ayarları içeren bilgileri gönderir.

Sequence Number : Aynı SA’ya sahip her paket gönderildikçe 1er sayı artan sıra numarasıdır. Bu sayede paketlerin yeniden tekrarlanmasını engeller (anti replay)

Authentication Data : Gönderici bilgisayarın hesapladığı bir ICV (Integrity check value) değeridir ve paketin değiştirilmeden alıcıya iletildiğini doğrular. Alıcı bilgisayar da kendi hesaplaması sonucunda aynı ICV değerini buluyorsa paket değişmemiştir.

IPsec Transport mode veya Tunnel Mode denilen iki farklı modda çalışabilir.

Transport modda çalışırken IPsec protokolü, iletişim kuran her iki bilgisayarın da IPsec paketlerini algılayabilmesini ve şifreleme / deşifreleme işlemlerini yapabilmesini bekler. Ancak routerlar ve diğer ara cihazların IPsec algılama yeteneğine sahip olması gerekli değildir.

Tunnel Mode ise genelde VPN gibi Internet tabanlı iletişim yöntemlerinde sıkça kullanılan bir yoldur. Tunnel Modunda alıcı ve gönderici bilgisayarlar yerine her iki uçtaki routerlar IPsec kullanırlar. Tunnel modunda routerlar paketleri Transport moddakinin yerine tamamını başka bir IPsec paketi ile enkapsüle ederek gönderirler.

Windows 2003 IPsec uygulaması aşağıdaki bileşenlerden oluşur :

IPsec Policy Agent : Her Windows 2003 bilgisayarında bulunan, AD veya kayıt defterinden (registry) IP ayarlarını okuyan servistir. IPSEC Services

Internet Key Exchange (IKE) : IKE, IPsec bilgisayarlarının Diffie-Hellman anahtarları üretmek ve Security Association (SA) oluşturmak için kullandıkları protokoldür. IKE iletişimi iki fazda gerçekleşir. Birinci fazda hangi kimlik doğrulama, hashing ve şifreleme algoritmalarının kullanılacağına dair pazarlık yapılır. İkinci faz her bilgisayarda ayrı ayrı uygulanır. Bu fazda da hangi IPsec protokolünün, şifreleme metodunun kullanılacağına dair pazarlıklar yapılır.

IPsec sürücüsü (driver) : İletilecek verinin şifrelenmesi, dip toplamların (checksum) oluşturulması ve güvenli iletişimin başlatılmasını sağlar. Sürücü sistemdeki IPsec kurallarından (policy) bir filtre listesi oluşturur ve giden her paketi bu filtre ile kontrol eder. Bir paket eğer filtrenin kriterlerine uyuyorsa, sürücü hedef sistemle IKE iletişimini başlatır, giden pakete AH ve ESP başlıklarını ekler ve gerekiyorsa içeriği şifreler. Gelen paketler içinse diptoplam ve hash değerlerini hesaplar ve bunları doğrulama için gelen paketlerle karşılaştırır.

IPsec kullanımının planlanması

IPsec protokolünün ağınızda kullanılması göreceli olarak Windows 2003 işletim sistemleri için basit bir işlemdir. Ancak gerçekte iyi hesaplanması gereken bir davranıştır. Zira, AH ve ESP başlıkları mevcut ağ trafiğine belirgin bir yük getirecektir. Ayrıca giden gelen paketlerin şifrelenmesi ve deşifre edilmesi işlemleri de bu işleri yapacak bilgisayarlarda bir veri işleme gücü ve zamanı gerektirecektir. Yeterince güçlü olmayan bilgisayarlarda veri şifreleme / deşifre işlemlerinin gecikmelere yol açması muhtemeldir.

Buna karşılık IPsec bu konuda da esneklik getirmiş ve ağ yöneticilerine istedikleri sistemler veya protokol türleri için IPsec kullanabilme imkanını tanımıştır.

IPsec kurallarını yönetmek için IPsec MMC konsolu kullanılır. IPsec kuralları da tıpkı diğer Group Policy öğeleri gibi Site, domain veya OU’lara uygulanabilir.

Windows 2003 Server tarafından varsayılan değer olarak üretilen ve konsolda görülebilen 3 IPsec kuralı vardır :

Client (Respond only ) : Bilgisayarı sadece IPsec kullanımını talep eden bir paket geldiğinde IPsec kullanmaya yönlendirir. Bilgisayar kendisi asla IPsec iletişimi başlatmaz.

Server (Request security) : Bilgisayarı, başka bir sistemle iletişim kurarken IPsec kullanmaya zorlar. Eğer diğer sistem IPsec destekliyorsa güvenli iletişim başlar. Desteklemiyorsa standart IP iletişimi kurulur.

Secure Server (Require Security) : Bilgisayarı iletişim kurarken sadece IPsec kullanacak şekilde ayarlar. IPsec kullanmadan iletişim kurmaya kalkan sistemlerle bağlantı otomatik olarak kesilir.

Genel kural olarak mevcut IPsec kurallarını değiştirmeye çalışmak yerine isteğe göre yenilerini oluşturmak, bir hata anında geri dönüşü kolaylaştıracaktır.

Hiç yorum yok: