IPSec

IPsec Nasıl Çalışır?

Oldukça karışık görünen IPsec konusunu sade bir şekilde anlatacağım. Daha sonraki makalelerimde terimlere, detaylara ve uygulama örneklerine geçeceğim.

Kriptografi Mantığı

Kriptografi, şifre ve kodlarla veri güvenliğini sağlama bilimi olarak karşınıza çıkar. Şifreleme yöntemleri, gizliliğin sağlanması, aslıyla aynılık, kimlik denetimi ve asılsız olan verinin reddi gibi amaçlar taşır. Şifreleme bilimi, antik zamanlardan günümüze insanların mesajlarını gizli bir şekilde iletmelerine olanak tanır. Tarihin ilk şifreleme fikirleri, sembol ekleme veya harflerin yerini değiştirme olarak bilinir. Örneğin Sezar şifresi 3 harf atlama yöntemini kullanmıştır. Türkçe alfabe ile “nizam” kelimesini şifreleyelim. “n” harfi yerine 3 sonraki harf olan “p” harfini koyalım. Diğerlerini de aynı şekilde değiştirelim.

Şifreli Hali: plcçö >>> Çözülmüş Hali: nizam

Bu sistemi inceleyecek olursak, şifreleme yöntemini anlayamayan biri için “plcçö” kelimesi bir anlam ifade etmeyecektir. Konuşmanın çözülebilmesi için ancak 3 harf kuralının kullanıldığının tespit edilmesi gerekir. Aslında çocukluk dönemindeki kuşdili oyunu da bir şifreleme yöntemidir. Bu oyunda ilk önce 2 kişi arasında bir anlaşma yapılır ve yöntem belirlenirdi. Anlaşma konuşmanın nasıl şifreleneceğini belirlerdi. Örneğin anlaşmada “f” harfine karar verildiyse orijinal kelimede her sesli harf sonuna “f” harfiyle başlayan ve bir önceki sesli harf ile birleşen bir hece eklenirdi. Bilgiyi alan karşı taraf şifreleme yöntemini bildiği için sonradan eklenen heceleri çıkarır ve veriyi çözerdi.

Şifreli Hali: nefetwoforkkafampüs >>> Çözülmüş Hali: networkkampüs

Biraz komik olacak ama işin mantığını anlamak için kuşdili şifreleme yöntemini ciddiye alıp dezavantajlarını konuşalım.

  • Şifrelenen veriler, harf sayısı açısından aslının yaklaşık iki katına çıktığı için depolama alanı daha çok kullanılıyor.
  • Şifreli verileri söylemesi ve anlaması zor olduğu için daha çok kaynak kullanımı yapılıyor.
  • Yöntem sadece veri gizliliğini amaçlıyor. Veri bütünlüğü ve kimlik doğrulaması sağlamıyor.
  • Biraz düşünüldüğünde de çözmesi kolay bir şifreleme yöntemi olarak karşımıza çıkıyor. Çocuklar için gayet ideal 😀

2. dünya savaşının kaderini etkileyen Enigma makinesi de harf değiştirme yöntemini kullanmaktaydı. O dönem çözmesi çok zor olan Enigma yönteminde, örneğin “merhaba” kelimesinde geçen “m” harfi “d” harfiyle değiştirilir fakat metnin ilerleyen bölümlerinde geçen diğer “m” harfi bu defa  “p” harfiyle değiştirilirdi. Aynı şekilde diğer “m” harfleri de yine farklı farklı harflerle değiştirilirdi.

enigma nasıl

Sürekli dönen rotorlarla otomatik olarak değiştirilen harfler de sürekli değiştirilirdi. 17576 olasılık olduğu için orijinal harfin hangisi olduğu çözülemezdi. Kriptografi bilimi, günümüzde sanal para ve Blockchain olarak en gelişmiş halinde kullanılmaya devam eder. Makalemde bu konunun detayına girmeyeceğim ve artık IPsec konusuna geçeceğim. Günüzmüde network alt yapısı hemen her haberleşmenin temelini oluşturur. IPsec yöntemi de OSI ağ modelinin 3. katmanında IP adresleri ile haberleşen paketlere uygulanır. Tıpki eski yöntemlerde olduğu gibi verilerin şifrelenme mantığıyla ilgili çeşitli algoritmalar geliştirilmiştir. Bilim dünyasında mevcut algortimaların güçlendirilmesi veya yeni algoritmaların üretilmesi gibi çalışmalar sürekli olarak devam etmektedir. IPsec de bu algoritmalardan tercih edilenlere göre çalışır ve veri güvenliği sağlar.

