Veritabanı sistemlerine saldırı nasıl yapılır? Bir veritabanı saldırısı ne kadar yıkıcı olabilir? Hangi yöntemlerle yapılmaktadır ve hangi bilgilere ihtiyaç duyuluyor?
1995 yılında ilk kez piyasaya sürülen EBay, dünyanın en büyük açık artırma ve online satış sitesidir. İlk kurulduğu yıllar içerisinde sadece online açık arttırma modeliyle pazara giriş yapmış olan eBay daha sonradan farklı satış modellerine de imkan sunarak en popüler satış platformu haline gelmiştir. Bugün eBay’in 177 milyondan fazla aktif alıcısı var ve bu da açık artırma sitesi için oldukça büyük bir veri tabanı oluşturuyor. Bir veritabanı, eBay gibi bir web sitesinin kalbinde yer alır. Ne yazık ki, en başarılı şirketler bile eBay’in 2014 ortalarında yaşadığı bilgisayar korsanlığı girişimlerine karşı bağışık değil. Bilgisayar korsanları eBay’in veritabanını ihlal ederek 145 milyon kullanıcının adlarının, adreslerinin ve hatta şifrelerinin ele geçirilmesine neden oldu. Belki de haberlerin en kötüsü, bilgisayar korsanlarının birkaç eBay çalışanının oturum açma kimlik bilgilerini kullanarak veritabanına erişim kazanması ve keşfedilmeden önce yedi aydan fazla bir süre boyunca sistemde özgürce dizginlenmesi olabilir.
Bir veritabanı, bir şirketin web sitesinin veya uygulamasının arkasında kritik bir altyapı parçasıdır. Eğer veritabanı sistemlerinin nasıl çalıştığını merak ediyorsanız, veritabanı sistemleri nasıl çalışır yazımı okuyabilirsiniz.
Veritabanı Sistemlerine Saldırı Nasıl Yapılır?
Veritabanı sistemlerine saldırı yapmanın çok fazla yöntemi vardır.
Bir veritabanı sistemine girebilmek için temel anlamda:
- Fiziksel Bağlantı
- Açık Port
- Kullanıcı Adı
- Şifre
bilgilerine gerek vardır.
Brute Force Atak ile Veritabanı Şifre Denemeleri
Dört aşamalı bir bağlantı yapılmaktadır ve eğer kişi içeriden saldırıyorsa yani yerel ağdaysa ilk iki aşamayı çoktan geçmiştir. 3. Aşama olan kullanıcı adına geldiğimizde, veritabanı sistemlerinde varsayılan kullanıcılar vardır. Genelde kapatılmaz, açık bırakılır. Bu durumda geriye şifreyi bilmek ya da bulmak kalıyor. Şifreyi bulmak için Brute Force Atak işlemi ile şifre denemeleri yapılır.
SQL Injection Saldırıları ile Sisteme Girme
Bir diğer sisteme girme yöntemi ise şifreye ihtiyaç duymadan SQL Injection saldırıları ile sisteme girmektir. SQL Injection temel itibariyla basit bir saldırı yöntemidir. Injection İngilizce de “şırınga, enjeksiyon” anlamlarına gelmektedir. Bunu yazılımda, zararlı olmayan bir SQL cümlesinin arasına, zararlı bir SQL cümlesini enjekte etme olarak yorumlayabiliriz.
Böylece sistemde bir SQL Injection açığı varsa saldırgan sistemde:
- Verileri FTP ile dışarı çıkarabilir.
- Verilere zarar verebilir.
- Sisteme zararlı yazılım yükleyebilir.
- Sisteme format atabilir.
- Sisteme kullanıcı ekleyebilir.
Excel ile Veritabanı Sistemine Sızma
Genellikle IT çalışanları kendilerini garanti altına almak için kullanıcıları kısıtlarlar. Bu kısıtlama farklı şekillerde olabilir. Örnek olarak, bir kullanıcı kendi bilgisayarına program kurma yetkisine sahip olmayabilir. Böylece zararlı bir saldırı yazılımının bilgisayara yüklenemeyeceği düşünülür.
SQL Injection ve Brute Force haricinde başka bir tehdit olan Excell vardır. Excell her ofis çalışanın bilgisayarlarında yüklü olan bir programdır. Saldırgan bir şekilde veritabanına bağlanabilmişse Excell üzerinde Microsoft Query ile her türlü saldırı işlemini gerçekleştirebilir.
Excel üzerinde rapor çekmek birçok şirkette kullanılan bir yöntemdir. Dikkatsizlik sonucu veritabanı bağlantı şifreleri bazen Excel’in içine kaydedilir. Kullanıcı, rapor çektiğinde bir daha şifre sorulmasın diye yapılan bir işlemdir.
ERP Sistemlerindeki Güvenli Zafiyetlerinden Yararlanarak Veritabanına Girme
Birçok firma ERP sistemlerini kullanmaktadır. Bu sistemler genellikle veritabanı sistemlerine bir kullanıcı ile bağlanırlar ve kullanıcı genellikle en yetkili kişi olur. Bu uygulamalar yetkilendirmeyi kendi içinde yaparlar fakat veritabanına giderken tam yetkili bir kullanıcı ile giderler. Eğer ERP sisteminde bir açık varsa bu bir güvenlik zafiyeti olarak karşımıza çıkar ve kullanıldığında sistemde büyük sıkıntılar doğurur.
Klavye Dinleyerek Veritabanı Şifresini Tespit Etme
Bir şekilde IT personelinin bilgisayarına bulaşan trojan, virüs, keylogger benzeri klavye dinleyen uygulamalar ile bir veritabanı şifresi tespit edilebilir.
Connection Stringlerin Okunması
Geliştirilen yazılımların içinde veritabanı bağlantı bilgileri bazen config dosyalarının içinde tutulur. Burada Application Config dosyasını Notepad gibi bir araçla açarak bağlantı bilgilerini okuyabilir.
Tersine Mühendislik Yapılarak Veritabanı Şifresi Ele Geçirme
Geliştirilen yazılımlarda veritabanı bağlantı bilgileri config dosyalarında değil direk olarak yazılımın içine gömülü olarakta tutuluyor olabilir. Bu okunamayacağı anlamına gelmez. Çeşitli tersine mühendislik yöntemleriyle okunabilir.
.NET Reflector Visual Studio ile yazılan bir uygulama exe’sini source koda çevirebilir.