Ağ Güvenliği - Uygulama Katmanı

Artık çeşitli iş hizmetleri, istemci-sunucu uygulamaları aracılığıyla çevrimiçi olarak sunulmaktadır. En popüler formlar web uygulaması ve e-postadır. Her iki uygulamada da müşteri, belirlenen sunucu ile iletişim kurar ve hizmetleri alır.

Herhangi bir sunucu uygulamasından bir hizmeti kullanırken, istemci ve sunucu, temeldeki intranet veya İnternet üzerinde birçok bilgi alışverişinde bulunur. Bu bilgi işlemlerinin çeşitli saldırılara açık olduğunun farkındayız.

Ağ güvenliği, verilerin bir ağ üzerinde geçiş halindeyken saldırılara karşı güvenliğinin sağlanmasını gerektirir. Bu amaca ulaşmak için birçok gerçek zamanlı güvenlik protokolü tasarlanmıştır. Bu tür bir protokol en azından aşağıdaki birincil hedefleri sağlamalıdır -

  • Taraflar, birbirlerinin kimliğini doğrulamak için etkileşimli olarak müzakere edebilirler.
  • Ağ üzerinde bilgi alışverişi yapmadan önce gizli bir oturum anahtarı oluşturun.
  • Bilgileri şifrelenmiş biçimde değiştirin.

İlginç bir şekilde, bu protokoller farklı ağ modeli katmanlarında çalışır. Örneğin, S / MIME protokolü Uygulama katmanında çalışır, SSL protokolü taşıma katmanında çalışmak üzere geliştirilmiştir ve IPsec protokolü Ağ katmanında çalışır.

Bu bölümde, e-posta iletişimi ve ilgili güvenlik protokolleri için güvenliği sağlamak için farklı süreçleri tartışacağız. DNS güvenliğini sağlama yöntemi daha sonra ele alınacaktır. Sonraki bölümlerde, web güvenliğini sağlamaya yönelik protokoller açıklanacaktır.

E-posta Güvenliği

Günümüzde e-posta çok yaygın olarak kullanılan bir ağ uygulaması haline gelmiştir. E-posta güvenlik protokollerini tanımaya geçmeden önce e-posta altyapısını kısaca tartışalım.

E-posta Altyapısı

Bir e-posta göndermenin en basit yolu, doğrudan gönderenin makinesinden alıcının makinesine bir mesaj göndermektir. Bu durumda, her iki makinenin de aynı anda ağ üzerinde çalışması esastır. Ancak, kullanıcılar makinelerini ara sıra ağa bağlayabildiğinden bu kurulum pratik değildir.

Böylece, e-posta sunucularını kurma konsepti geldi. Bu kurulumda posta, ağda kalıcı olarak kullanılabilen bir posta sunucusuna gönderilir. Alıcının makinesi ağa bağlandığında, postayı posta sunucusundan okur.

Genel olarak, e-posta altyapısı, bir posta sunucuları ağından oluşur. Message Transfer Agents (MTA'lar) ve Kullanıcı Aracısı (UA) ve yerel MTA'dan oluşan bir e-posta programını çalıştıran istemci makineler.

Tipik olarak, bir e-posta mesajı UA'sından iletilir, MTA'ların ağından geçer ve sonunda alıcının makinesindeki UA'ya ulaşır.

E-posta için kullanılan protokoller aşağıdaki gibidir -

  • E-posta mesajlarını iletmek için kullanılan Basit Posta Aktarım Protokolü (SMTP).

  • Postane Protokolü (POP) ve İnternet Mesaj Erişim Protokolü (IMAP), mesajları alıcıya göre sunucudan almak için kullanılır.

MIME

Temel İnternet e-posta standardı 1982 yılında yazılmıştır ve İnternette alınıp verilen e-posta mesajının formatını açıklamaktadır. Temel olarak temel Roma alfabesiyle metin olarak yazılmış e-posta mesajlarını destekler.

1992'ye gelindiğinde, aynı şeyi geliştirme ihtiyacı hissedildi. Bu nedenle, ek bir standart Çok Amaçlı İnternet Posta Uzantıları (MIME) tanımlandı. Temel İnternet E-posta standardının bir dizi uzantıdır. MIME, Kiril alfabesi (Rusça'da kullanılır), Yunan alfabesi ve hatta Çince'nin ideografik karakterleri gibi temel Roma alfabesi dışındaki karakterleri kullanarak e-posta gönderme yeteneği sağlar.