IPsec Nasıl Çalışır?

Aralarındaki veri trafiği korunacak olan 2 nokta birbirleriyle SA (Security Association) güvenlik anlaşması imzalar. Ardından anlaşma içerisindeki bu kurallar SAD (Security Association Database) güvenlik anlaşması veri tabanına kaydedilir. Yani 2 ağ cihazı, SA anlaşması sonucunda aralarında konuşacakları şeyleri nasıl gizleyeceklerini belirler. Böylece başkaları kulak misafiri olsa bile bu konuşmalardan hiçbir şey anlayamazlar. Örneğin man in the middle saldırısında yaptığı işlemlerle orijinal bağlantıyı mirror eden (kopyalayan) veya tamamını olduğu gibi kendi üzerinden geçiren bir hacker’ın IPsec’le korunan verileri çözmesi çok düşük bir olasılıktır.

IPSec hacker

IPsec koruması öncesinde, 2 nokta arasında yapılan tüm bu anlaşmalar toplamda 2 fazda gerçekleşir.

ipsec fazlar

IPsec Faz-1: Bu fazda, 2 nokta arasında kuralların belirlendiği bir anlaşma yapılır. Faz-2’de gerçekleşen iletişim bu fazda belirlenen kurallara göre şifrelenir.

Amaç: Faz-2 görüşmelerinin güvenliğini sağlamak. Main Mod ve Aggressive Mod olmak üzere 2 çeşit Faz-1 vardır. Bunlardan sadece biri seçilebilir.

  • Main Mod: 6 pakette sonuçlanır. İşlemlerin sonunda IKE SA kurulmuş olur. 2 nokta anlaşır. Daha güvenlidir.
  • Aggressive Mod: 3 pakette sonuçlanır. Böylece IKE SA kurulur ve 2 nokta anlaşır.

IPsec Faz-2: 2 nokta arasında transfer edilen verilerin nasıl şifreleneceği belirlenir. Faz-2 oturumu faz-1’de tasarlanan güvenli kanalda yapılır.

Amaç: Verilerin güvenliğini sağlamak.

Veri Akışının Başlaması: Faz-2’de yapılan anlaşmaya göre bazı algoritmalar çalıştırılır ve orijinal verilere AH (Authentication Header) veya ESP (Encapsulating Security Payload) gibi özel başlıklar eklenir.

 

ipsec veri koruma

IPsec ile korunan veriler adeta zarf içerisinde zarfla taşınmaktadır ve zarfların açılma yöntemlerinin tek tek çözülmesi gerekir.

IPsec Nasıl Çözülür?

Araya giren kötü niyetli kişilerin verileri anlayabilmesi için ilk önce elde ettiği verilerin hangi algoritmalara göre şifrelendiğini çözmesi gerekir. Bu algoritmaları tespit etmek için faz-2 konuşmasını dinlemiş olması gerekir. Hacker’ın Faz-2’yi de dinlemiş olduğunu varsayarsak, Faz-2 konuşmasından elde ettiği veriler de şifreli olduğu için Faz-1’deki konuşmalara bakması gerekir. Tabi tüm bu aşamalarda dinamik olarak sürekli değişen anahtarlar veya sertifikalar da olduğundan hacker’ın işi daha da karışacaktır.

Kuş Dili Örneklemesi:

Komik olacak ama madem öyle başladık yine kuş dili ile bir örnekleme yapalım 🙂 .

ipsec sifreleme ve dogrulama ornek

1- Faz-1 Anlaşması= Faz-2’de koşulanları “f” kuş dili ile şifreleyelim. Ardından da karakter sayısını hesaplayıp sonuna ekleyelim.

