CHAP (Challenge Handshake Authentication Protocol) Nedir?

Hızlı Bakış

CHAP, sunucunun istemciye rastgele bir sorgu gönderip aldığı şifreli yanıtı kendi hesapladığı hash ile karşılaştırarak kimlik doğruladığı bir PPP protokolüdür. Bu yöntem, MD5 algoritmasıyla parolayı ve sorgu değerini birleştirip tek yönlü özet üretiyor. Parola hiçbir zaman açık metin olarak hatta çıkmıyor. Oturum boyunca belirli aralıklarla yeni bir sorgu gönderiliyor. Sunucu, gelen yanıtın beklenen hash ile eşleşip eşleşmediğini denetliyor. Bu sayede uzaktan erişim ve VPN bağlantılarında, ele geçirilmiş oturumlar üzerinden yapılan tekrar saldırıları etkisiz hale geliyor.

CHAP veya (Challenge Handshake Authentication Protocol – Zorlu El Sıkışma Kimlik Doğrulama Protokolü), bir PPP sunucusuna kimin bağlandığını kontrol eder. Sunucu istemciye üç adımda kim olduklarını sorar.

CHAP Protokolü Nedir?

Ağ Bağlantı Güvenliğini Sağlayan CHAP Protokolü Nedir?

CHAP, iki cihaz ilk kez bağlandığında başlar. Daha sonra birbirleriyle konuştuklarında işleri güvende tutmak için gizli bir yol kullanır.

Bu protokol, İnternet sağlayıcısının kurduğu bir kullanıcının veya sunucunun gerçek olup olmadığını kontrol eder. Bunu resmi olarak RFC 1994’te açıkladılar.

CHAP bir kimlik ve değişen bir değer kullanır. Bu nedenle saldırıları uzak tutmak PAP yönteminden daha iyidir.

Ayrıca, kim olduğunuzu kontrol etmenin yanı sıra uzaktaki cihazın da bildiği bir numarayı tespit eder. Bunu MD-5 algoritması adı verilen bir şeyi kullanarak yapar.

Kimliğinizi doğrulamanın bu yolu, kullanıcı adınızı ve şifrenizi her zaman gizli bir kodla gönderir. Bu yöntem PAP yönteminde yoktur. Bu nedenle PAP yöntemi CHAP’a göre daha az güvenlidir.

Kim olduğunuzu kontrol etme şekli uzaktaki sunucuya birçok kez sorar. Bu sistem, ağa katılmaya çalışan cihaza kimliğiniz için bir istek gönderir.

Bundan sonra uzak cihaz, her iki tarafın da bildiği şeyleri yapmak için düzenli bir yol kullanır. Biraz matematik yaptıktan sonra bir numara göndererek cevap veriyor.

Böylece sunucu bu cevabın beklenenle eşleşip eşleşmediğini kontrol eder. Eğer uyuyorlarsa bağlantıyı kurar. Ancak eşleşmezlerse bağlantıyı sonlandırır.

CHAP Protokol Geçmişi

CHAP protokolünün en temel tarihi 1980’li yıllara dayanmaktadır. O zamanlar ağlar daha az karmaşıktı. Bu nedenle veriler çoğu zaman güvenli bir şekilde iletilmiyordu. Bu yüzden güvenli veri aktarımını sağlamak için kimlik doğrulama protokollerine olan ihtiyaç artmıştır. Sonuçta, geliştiriciler bunu ilk olarak RFC 1334‘te (Request for Comments – Yorum İsteği) tanıttı.

Basit bir ifadeyle CHAP’in birincil hedefi, kim olduğunuzu doğrulamak için şifrelenmemiş yöntemler oluşturmaktır. Bu, parola kullandığınızda ek bir koruma katmanı ekler.

Ayrıca bunu ağlara hızlı erişim için de yaptılar. İlk sürüm kesinlikle istemci ve sunucunun birbirlerinin kimliğini kontrol etmesine izin veriyor.

Daha sonraki sürümler sistem güvenliği ve performansında iyileştirmeler getirdi. Bunlardan biri CHAP MD5’tir. Bu gelişme kimlik doğrulamayı daha güçlü hale getirir. Başka bir deyişle, MD5 şifrelemesi veri aktarımlarına daha fazla koruma katmanı ekler.

Bugün hâlâ bazı kurum ve şirketlerde CHAP protokolünü kullanıyorlar. Özellikle uzaktan giriş ve özel çevrimiçi alan (VPN) gibi kurulumlarda güçlü koruma sağlayan bir örnek olarak görüyorlar.

CHAP Kimlik Doğrulama Yöntemleri ve Türleri

1. MD5 (Message Digest Algorithm 5)

Kullanıcıların CHAP işleminde kullandığı en yaygın kimlik doğrulama yöntemidir. Bu, MD5 (Mesaj Özeti Algoritması 5) şifreleme algoritması anlamına gelir.

MD5 yönteminde sunucu ile istemci arasında şifreli bir kimlik doğrulama işlemi gerçekleşir. Böylece istemci, sunucu tarafından gönderilen rastgele bir meydan okuma değerini alır. Daha sonra bu değeri kendi şifresi ile birleştirir ve bu algoritma ile bir hash üretir.

Daha sonra oluşturulan özeti sunucuya geri gönderir. Ardından, aynı işlemi gerçekleştirir ve hesaplanan değerler eşleşirse işlem başarılı olur.

2. MS-CHAP (Microsoft Challenge Handshake Authentication Protocol)

MS-CHAP, özellikle Microsoft tabanlı sistemlerde çalışır. En sık kullanılan CHAP türlerinden biridir. Bu protokol daha fazla güvenlik ve anahtar yönetimi katmanı sunar.

3. MS-CHAPv2 (Microsoft Challenge Handshake Authentication Protocol version 2)

MS-CHAPv2, öncekinin daha güncel ve güvenli bir sürümüdür. Böylece daha sağlam bir şifreleme algoritması içerir ve daha fazla güvenlik sağlar.

4. EAP (Extensible Authentication Protocol)

EAP kimlik doğrulama türü, CHAP ile çalışan farklı bir sürümdür. Ağları daha esnek hale getirerek birçok modda kontrol edebilir. Ayrıca, çeşitli stratejileri denemenize de olanak tanır.

5. PAP (Password Authentication Protocol)

PAP yöntemi CHAP’tan daha az güvenlidir. Güvenliği zayıflatan şifrelenmemiş şifreler gönderir. Ancak yöneticiler bunu kapalı ağlarda kullanmaya devam edebilir.

CHAP Protokolü Nasıl Çalışır?

CHAP yöntemi, kullanıcı kimlik doğrulaması için sorgulama-yanıt yöntemini kullanır. İşte çalışma mantığı şu şekildedir:

1. Başlangıç Aşaması

Bağlandıktan sonra, bir prosedür her kişinin kimliğini kontrol ederek karşılıklı anlaşmayı sağlar. Yani bu sunucu ve istemci arasında gerçekleşir.

2. İlk Kimlik Doğrulama Adımı

Kurulumdan sonra sunucu bir sorgulama gönderir; client bunu önceden belirlenmiş bir yöntemi kullanarak karıştırır. Bu işlem aralarında güvenli iletişim sağlar.

3. Client Yanıtı

İstemci, alınan paketi kullanarak şifrelenmiş bir yanıt oluşturur. Bunu bir şifre ve sorgulamayla birleştirir, ardından doğrulama için sunucuya geri gönderir.

4. Yanıtın Kontrol Edilmesi

Bu durumda sunucu, istemcinin kimliğini doğrulamak için yanıtını inceler. Daha sonra algoritma bilinen bir parolayla yanıt verir. Bu iki yanıtın eşleşip eşleşmediğini kontrol eder ve eşleşiyorsa istemciye başarılı bir şekilde izin verir.

5. Başarılı Kimlik Doğrulama

Sunucu ve istemci arasındaki yanıtlar eşleşirse kimlik doğrulama başarılı olur. Böylece istemci ağa erişim kazanır ve güvenli bir şekilde iletişim kurmaya başlar.

6. Sürekli Kimlik Doğrulama

Bağlantı süresi boyunca kimlik doğrulamayı periyodik olarak tekrarlar. Bu işlem veri güvenliğini arttırır. Bu, saldırganın sorgulama paketlerini ele geçirerek bağlantıyı ele geçirmesini zorlaştırır.

CHAP Avantajları ve Dezavantajları

Şimdi ağlar ve güvenlikle ilgilenen kişiler için CHAP kullanmanın iyi ve kötü yanlarına bakalım:

Avantajlar

  1. Güvenlik