MIME tarafından yerine getirilen diğer bir ihtiyaç, resimler veya video klipler gibi metin olmayan içerikleri göndermektir. Bu özelliklerden dolayı, MIME standardı e-posta iletişimi için SMTP ile geniş çapta benimsenmiştir.

E-Posta Güvenlik Hizmetleri

Önemli ve önemli işlemler için e-posta iletişiminin artan kullanımı, aşağıdaki gibi belirli temel güvenlik hizmetlerinin sağlanmasını gerektirir:

  • Confidentiality - E-posta mesajı hedeflenen alıcı dışında hiç kimse tarafından okunmamalıdır.

  • Authentication - E-posta alıcısı, gönderenin kimliğinden emin olabilir.

  • Integrity - Alıcıya, e-posta mesajının gönderen tarafından iletildikten sonra değiştirilmediğine dair güvence.

  • Non-repudiation - E-posta alıcısı, gönderenin iletiyi gerçekten gönderdiğini üçüncü bir tarafa kanıtlayabilir.

  • Proof of submission - E-postayı gönderen, iletinin posta dağıtım sistemine teslim edildiğine dair onay alır.

  • Proof of delivery - Gönderen, alıcının mesajı aldığına dair bir onay alır.

Gizlilik, kimlik doğrulama, mesaj bütünlüğü ve inkar etmeme gibi güvenlik hizmetleri genellikle açık anahtarlı kriptografi kullanılarak sağlanır.

Tipik olarak, e-posta iletişiminin üç farklı senaryosu vardır. Bu senaryolarda yukarıdaki güvenlik hizmetlerini elde etme yöntemlerini tartışacağız.

Bire Bir E-posta

Bu senaryoda, gönderen yalnızca bir alıcıya e-posta iletisi gönderir. Genellikle, iletişimde ikiden fazla MTA yer almaz.

Bir gönderenin bir alıcıya gizli bir e-posta göndermek istediğini varsayalım. Bu durumda mahremiyet sağlanması aşağıdaki şekilde sağlanır -

  • Gönderen ve alıcının özel-genel anahtarları sırasıyla (S PVT , S PUB ) ve (R PVT , R PUB ) şeklindedir.

  • Gönderen, şifreleme için gizli bir simetrik anahtar (K S) oluşturur. Gönderen, şifreleme için R PUB kullanmış olsa da , daha hızlı şifreleme ve şifre çözme sağlamak için simetrik bir anahtar kullanılır.

  • Gönderen, mesajı K S anahtarıyla şifreler ve ayrıca K S'yi alıcının açık anahtarı olan R PUB ile şifreler .

  • Gönderen , alıcıya şifreli mesaj ve şifreli K S gönderir .

  • Alıcı önce K S'yi kendi özel anahtarı R PVT'yi kullanarak kodlanmış K S'nin şifresini çözerek elde eder .

  • Alıcı daha sonra K S simetrik anahtarını kullanarak mesajın şifresini çözer .

Bu senaryoda mesaj bütünlüğü, kimlik doğrulama ve inkar etmeme hizmetleri de gerekliyse, yukarıdaki sürece aşağıdaki adımlar eklenir.

  • Gönderen, mesajın karmasını üretir ve bu karmayı özel anahtarı S PVT ile dijital olarak imzalar .

  • Gönderen, bu imzalı hash'i diğer bileşenlerle birlikte alıcıya gönderir.

  • Alıcı, genel anahtar S PUB kullanır ve gönderenin imzası altında alınan karmayı çıkarır.

  • Alıcı daha sonra şifresi çözülen mesajı karma hale getirir ve şimdi iki karma değeri karşılaştırır. Eşleşirlerse, mesaj bütünlüğünün sağlandığı kabul edilir.

  • Ayrıca alıcı, mesajın gönderen tarafından gönderildiğinden emin olur (kimlik doğrulama). Ve son olarak, gönderen mesajı göndermediğini (inkar etmeme) inkar edemez.

Bire Birden Çok Alıcının E-postası

Bu senaryoda, gönderen iki veya daha fazla alıcıya bir e-posta iletisi gönderir. Liste, gönderenin e-posta programı (UA + yerel MTA) tarafından yönetilir. Tüm alıcılar aynı mesajı alır.

Gönderenin birçok alıcıya (örneğin R1, R2 ve R3) gizli e-posta göndermek istediğini varsayalım. Bu durumda mahremiyet sağlanması aşağıdaki şekilde sağlanır -

  • Gönderen ve tüm alıcıların kendi özel-genel anahtar çiftleri vardır.

  • Gönderen gizli bir simetrik anahtar, K üretir lar ve bu anahtarla mesajı şifreler.

  • Gönderen daha sonra K S'yi R1, R2 ve R3'ün genel anahtarlarıyla birden çok kez şifreler ve R1 PUB (K S ), R2 PUB (K S ) ve R3 PUB (K S ) alır.

  • Gönderen , alıcıya şifrelenmiş mesajı ve karşılık gelen şifrelenmiş K S'yi gönderir . Örneğin, alıcı 1 (R1) şifreli mesaj alır ve R1 PUB (K S ).

  • Her alıcı önce kendi özel anahtarını kullanarak kodlanmış K S'nin şifresini çözerek K S anahtarını çıkarır .

  • Her alıcı daha sonra, K S simetrik anahtarı kullanarak mesajın şifresini çözer .

Mesaj bütünlüğünü, kimlik doğrulamasını ve reddedilmemeyi sağlamak için izlenecek adımlar, bire bir e-posta senaryosunda yukarıda belirtilen adımlara benzer.

Bir Dağıtım Listesi E-postası

Bu senaryoda, gönderen iki veya daha fazla alıcıya bir e-posta iletisi gönderir, ancak alıcıların listesi gönderen tarafından yerel olarak yönetilmez. Genellikle, e-posta sunucusu (MTA) posta listesini tutar.

Gönderen, posta listesini yöneten MTA'ya bir posta gönderir ve ardından posta, listedeki tüm alıcılara MTA tarafından patlatılır.

Bu durumda, gönderen posta listesinin alıcılarına gizli bir e-posta göndermek istediğinde (örneğin R1, R2 ve R3); gizlilik aşağıdaki şekilde sağlanır -

  • Gönderen ve tüm alıcıların kendi özel-genel anahtar çiftleri vardır. Patlatıcı Sunucusunun her bir posta listesi (Liste PUB , Liste PVT ) için bir çift özel-genel anahtarı vardır .

  • Gönderen gizli bir simetrik anahtar K üretir lar ve daha sonra bu anahtar ile mesajı şifreler.

  • Gönderen daha sonra K S'yi listeyle ilişkili genel anahtarla şifreler , Liste PUB (K S ) elde eder .

  • Gönderen, şifreli mesaj ve Liste PUB (K S ) gönderir . Patlayıcı MTA listesi çözer PUB (K S listesi kullanılarak) PVT K elde S .

  • Patlatıcı, K S'yi listede üye sayısı kadar genel anahtarla şifreler .

  • Patlatıcı, alınan şifrelenmiş mesajı ve karşılık gelen şifrelenmiş K S'yi listedeki tüm alıcılara iletir . Örneğin Patlayıcı, şifrelenmiş mesajı ve R1 PUB (K S ) alıcı 1'e vb. İletir.

Mesaj bütünlüğünü, kimlik doğrulamasını ve reddedilmemeyi sağlamak için izlenecek adımlar, bire bir e-posta senaryosu durumunda verilenlerle benzerdir.

İlginç bir şekilde, e-postanın güvenliğini sağlamak için yukarıdaki güvenlik yöntemini kullanan e-posta programının, yukarıda tartışılan tüm olası senaryolar için çalışması beklenmektedir. E-posta için yukarıdaki güvenlik mekanizmalarının çoğu, Pretty Good Privacy (PGP) ve S / MIME adlı iki popüler şema tarafından sağlanmaktadır. İkisini de ilerleyen bölümlerde tartışıyoruz.

PGP

Pretty Good Privacy(PGP) bir e-posta şifreleme şemasıdır. E-posta iletişimi için güvenlik hizmetleri sağlamak için fiili standart haline geldi.

Yukarıda tartışıldığı gibi, genel anahtar şifreleme, simetrik anahtar şifreleme, karma işlevi ve dijital imza kullanır. Şunları sağlar -

  • Privacy
  • Gönderen Kimlik Doğrulaması
  • Mesaj Bütünlüğü
  • Non-repudiation

Bu güvenlik hizmetlerinin yanı sıra veri sıkıştırma ve anahtar yönetimi desteği de sağlar. PGP, yenilerini icat etmek yerine RSA, IDEA, MD5 vb. Gibi mevcut şifreleme algoritmalarını kullanır.

PGP'nin Çalışması

  • Mesajın özeti hesaplanır. (MD5 algoritması)

  • Ortaya çıkan 128 bit karma, gönderenin özel anahtarı (RSA Algoritması) kullanılarak imzalanır.

  • Dijital imza, mesajla birleştirilir ve sonuç sıkıştırılır.

  • 128 bitlik bir simetrik anahtar olan K S oluşturulur ve sıkıştırılmış mesajı IDEA ile şifrelemek için kullanılır.

  • K S , RSA algoritması kullanılarak alıcının genel anahtarı kullanılarak şifrelenir ve sonuç şifrelenmiş mesaja eklenir.

PGP mesajının biçimi aşağıdaki şemada gösterilmektedir. Kimlikler, KS'yi şifrelemek için hangi anahtarın kullanıldığını ve karma üzerindeki imzayı doğrulamak için hangi anahtarın kullanılacağını belirtir.

PGP şemasında, imzalanmış ve şifrelenmiş bir mesaj ve ardından MIME, iletimden önce kodlanır.

PGP Sertifikası

PGP anahtar sertifikası normalde bir güven zinciri aracılığıyla oluşturulur. Örneğin, A'nın açık anahtarı B tarafından kendi açık anahtarını kullanarak ve B'nin açık anahtarı C tarafından açık anahtarını kullanarak imzalanır. Bu süreç ilerledikçe bir güven ağı oluşturur.

Bir PGP ortamında, herhangi bir kullanıcı bir sertifika yetkilisi olarak hareket edebilir. Herhangi bir PGP kullanıcısı, başka bir PGP kullanıcısının genel anahtarını onaylayabilir. Bununla birlikte, böyle bir sertifika yalnızca, kullanıcı onaylayıcıyı güvenilir bir tanıtıcı olarak tanırsa, başka bir kullanıcı için geçerlidir.

Böyle bir sertifikasyon yöntemiyle ilgili birkaç sorun vardır. Bilinen ve güvenilir bir genel anahtardan istenen anahtara giden bir zincir bulmak zor olabilir. Ayrıca, istenen kullanıcı için farklı anahtarlara yol açabilecek birden fazla zincir olabilir.

PGP ayrıca sertifika yetkilisi ile PKI altyapısını kullanabilir ve genel anahtarlar CA (X.509 sertifikası) tarafından onaylanabilir.

S / MIME

S / MIME, Güvenli Çok Amaçlı İnternet Posta Uzantısı anlamına gelir. S / MIME, güvenli bir e-posta standardıdır. MIME adı verilen daha önceki bir güvenli olmayan e-posta standardına dayanmaktadır.

S / MIME'nin Çalışması

S / MIME yaklaşımı, PGP'ye benzer. Ayrıca açık anahtar şifreleme, simetrik anahtar şifreleme, karma işlevler ve dijital imzalar kullanır. E-posta iletişimi için PGP'ye benzer güvenlik hizmetleri sağlar.

