27 Ekim 2012 Cumartesi

Güvensiz Kriptografik Depolama

Web uygulamaları verilerin ve bilgilerin güvenliğini sağlamak için nadiren kriptografik fonksiyonları kullanırlar. Saldırganlar zayıfça korunan veriyi, kimlik hırsızlığı ve kredi kartı dolandırıcılığı gibi diğer suçları işlemek için kullanırlar.

Hassasiyet derecesi yüksek olan verileri kriptografi ile korumak, birçok web uygulaması için anahtar konuma gelmiştir. Basitçe hassasiyet derecesi yüksek verileri şifreleyememek oldukça yaygın bir konudur. İçeriğini sık sık kötü bir şekilde şifreleyen uygulamalar da hem uygun olmayan bir şekilde şifreleme kullanılmakta hem de güçlü şifreleme hataları yapılmaktadır. Bu kusurlar, hassas verinin ortaya çıkmasına ve uyumsuzluk sorununa yol açabilir.

Şifreleme sorunlarını önlemek için dikkatli bir planlama yapmak gerekmektedir. Yaygınca görülen sorunları şöyle sıralayabiliriz;
● Hassas verileri şifrelememek
● Basit algoritmalar kullanmak
● Güçlü algoritmaları güvensiz bir şekilde kullanmak
● Zayıflığı ispatlanmış algoritmaları kullanmaya devam etmek (MD5, SHA-1, RC3, RC4, etc…)
● Güçlü kodlanmış şifrelerin ve bunların korunmasız olarak depolanması.

En önemli görüş, gerçekte şifrelenmiş her şey emniyete alınmıştır. Ve siz kriptografinin düzgünce yapıldığından emin olmak zorundasınız. Kriptografinin düzgünce kullanılmadığı bir çok yol vardır.
Aşağıdaki öneriler kriptografik materyallerin güvenli şifrelenmesine yardımcı olmak için sizin tarama sisteminiz bir parçası olabilir:

Kriptografik algoritma oluşturmayın: Halka açık (Public) algoritmaları kullanmak (AES, RSA, SHA-256 yada daha iyi bir hash algoritması).

Zayıf algoritmalar kullanmayın. MD5/SHA-1 gibi zayıf algoritmalar kullanmayın. Daha güvenli alternatifleri olarak SHA-256 yada daha iyisi kullanın.

Anahtarlarınızı offline üretin ve saklarken ekstra özen gösterin. Güvenli olmayan kanallarda asla kişisel anahtarlarınızı yayınlamayın.

MQ kuyruk erişim detayları yada veritabanı bilgileri gibi yapı bilgileri garantilenerek düzgün bir şekilde (sıkı dosya izin ve kontrolleri ile) güven altına alınmalıdır veya güvenli bir şekilde şifrelenmiş ve şifresi lokal veya uzak kullanıcılar tarafından açılamamalıdır.

Disk üzerinde depolanmış şifreli verinin şifresinin çözümlenmesi kolay değildir. Örnek olarak, eğer veritabanı bağlantı havuzu şifrelenmemiş erişime açıksa veritabanı şifrelenmesi de önemsizdir.

PCI veri güvenliği standart gereksinim 3 altında, cardholder verisini korumalısınız. PCI DSS uyumluluğu, kredi kartı dağıtımıyla ilgilenen herkesin yada tüccarların 2008’den itibaren uyma zorunluluğu olacaktır. En iyi pratik asla gereksiz veriyi depolama, manyetik şerit bilgisi veya birincil hesap numarası (PAN, bir diğer deyişle bilindiği adıyla kredi kartı numarası) . Eğer PAN saklanmışsa, DSS uyumluluk gereksinimleri işaret olamlıdır. Örnek olarak, hangi koşul altında olursa olsun CVV numarasını asla depolayamazsın. Daha fazla bilgi için, lütfen PCI DSS Guideline’ına ve gerekli olan kontrolleri yerine getirin.