CHAP güçlü bir kontrol yöntemi sunar ve MD5 veya MS-CHAPv2 gibi algoritmalar kullanır. Bu, istemci ve sunucu arasındaki kimlik doğrulama için çok güvenlidir. Bu nedenle şifreleri açık metin olarak göndermez. Bu nedenle güvenlik tehditlerine karşı daha dayanıklıdır.

  1. Gelişmiş Seçenekler

Diğerlerine göre daha iyi güvenlik seçenekleri sunar. Özellikle MS-CHAPv2 daha fazla güvenlik sağlar ve işleri daha da sıkı bir şekilde kilitler.

  1. Esneklik

Esnek olmakla ilgili olarak, işleri kontrol etmenin çeşitli yollarını kullanabilir. Bunlardan biri, herkesin söylediği kişi olmasını sağlamak isteyen ağ yöneticilerinin farklı ihtiyaçlarına uygun olan CHAP EAP’tir.

Dezavantajlar

  1. Verim

Bu protokolün çalışma sürecinde daha fazla işleme ihtiyacı var. Diğer yöntemlere göre daha yavaş olabilir. Ancak büyük ağlarda veya trafiğin yoğun olduğu işlerde performans sorunları ortaya çıkar.

  1. Şifre Güncelleme

Kullanıcıların şifrelerini düzenli olarak güncelleme ihtiyacını yaratır. Bu durumda şifre yönetiminde kullanıcılar açısından zorluk yaratmaktadır.

  1. Açık-Metin (Clear-Text) Şifrelemeyi (PAP)

PAP bir CHAP türüdür ancak şifreleri açık metin olarak gönderdiği için güvenli değildir. Böylece bazı kullanıcılar bilgiyi ağ üzerinden alır. Sonuç olarak güvenli olmayan veya kapalı ağlarda kullanmalısınız.

Özet bir tablo:

Avantajlar
Dezavantajlar
Güçlü Kimlik Doğrulama
Performans Sorunları
Gelişmiş Güvenlik Seçenekleri
Şifre Güncelleme Gereksinimi
Esnek Kimlik Doğrulama Seçenekleri
Açık Metin Şifreleme (PAP) Güvensizliği

CHAP Protokolü Hakkında SSS

CHAP yöntemi, bağlantı sırasında şifremi çalmak isteyen birine karşı beni nasıl korur?

Şifrenizi asla ağ üzerinden düz metin olarak göndermez. Bunun yerine sunucu rastgele bir sayı üretir. İstemciniz bu sayıyı şifrenizle birleştirip karmaşık bir özete çevirir.
Karşı taraf sadece bu özeti görür, orijinal şifreyi değil. Her oturumda sunucunun gönderdiği sayı değiştiği için özet de farklılaşır. Yani bir saldırgan bu trafiği kaydetse bile işine yaramaz.
Aynı veriyi tekrar gönderip sisteme sızamaz. Sürekli tekrarlanan kontrollerle güvenlik katlanır. Bağlantı boyunca belirli aralıklarla bu doğrulama yeniden yapılır. Bir anlık sessizliği fırsat bilen biri bile uzun süre hatta kalamaz.

İnternet sağlayıcılar neden PAP yerine niye CHAP el sıkışma protokolünü tercih ediyor?

PAP’ın en büyük günahı tembelliğidir. Kimlik bilgilerini hiçbir kılığa sokmadan doğrudan hatta bırakır. Aradaki bir saldırgan kullanıcı adınızı ve şifrenizi çorba içer gibi höpürdeterek içer.
Oysa bu yeni nesil yöntem üç aşamalı bir sır alışverişi yapar. Sunucu sorar, istemci şifreler, sunucu onaylar. Bu sırada ortamda dolaşan tek şey anlamsız bir hash değeridir.
Ayrıca PAP kimliği yalnızca bağlantı anında bir kez kontrol eder. Bağlantı ele geçirildikten sonra saldırgan istediğini yapar. Neyse ki bahsettiğimiz bu sağlam protokol periyodik yoklamalarla bu riski sıfırlar.
Servis sağlayıcılar için itibar her şeydir. Bir veri ihlali onlara milyonlara mal olur. Bu yüzden PAP tarihin tozlu raflarına kalktı, güvenli el sıkışma standart oldu.

MS-CHAPv2 ile standart CHAP arasında bana performans kaybı yaşatacak bir fark var mı?

MS-CHAPv2 Microsoft dünyasının size özel diktiği bir zırhtır. Karşılıklı kimlik doğrulama yaparak işi daha da sıkı tutar. Yalnızca sunucu istemciyi değil, istemci de sunucunun gerçekliğini sorgular.
Bu ekstra güvenlik katmanı elbette birkaç milisaniyelik işlem gücü ister. Fakat günlük kullanımda bunu hissetmeniz imkansızdır. VPN bağlantınız bir anlığına tıkanıyorsa sorunu modemde arayın, protokolde değil.
Şifreleme algoritması daha güçlüdür ve anahtar yönetimi sunar. Böylece eski sistemlerdeki bazı saldırı vektörleri tamamen kapanır. Eğer bir Active Directory ortamında çalışıyorsanız tek doğru tercihtir.
Aklınızda olsun, bu sürüm eski donanımlarla konuşurken geriye dönük uyumluluk da sunar. Yani ne güvenlikten ne de uyumluluktan ödün verirsiniz. Tadından yenmez bir teknolojidir.

İlk tanışma anında üç aşamalı bu sorgulama cevap süreci teknik olarak neye benziyor?

Sokaktaki bir kulübe girişinizi hayal edin. Kapıdaki görevli kulağınıza rastgele bir rakam fısıldar. Siz de parolanızla o rakamı kafanızda toplar, sadece sonucu söylersiniz.
İçerideki patron aynı işlemi yapar, sonuçlar uyuşursa kapı açılır. İşte bu protokol tam olarak böyle işler. Sunucu meydan okuma paketini yollar, istemci MD5 gibi bir algoritmayla bunu şifreyle yoğurur.
Ortaya çıkan hash değeri sunucuya uçar. Sunucu kendi hesaplamasını yapar, iki değer eşleşirse oturum başlar. Eşleşmezse bağlantı anında kesilir, ikinci bir şans verilmez.
Olayın güzelliği şu: dışarıdan biri dinlese de sadece rastgele sayıyı ve hash’i görür. İkisini birleştirip şifreyi geri elde edemez. Matematiksel olarak imkansıza yakındır.

Sürekli periyodik yoklama yapması internet hızımı düşürür mü?

Bu kontroller bir sineğin kanat çırpması kadar hafiftir. Arka planda akan birkaç byte’lık minik paketlerden ibarettir. İnternet hattınızın bant genişliğine etkisi sıfıra yakındır.
Çevrimiçi bir oyun oynarken veya video izlerken bu paketlerin el sıkıştığını asla fark etmezsiniz. Esas tehlike bu yeniden doğrulamanın hiç yapılmamasıdır. Bir saldırgan hattınıza sızıp saatlerce dinleme yapabilir.
Oysa bu yöntem belirli aralıklarla kimliği sorguladığı için hattı çalan kişi anında düşer. Elindeki hash değeri yeni meydan okumayla uyuşmaz. Sonuç olarak siz oyun keyfinize bakarken sistem sizi sessizce korur.

Bir ağ yöneticisi olsam, CHAP sistemini kurumsal VPN yapıma nasıl entegre ederim?

Radius sunucunuzun arayüzüne girip PPP ayarlarına bakın. Orada PAP, CHAP ve MS-CHAP seçeneklerini sıralı görürsünüz. Güvenlik politikası olarak PAP’ı derhal pasif hale getirin.
Ardından tercih sıralamasını MS-CHAPv2 en üstte olacak şekilde ayarlayın. İstemci tarafında da VPN bağlantı özelliklerinden aynı protokolü işaretlemelisiniz. Aksi halde sunucuyla el sıkışamaz, sürekli hata alırsınız.
Yanlış yapılandırma genelde baş ağrıtır. Güvenlik duvarınızın GRE ve PPTP geçişlerine izin verdiğinden emin olun. Ayrıca bir test kullanıcısı oluşturup bağlantıyı doğrulamadan tüm şirkete dağıtım yapmayın.
Dağıtım sonrası günlükleri izlemeye alın. Yanlış parola girişimlerini ve kopan bağlantıları takip edin. Unutmayın, en güçlü kilidi taktınız diye kapıyı aralık bırakmamalısınız.

Bu Rehberi Keşfettikleri İçin Sana Teşekkür Edecekler!

Sadece bir tıkla sevdiklerine dev bir iyilik yapmaya hazır mısın? Bilgi paylaştıkça devleşir.

İlk yorumu sen paylaş