2- Faz-2 Anlaşması= Burada tüm veriler Faz-1’de anlaşılan kurallara göre şifrelenip, doğrulanıyor.

  • Alıcı gelen rakamla gelen verideki karakterleri sayıp karşılaştıracak. Yolda karakter kaybı veya eklemesi olmuş mu olmamış mı anlayacak ve  doğrulamayı yapmış olacak. Doğrulama yapılmışsa veriyi okuyacak.
  • “f” kuş dilini nasıl çözeceğini bilen alıcı veriyi çözecek ve anlaşılır hale getirecek. Okunan veri sonucunda anlaşma metni ortaya çıkacak.
  • Veri akışındaki tüm verileri “k” kuş diliyle şifreleyelim. Ardından da kelime sayısını hesaplayıp 2 ile çarpıp sonuna ekleyelim.

3- Veri Akışı= Burada tüm veriler Faz-2’de anlaşılan kurallara göre şifrelenip, doğrulanıyor.

  • Gelen verideki kelimeleri sayan ve 2 ile çarpan alıcı gelen rakamla bunu karşılaştıracak. Yolda kelime eksilmesi veya eklemesi olmuş mu olmamış mı anlayacak ve  doğrulamayı yapmış olacak.
  • “k” kuş dilini nasıl çözeceğini bilen alıcı veriyi çözecek ve anlaşılır hale getirecek.

Hacker Tarafından Yakalanan Verinin Çözülmesi İşlemi=

Yukarıdaki örneğe göre konuşacak olursak 🙂 ;

Veri akışında örneğin “Nakalsın?” verisini yakalayan birisi bunun hangi kuş diliyle şifrelendiğini anlaması için Faz-2’ye bakacak. Farzedelim ki bu kişi Faz-2’de de “Şififrefelefemefe= “k”fa kufuş difili” verisini yakalayabildi. Bunu da anlamadığı için hangi kuş diliyle şifrelendiğini anlamak için Faz-1 konuşmasına gidecek. Eğer Faz-1 konuşmasında da “Şifreleme= “f” kuş dili” verisini yakalamışsa şimdi tersine işleme başlayacak. Faz-2’de de “Şififrefelefemefe= “k”fa kufuş difilifi” verisini çözecek. Tüm kırmızı renkli sonradan eklenen heceleri atacak ve veriyi çözecek. Ardından veri akışındaki “Nakalsın?” verisini çözebilecek. Tüm bu zaman alan işlemde de yeni veriler IKE (Internet Key Exchange – İnternet Anahtar Değişimi) tarafından otomatik olarak yapılan farklı bir anahtar ile şifreleme yöntemine geçeceği için zamanla yarışamayan hacker başarısız olacak.

Ayrıca örnekte Faz-2 konuşmaları “karakter sayısı” ile, veri akışı da “kelime sayısının 2 katı” ile doğrulanıyor. Böylece iletişim esnasında yani yolda manipüle edilen bir veri var olduğunda alıcı verinin asıl gönderici tarafından gönderilmediğini veya değiştirildiği anlayacak, veriyi ihmal edecek ve çöpe atacak.

Yorum= Kuş dili örneğe bakılacak olursa “f” ve “k” kuş dili kullanılmış. Bunu hazırlarken şifrelemede kullanılan heceleri farklı renk yapmak bile beni çok uğraştırdı. Yani kaynak kullanımım çoktu :). Zamanımı ve emeğimi çaldı. Dolayısıyla IPsec şifreleme protokolleri tercih edilirken donanımsal kaynaklar dikkate alınmalı. Gerekirse test edilmeli. Ne kadar değerli veri varsa o kadar kaynak kullanımı yapılmalı. Ayrıca kuş dili örneklemesinde “karakter sayısı” ve “kelime sayısı çarpı 2” gibi doğrulama yöntemleri kullanılmış. Yani gayet basit ve anlaşılır yöntemler. Bir de bunun üssel hesaplamalarla daha karmaşık hale getirin. Sayıları farklı formüllere sokun. Arda arda işlemlerden geçirin. Bu durumda tersine işlemler çok daha zor, zaman alan ve imkansıza yakın bir hale dönüşecek. Bundan dolayı şifreleme biliminde sürekli olarak daha gelişmiş algoritmalar geliştiriliyor. Ardından Cisco gibi üretici firmalar standart haline gelen bu yöntemleri işletim sistemlerine ekliyorlar. Böylece gelişme hiç durmuyor.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir