UNION Attack ile Tablodan Veri Çekme
Bu labda daha önce kullandığımız teknikleri birleştireceğiz. Labda bize “users” tablo ismi ve “username” “password” sütunları bilgisi verilmiş. Bu bilgileri SQLi açığı olan bir uygulamadan SQLMAP kullanarak rahatlıkla çekebilirdik. Şu an bizde hazır verilmiş durumdadır. Önce kaç sütun var onu belirleyeceğiz daha sonra bu sütunlardaki verilerin türlerini belirleyeceğiz. Daha önce çalışmadığımız bir uygulama olsaydı tek tırnak ( ‘ ) ile SQLi olup olmadığını anlayabilirdik.

Daha önce yaptığımız gibi ORDER BY ile sıralama yapıyoruz ve 1., 2. sütunları sıralarken yani 200 OK dönerken 3. sütun için hata dönüyor. Bu da bize 2 sütunlu bir tablo ile karşı karşıya olduğumuzu gösteriyor. Daha sonra bu sütunların türlerini öğreniyoruz.
'+UNION+select+NULL,NULL-- // bu yukarıda yaptımız ORDER BY işleminin NULL ile yapılmış hali. Çıktısı yine 200 OK şeklindedir.
'+UNION+select+'bilisimcikiz',NULL-- // Burada sütun türünün text olup olmadığını test ediyoruz ve 200 OK alıyoruz. Tarayıcıdaki görüntüsü de aşağıdaki gibidir.

'+UNION+select+NULL,'bilisimcikiz'-- // Burada sütun türünün text olup olmadığını test ediyoruz ve 200 OK alıyoruz. Burp Suite Repetardeki ekran görüntüsü aşağıdaki gibidir.

Bize labda “users” tablosu ve “username”, “password” sütunları olduğu belirtilmişti. Bu bilgiler ile yeniden sorgu göndereceğiz ve elde edeceğimiz “administrator” kullanıcısı ve parolası ile sisteme giriş yaparak labı tamamlayacağız.
'+UNION+select+username,password+from+users-- // username ve password'ü tırnak içerisinde yazmadık çünkü text olarak ekrana basmasını değil de sütun ismi olarak algılayıp ekrana basmasını istiyoruz.


Elde ettiğimiz kullanıcı bilgileri ile sisteme giriş yapıyoruz.
