TEKNOLOJİ : Veritabanı Sistemlerinde Ağ Trafiğinin Şifrelenmesi

Mehmet Aslan, TÜBİTAK BİLGEM
Çoğu veritabanı sisteminde sunucu ile istemci arasındaki ağ trafiği, varsayılan kurulan veritabanları için şifrelenmeden gerçekleşir. Araya girme saldırıları ile bu trafik dinlenilebilir ve veritabanında bulunan bilgiler yetkisiz kişilerce elde edilebilir. Bu durum verinin bütünlüğünü ortadan kaldırır.

Bu yazımızda Oracle ve MSSQL Server veritabanlarında varsayılan kurulumlarda istemci ve sunucu arasındaki trafiğin açık bir halde iletildiğini göstereceğiz. Ayrıca bu trafiğin şifreli şekilde iletilmesi için gerekli adımlardan bahsedeceğiz. Bu yazıda örnek olarak Oracle 11g ve MSSQL Server 2008R2 veritabanları kullanılmıştır.

Oracle veritabanlarında istemci ve sunucu arasındaki trafik varsayılan olarak şifresiz gerçekleşir. Belirtilen duruma örnek bir senaryo şu şekildedir. İlk olarak istemci tarafındaki veritabanı uygulamasından Oracle veritabanında bir sorgu çalıştırılmıştır. Çalıştırılan sorgu Şekil 1’de görülmektedir. İstemci ile veritabanı sunucusu arasındaki trafik pfSense güvenlik duvarının paket yakalama özelliği kullanılarak yakalanmıştır. Elde edilen trafiğin bulunduğu paket Wireshark aracı ile açıldığında, istemci tarafından veritabanı sunucusuna TNS protokolü ile gönderilen sorgunun açık bir şekilde iletildiği Şekil 2’de görülmektedir. Aynı zamanda veritabanı sunucusu tarafından sorguya verilen cevabın da aynı şekilde açık halde istemciye gönderildiği Şekil 3‘te görülmektedir.

Şekil 1. İstemci tarafından veritabanında çalıştırılan sorgu

Şekil 2. İstemci tarafından gönderilen sorgunun açık olarak iletilmesi

Şekil 3. Sunucu tarafından sorguya verilen cevabın açık olarak iletilmesi

Oracle veritabanında istemci ve sunucu arasındaki trafiğin şifreli olarak iletilmesini sağlayan yapılandırma ayarları için 4 farklı değer bulunmaktadır: Accepted, Rejected, Requested, Required .

Oracle veritabanlarındaki yapılandırma ayarlarında varsayılan değer “Accepted” değeridir. “Accepted” değeri seçildiği durumda, ağ trafiğinin şifrelenmesi için bağlantının diğer tarafı için “Requested” ya da “Required” değeri seçilmelidir.

“Required” değeri seçildiğinde, bağlantının diğer tarafında “Rejected” değeri seçilmediği durumda ağ trafiği şifrelenerek gönderilir. Bağlantının diğer tarafında “Rejected” değeri seçilirse, bağlantı sona erdirilir.

“Rejected” değeri seçildiğinde, bağlantının diğer tarafında “Required” değeri seçilmediğinde ağ trafiği şifrelenmeden gönderilir. Ancak “Required” değeri seçildiği durumda bağlantı hata verilerek sona erdirilir.

“Requested” değeri seçildiği durumda, bağlantının diğer tarafında “Accepted”, “Requested”, “Required” değerlerinden biri seçilirse ağ trafiği şifrelenerek gönderilir.

Şifreleme mekanizmasının çalışması ile ilgili yapılandırma ayarlarını gösteren tablo referansta[1] belirtilmiştir.

Oracle veritabanında istemci ve sunucu arasındaki trafiğin şifrelenmesini sağlayan güvenlik mekanizması “Oracle Net Manager” ya da “sqlnet.ora” yapılandırma dosyasını kullanarak etkinleştirilebilir. Şekil 4‘te “Oracle Net Manager” aracı ile şifreleme mekanizmasının yapılandırılması gösterilmiştir. Ayrıca şifreleme mekanizması “Oracle Net Manager” aracı kullanılmadan “sqlnet.ora” yapılandırma dosyası ile de yapılandırılabilir.

Şekil 4. Oracle Net Manager ile şifreleme mekanizmasının aktifleştirilmesi

Şekil 5. “sqlnet.ora” yapılandırma dosyasındaki şifreleme ayarları

Oracle veritabanında şifreleme mekanizmasının aktifleştirilmesi sonucunda istemci ve sunucu arasındaki trafiğin şifreli olarak iletildiği Şekil 6 ve Şekil 7’de görülmektedir.

Şekil 6. İstemci tarafından gönderilen sorgunun şifreli olarak iletilmesi

Şekil 7. Sunucu tarafından gönderilen cevabın şifreli olarak iletilmesi

MSSQL Server veritabanları da Oracle veritabanları gibi istemci ve sunucu arasındaki trafiği varsayılan olarak açık halde göndermektedir. İstemci tarafında veritabanı üzerinde bir sorgu çalıştırılmış ve oluşan trafik pfSense güvenlik duvarı ile araya girilerek elde edilmiştir. İstemci tarafından oluşturulan trafik Şekil 8’de, sunucu tarafından istemcinin gönderdiği isteğin sonucunu içeren trafik Şekil 9’da verilmiştir. Şekillerden görüldüğü üzere her iki tarafın oluşturduğu trafik açık olarak karşı tarafa iletilmektedir.

Şekil 8. İstemci tarafından oluşturulan trafik

Şekil 9. Sunucu tarafından isteğin sonucunu içeren trafik

MSSQL Server veritabanları üzerinde istemci ve sunucu arasındaki trafiğin şifreli olarak iletilmesini sağlamak için “Force Encryption” değeri aktif hale getirilmelidir. İlgili değer “Sql Server Configuration Manager -> Sql Server Network Configuration -> Protocols for %Instance_Name% -> Properties -> Force Encryption” yolu izlenerek yapılandırılabilir. Şifrelemeyi etkinleştirmek için bu değer “Yes” olarak değiştirilmelidir. Bu işlemin ardından SQL Server servisi yeniden başlatılmalıdır.

MSSQL Server veritabanları şifreleme işlemini öncelikli olarak güvenilir bir sertifikasyon makamı tarafından verilen bir sertifika ile gerçekleştirir. Ancak sistemde böyle bir sertifika bulunmadığı durumlarda kendisinin oluşturduğu bir sertifika (self-signed) ile şifreleme işlemini gerçekleştirir.

Şekil 10 ve Şekil 11’de MSSQL Server veritabanında şifreleme yöntemi aktif hale getirildikten sonra istemci ve sunucu arasındaki trafik gösterilmektedir. Şekillerden görüleceği gibi her iki yönlü trafik de şifreli olarak iletilmektedir.

Şekil 10. Şifreleme yöntemi etkinleştirildikten sonra istemci tarafından oluşturulan trafik

Şekil 11. Şifreleme yöntemi etkinleştirildikten sonra sunucu tarafından oluşturulan trafik

Veritabanı sistemlerinde istemci ve sunucu arasındaki trafiğin şifreli olarak iletilmesi, iletilen verinin bütünlüğünün korunması açısından önemlidir. Ancak trafiğin şifreli olarak iletilmesi sonucunda belirli ölçüde bir performans kaybı yaşanacağı göz önünde bulundurulmalıdır. Ayrıca istemci uygulamaları veritabanına bağlanırken veritabanında belirtilen şifreleme algoritmasını kullanmalıdır.

Reklamlar

Etiketlendi:, , ,

Bir Cevap Yazın

Please log in using one of these methods to post your comment:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

YÜKSEK STRATEJİ

strateji, istihbarat, güvenlik, politika, jeo-politik, mizah, terör, araştırma, teknoloji

%d blogcu bunu beğendi: