İçindekiler:
Video: AĞ YÖNETİMİ VE BİLGİ GÜVENLİĞİ - Ünite 8 Konu Anlatımı 1 2024
Bu örnek olayda, SQL Server güvenliğinde uzmanlardan biri olan Chip Andrews, (ahlaki açıdan) bu korsan deneyimini bir müşteriye paylaştı güvenlik kusurlarını ortaya çıkarmak için veritabanı. Bu örnek, sağlam veritabanı güvenliği konusunda ısrar ederek önemli bilgilerinizi korumak için dikkatli bir masal hazırlar.
Durum
Andrews rutin bir penetrasyon testi sırasında zorunlu Google aramaları, alan adı araştırması, işletim sistemi parmak izi ve liman taramaları gerçekleştirdi ancak bu web sitesi sıkı bir şekilde kilitlendi. Sistem üzerinde çalışan web tabanlı bir uygulamaya geçtiğinde, SSL şifreli form kimlik doğrulamasını kullanan bir oturum açma sayfası ile hemen karşı karşıya kaldı.
Web sayfasının kaynağını kontrol ederek, bir kullanıcı siteye giriş yapmaya çalıştığında uygulamanın gizli bir App_Name alanının geçtiğini fark etti. Geliştiricilerin bu masum görünümlü parametrede doğru girdi doğrulamasını yerine getirmede başarısız olabileceği düşünülüyor mu? Ava çıktı.
Sonuç
İlk olarak, araç kitini biraraya getirme zamanı geldi. Bu penetrasyon testinin yapıldığı andaki Andrews, hepsini ücretsiz olarak kullanan Paros Proxy, Absinthe, Cain & Abel, Data Thief ve Microsoft SQL Server Management Studio / SQL Server'ı (Express Edition) kullanmayı tercih etti..
Yeni başlayanlar için, web sunucusuna yapılan web isteklerine daha fazla kontrol ve görünürlük sağlamak için Paros Proxy kullandı.
Kullanılabilir sayfalar için site örümcek ve SQL enjeksiyonu için hızlı bir savunmasızlık kontrolü yaptıktan sonra, uygulamanın bir uygulama hatasını belirten bir Hata 500 istisnası atması için App_Name parametresinin göründüğü doğrulandı. Penetrasyon testleri, bir uygulama başarısızlığı istenen bir sonuç olduğu nadir durumlardan biridir.
Uygulama başarısızlığı, Bay Andrews'in, uygulamadan veritabanına gönderilen SQL koduna istenmeyen karakterleri enjekte edebileceğini gösterdiğinden bunun istismar edilebilir bir durum olup olmadığını görebiliyordu.
Microsoft SQL Server veritabanlarında çalışan ortak bir test, veritabanı sunucusunun 10 saniye durmasına neden olan WAITFOR DELAY '00: 00: 10 'gibi bir komut eklemektir. Normalde bir sayfayı bir saniyede veya daha kısa bir sürede döndüren bir uygulamada, tutarlı bir 10 saniyelik gecikme, komutları SQL akışına enjekte edebileceğiniz iyi bir göstergedir.
Sonra, Andrews, Giriş Sayfasına saldırmak için Veri Hırsızlığı aracını kullanmaya çalıştı.Bu araç, veritabanını, hedef veritabanından Internet'te bulunan Bay Andrews'in veritabanına kopyalamak için OPENROWSET komutunu kullanmaya zorlar.
Bu genellikle savunmasız veritabanlardan büyük miktarda veri sifrelemek için çok etkili bir yoldur, ancak bu durumda saldırısı engellendi! Hedefte veritabanı yöneticisi, Adhoc Dağıtılmış Sorgularını Devre Dışı Bırak seçeneklerini doğru olarak yapılandırarak OPENROWSET işlevselliğini devre dışı bırakmıştı.
Saygı duruşu sözcüğü olarak Sayın Andrews bir sonraki araç olan Absinthe'yi ısrar etti. Bu araç, veritabanının basit evet veya hayır sorularını kullanarak veri hakkında tespitler yapmak için kör SQL enjeksiyonu adlı bir teknik kullanır. Örneğin, araç, tablonun ilk harfinin "L" den küçük olup olmadığını veritabanından isteyebilir. "
Evet ise, uygulama hiçbir şey yapmayabilir, ancak yoksa uygulama bir istisna atabilir. Bu basit ikili mantığı kullanarak, bu tekniği tüm veritabanı yapısını ve hatta içinde saklanan verileri bile - çok yavaş olsa da ortaya çıkarmak için kullanmak mümkündür. Aracı kullanarak, hassas müşteri bilgilerinin bir tablosunu belirledi ve müşteriyi göstermek için yüzlerce kayıt indirdi.
Sonunda, son bir veritabanı bozukluğu eylemine girişmenin zamanı gelmişti. Önce, Andrews, Cain & Abel adlı aracı yükledi ve koklama moduna girmesi için ayarladı. Ardından, Paros Proxy ve önceden tanımlanmış savunmasız parametreyi kullanarak, SQL Server veritabanı kullanıcılarının kullanabileceği xp_dirtree genişletilmiş saklı yordamını, İnternet Bağlantılı makinede Evrensel Adlandırma Konvansiyonu yolu kullanarak bir dizin göstermeye çalışmak için kullandı.
Bu, hedef veritabanını aslında Bay Andrews'in makinasına karşı kendini doğrulamaya çalışmaya zorladı. Cain & Abel tel dinlerken maruz kaldıkları dosya paylaşımının kimliğini doğrulamak için kullanılan sorunun karmasını aldı.
Bu karmayı, Cain & Abel'e kurulan şifre kırıcıya aktararak, Andrews, savunmasız SQL Server'ın çalıştığı hesapın kullanıcı adı ve parolasını yalnızca bir kaç saat içinde alacaktı.
Bu saldırıya uğramış hesap, web uygulamasının yönetici hesabıyla aynı şifreyi kullanacak mıydı? Bu şifre, ana bilgisayardaki yerel yönetici hesabıyla aynı mıydı? Bunlar başka bir günün sorularıydı. Toplanan tüm verileri toplayıp müşteriye bir rapor hazırlamanın ve araçları başka bir günün dışında bırakmanın zamanıydı.
Chip Andrews, güvenlik danışmanlığı şirketi Special Ops Security, Inc.'in kurucu ortağı ve SQLSecurity'nin sahibi. com, Microsoft SQL Server güvenliği hakkında SQLPing3 aracı da dahil olmak üzere birçok kaynağa sahiptir. SQL Server güvenliği ve Black Hat sunumcusu üzerine çeşitli kitapların yazarlarından olan Andrews, 1999'dan bu yana SQL Server'ı ve uygulama güvenliğini desteklemektedir.