Güvensiz İletişimler
Uygulamalar önemli iletişim bilgilerini ve veri alış verişlerini korumaları gerekirken, çoğu zaman ağ trafiğini şifrelemekte yetersiz kalmaktadırlar.

Uygulamalar sıklıkla hassas bağlantıların korunması gerektiğinde ağ trafiğini şifrelemede başarısız olurlar. Şifreleme (genellikle SSL) bütün bağlantıların kimlik doğrulaması için özellikle hem internet erişimi olan web sayfaları için hem de sunucu uygulamarı için kullanılmak zorundadır. Diğer bir deyişle, uygulama ya kimlik doğrulaması yada oturum şifrelemeye mecbur bırakılacaktır. Ek olarak, şifreleme hassas veri için her zaman kullanılmalıdır. Kredi kartı veya sağlık bilgileri aktarıldığı zamanlar gibi.

PCI standartları tüm kredi kartı bilgilerinin şifrelenerek internet üzerinden gönderilmesini gerektirir.
Hassas veri iletişimini şifreleme hatasından kasıt, ağ trafiğini koklayan bir saldırganın hassas verilerin iletiminden ya da delilleri içeren konuşmalardan verilere ulaşabileceğidir. Göz önünde bulundurulması gereken bir diğer şey ise, farklı ağlar hattın koklanmasına karşı daha az yada fazla duyarlıdır. Ancak, her ağda tehlike oluşturabilecek bir sunucu sayesinde saldırganlar kolayca sistemi ele geçirmek amacıyla sunucuya koklayıcı (sniffer) kuracak ve trafiği dinleyebileceklerdir.

Son kullanıcı ile aranızda SSL bağlantısı kurmanız son derece önemlidir. Muhtemelen onlar uygulamalara erişmek için güvensiz ağları kullanacaklardır. Çünkü HTTP her tekil istekte ya oturum açma ya da kimlik doğrulaması isteyecektir. Doğrulanmış (onaylanmış), login isteklerinde olduğunun aksine bütün trafik SSL üzerinden gidecektir.Sunucu uygulamalarıyla şifrelenmiş iletişim de ayrıca önemlidir. Muhtemelen bu ağların daha güvenli olmasına rağmen onların taşıdığı bilgi ve veriler çok daha hassas ve çok daha pahalıdır. Bu sebeple, sunucu uygulamalarında SSL kullanımı oldukça önemlidir.

En önemli koruma kullanıcı doğrulaması gerektiren bağlantılarda ve önemli sayılabilecek verilerin transferi sırasında SSL kullanımıdır. Web uygulamasının düzgünce çalışması için SSL’in yapılandırmasını içeren birçok detay vardır. Bu nedenle kendi çalışma alanınızı anlamak ve analiz etmek önemlidir. Örnek olarak IE 7.0 yüksek derecede güvenilir SSL sertifikalarını yeşil bir barla göstermektedir. Ancak bu kriptografiyi tek başına güvenli kullanmak için uygun bir kontrol değildir.

Bütün hassas veri içeren transferlerde yada kullanıcı doğrulaması gerektiren bağlantılarda SSL kullanın. Kimlik, kredi kartı ve sağlık bilgileri gibi...

Bütün sunucu dışı bağlantıların yani web sunucu ile veritabanı sunucusu arasında taşıma katmanının güvenlik önlemlerinin alındığından emin olun.

PCI Data Security Standart ihtiyaçları 4’ün altında, geçiş sırasında kart sahibinin verilerini korumak zorundasınız. PCI DSS uyumu kredi kartlarıyla herhangi birinin para çekmesi aşamasında 2008 yılında zorunlu hale gelecektir. Genel olarak, müşteri, ortak, personel ve yöneticilerin online erişim sistemleri mutlaka şifrelenmiş SSL erişimi ile yada benzer yöntemlerle olmalıdır.

Hiç yorum yok:

Yorum Gönder