S / MIME'de kullanılan en yaygın simetrik şifreler RC2 ve TripleDES'tir. Genel ortak anahtar yöntemi RSA'dır ve karma algoritma SHA-1 veya MD5'tir.

S / MIME, şifrelemeden sonra veri zarflama için "application / pkcs7-mime" gibi ek MIME türünü belirtir. MIME varlığının tamamı şifrelenir ve bir nesneye paketlenir. S / MIME, standart kriptografik mesaj formatlarına sahiptir (PGP'den farklı). Aslında, MIME, mesajdaki şifrelenmiş ve / veya imzalanmış kısımları tanımlamak için bazı anahtar kelimelerle genişletilmiştir.

S / MIME, genel anahtar dağıtımı için X.509 sertifikalarına güvenir. Sertifika desteği için yukarıdan aşağıya hiyerarşik PKI'ya ihtiyaç duyar.

S / MIME'nin istihdam edilebilirliği

Uygulama için sertifika yetkilisinden bir sertifika gerekliliği nedeniyle, bazı kullanıcılar bir mesajı genel / özel anahtar çiftiyle şifrelemek isteyebileceğinden tüm kullanıcılar S / MIME'den yararlanamaz. Örneğin, sertifikaların katılımı veya idari ek yükü olmadan.

Pratikte, çoğu e-posta uygulaması S / MIME uygulamasına rağmen, sertifika kayıt süreci karmaşıktır. Bunun yerine PGP desteği genellikle bir eklenti eklemeyi gerektirir ve bu eklenti anahtarları yönetmek için gereken her şeyle birlikte gelir. Güven Ağı gerçekten kullanılmıyor. İnsanlar açık anahtarlarını başka bir ortam üzerinden değiştirirler. Elde edildikten sonra, genellikle e-posta alışverişi yapılan kişilerin açık anahtarlarının bir kopyasını tutarlar.

PGP ve S / MIME şemaları için ağ mimarisindeki uygulama katmanı aşağıdaki görüntüde gösterilmektedir. Her iki şema da e-posta iletişimi için uygulama düzeyinde güvenlik sağlar.

Ortama bağlı olarak PGP veya S / MIME şemalarından biri kullanılır. Tutsak bir ağda güvenli bir e-e-posta iletişimi, PGP'ye uyarlanarak sağlanabilir. Postaların yeni bilinmeyen kullanıcılarla çok sık değiş tokuş edildiği İnternet üzerinden e-posta güvenliği için, S / MIME iyi bir seçenek olarak kabul edilir.

DNS Güvenliği

İlk bölümde, bir saldırganın hedef kullanıcıya saldırı gerçekleştirmek için DNS Önbellek Zehirlemesini kullanabileceğinden bahsetmiştik. Domain Name System Security Extensions (DNSSEC), bu tür saldırıları engelleyebilen bir İnternet standardıdır.

Standart DNS Güvenlik Açığı

Standart bir DNS şemasında, kullanıcı herhangi bir alan adına bağlanmak istediğinde, bilgisayarı DNS sunucusuyla iletişim kurar ve bu alan adı için ilişkili IP adresini arar. IP adresi alındığında, bilgisayar o IP adresine bağlanır.

Bu şemada, hiçbir doğrulama süreci yoktur. Bir bilgisayar, DNS sunucusundan bir web sitesiyle ilişkili adresi ister, DNS sunucusu bir IP adresiyle yanıt verir ve bilgisayarınız şüphesiz bunu meşru yanıt olarak kabul eder ve o web sitesine bağlanır.

Bir DNS araması aslında birkaç aşamada gerçekleşir. Örneğin, bir bilgisayar "www.tutorialspoint.com" istediğinde, birkaç aşamada bir DNS araması gerçekleştirilir -

  • Bilgisayar önce yerel DNS sunucusunu sorar (ISS sağlanır). ISS önbelleğinde bu adı taşıyorsa, başka bir şekilde sorguyu ".com" u bulabileceği "kök bölge dizinine" yönlendirir. ve kök bölge yanıtları.

  • Yanıta göre, bilgisayar daha sonra "tutorialspoint.com" u bulabileceği ".com" dizinini sorar.

  • Bilgisayar, alınan bilgilere dayanarak www'yi bulabileceği “tutorialspoint.com” u sorar. tutorialspoint.com.

DNSSEC Tanımlı

DNSSEC kullanılarak yapıldığında DNS araması, yanıtların yanıt veren kuruluş tarafından imzalanmasını içerir. DNSSEC, açık anahtar şifrelemesine dayanır.

DNSSEC standardında, her DNS bölgesinin bir genel / özel anahtar çifti vardır. Bir DNS sunucusu tarafından gönderilen tüm bilgiler, orijinalliği sağlamak için kaynak bölgenin özel anahtarı ile imzalanır. DNS istemcilerinin imzaları kontrol etmek için bölgenin genel anahtarlarını bilmeleri gerekir. İstemciler, tüm üst düzey etki alanlarının ortak anahtarları veya kök DNS ile önceden yapılandırılabilir.

DNSSEC ile arama süreci aşağıdaki gibidir -

  • Bilgisayarınız .com'u nerede bulabileceğini kök bölgesine sormaya gittiğinde, yanıt kök bölge sunucusu tarafından imzalanır.

  • Bilgisayar, kök bölgenin imzalama anahtarını kontrol eder ve bunun gerçek bilgilerle meşru kök bölge olduğunu doğrular.

  • Yanıtta, kök bölge .com bölge sunucusunun imzalama anahtarı ve konumu ile ilgili bilgileri sağlayarak bilgisayarın .com diziniyle iletişim kurmasını ve meşru olmasını sağlar.

  • Ardından .com dizini, tutorialspoint.com için imzalama anahtarını ve bilgilerini sağlayarak, google.com ile iletişime geçmesine ve üstündeki bölgeler tarafından onaylandığı gibi gerçek tutorialspoint.com'a bağlı olduğunuzu doğrulamasına olanak tanır.

  • Gönderilen bilgiler Kaynak Kayıt Seti (RRSet) biçimindedir. Üst düzey ".com" sunucusunda "tutorialspoint.com" etki alanı için RRSet örneği aşağıdaki tabloda gösterilmektedir.

Alan adı Yaşama zamanı Tür Değer
tutorialspoint.com 86400 NS dns.tutorialspoint.com
dns.tutorialspoint.com 86400 Bir 36..1.2.3
tutorialspoint.com 86400 ANAHTAR 3682793A7B73F731029CE2737D ...
tutorialspoint.com 86400 SIG 86947503A8B848F5272E53930C ...
  • ANAHTAR kaydı, “tutorialspoint.com” un genel anahtarıdır.

  • SIG kaydı, kimliklerini doğrulamak için üst düzey .com sunucusunun NS, A ve KEY kayıt alanlarının imzalı karmasıdır. Değeri Kcom pvt'dir (H (NS, A, KEY)).

Bu nedenle, DNSSEC tamamen kullanıma sunulduğunda, kullanıcının bilgisayarının DNS yanıtlarının meşru ve doğru olduğunu onaylayabildiği ve DNS önbellek zehirlenmesi yoluyla başlatılan DNS saldırılarını önleyebildiği düşünülmektedir.

Özet

E-postaların güvenliğini sağlama süreci, iletişimin uçtan uca güvenliğini sağlar. Gizlilik, gönderen kimlik doğrulaması, mesaj bütünlüğü ve inkar etmeme güvenlik hizmetleri sağlar.

E-posta güvenliği için iki şema geliştirilmiştir: PGP ve S / MIME. Her iki şema da gizli anahtar ve açık anahtar şifreleme kullanır.

Standart DNS araması, DNS sahtekarlığı / önbellek zehirlenmesi gibi saldırılara karşı savunmasızdır. DNS aramasının güvenliğini sağlamak, açık anahtar şifrelemesini kullanan DNSSEC kullanımı yoluyla mümkündür.

Bu bölümde, uçtan uca iletişim için ağ güvenliği sağlamak için uygulama katmanında kullanılan mekanizmaları tartıştık.