SQL Injection Evasion Algılama

SQL injeksiyon saldır tespiti, önceleri zararlı olduğu bilinen imzalarla ve anahtar karşı desen eşleştirme teknikleri ile başarılı olmuştur. Yakın zamana kadar, bu yöntem kullanılmıştır. Günümüzde, saldırganların algılama tekniklerinden kaçmak için çeşitli yollar denediği görülmekte.

Algılama korunma tekniklerini keşfedip, kritik sistemlere ulaşarak güvenliği tehdit eden saldırganlara karşı yeni teknikler gerekir.

Evasion (Sakınma) tespiti motorları bu tür saldırılara karşı yeni bir koruma biçimidir. Bu motorlar başarılı algılama ve gizli bir SQL injeksiyon saldırılarına müteakip, önleme ile sonuçlanan ve bunun üzerine başarılı bir SQL injeksiyonu saldırısına neden olabilen zararlı kod gizleme girişimleri tanır.

Truva Atı

Tarihsel olarak potansiyel zararlı istekleri tespit ve durdurmak için anahtar kelime tabanlı veya desen eşleştirme teknikleri kullanıldı. IPS ve uygulama güvenlik duvarları bu tarz saldırıları tespit ve önlemede gayet başarılıdırlar. Tabi zaman geçtikte her saldırıya karşı geliştirilen imza ve anahtar kelime sayıları oldukça fazla genişlemiştir.

Imzalara ek olarak , anahtar kelime eşleme de genellikle başarılı bir uygulama savunmasını nüfuz kenar vakalarını önlemek için kullanılır . Bu tür “Drop” ve ” Union” gibi bazı anahtar kelimeleri sık sık potansiyel saldırı olarak aranan ve herhangi bir veritabanı uygulaması için mukadder istekleri dahilinde bir kural olarak reddedilir.

Saldırganlar, Truva Atı uygulamasının kolayca engellenmesi nedeniyle, yeni yollar arayışındadırlar. Bu yüzden Truva Zebra denen teknik bulundu.

Truva Zebra

Truva Zebra geçmişte saldırıları işlemek için kullanılan Truva Atına çok benziyor, ama desen olarak çok farklıdır. Tehdit önleme sistemleri özel desenler aradığından, Truva Zebra görünümü, onun kolayca kurumsal veritabanlarına saldırı tipini güçlendirmiştir.

Zebra bir at çok benzer, ama çizgili desen görünümü çok farklıdır. Bugünün imza veritabanları içinde yer almayan bir desendir. Bu nedenle SQL injeksiyon saldırıları bugün başarılıdır. Daha da kötüsü, imza eşleştirme teknikleri bu saldırı karşısında etkisizdir. Çünkü Zebralarda olduğu gibi desenler birbirinden tamamen farklıdır.

SQL injection saldırıları bugün dahada tehlikeli boyutlara gelmiştir. Truva Zebra desen farklılığından dolayı, algılaması güç, koruma oluşturma kaynakları yetersizdir. Zebra desenleri gibi, desenler içerisine yerleştirilmiş zararlı kodların tespiti zordur.

Evasion (Kaçırma, Sakınma) tekniklerini 4 kategoriye ayırmak mümkün;

Sql Injection
Sql Injection

White Space Manipulation (Beyaz Boşluk)

Hemen hemen tüm modern imza-tabanlı SQL Injection algılama motorları kötü niyetli SQL kodu etrafında beyaz boşluk sayısını ile saldırıları saptama yeteneğine sahiptir.

Ayrıca beyaz boşluk manipülasyon genelde potansiyel sorgudan boşlukların kaldırılmasını içermesine rağmen, aşağıdaki karakterler de imza ve desen eşleştirme tabanlı algılama sistemlerini şaşırtmak için kullanılabilir.

  1. Tab
  2. Satır başı (Carriage return)
  3. Satır besleme (Line feed)

SQL veritabanları yukarda bahsi geçen beyaz boşluk ve karakterleri işleme yeteneğine sahip değillerdir. Bu nedenle saldırılarda bu tarz karakter kullanımları tehlikeli sonuçlar doğurmaktadır.

Yorum Alanının Sömürülmesi

Saldırganlar önceleri SQL veritabanlarında yorum alanı olarak algılanan “–” çift çizgi karakterlerini kullanırlardı. Birçok SQL motoru veya IPS koruma sistemleri bu alanı tanımakta ve engellemektedir. Bu nedenle saldırganlar C dilinde yorum alanı olarak kullanılan /**/ desenini kullanmaya başladılar.

Saldırganlar saldırılarda birlikte kullanılan ancak imza maç üzerinden kolayca tespit edilir komutları ayırmak için, ve bazı durumlarda anahtar kelimeleri kırmak için, boşluk yerine “C” tarzı açıklamaları kullanır.

devamı gelecek……

3,455 total views, 2 views today

Bir Cevap Yazın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>