Thursday, December 6, 2018

[CTFS.ME] The Vault - SQLITE3 and preg_match() bypass

pada  soal ini diberikan sebuah link web login, saya diharuskan membypassnya namun web tersebut memiliki filter preg_match, jadi tidak bisa menggunakan simbol namun hal tersebut bisa diakali.

coba anda buka source code login.txt maka disitu akan terlihat kode login phpnya, lihat pada bagian:

  $pattern ="/.*['\"].*OR.*/i";
  $user_match = preg_match($pattern, $username);
  $password_match = preg_match($pattern, $username);
  if($user_match + $password_match > 0)

hal diatas bisa diakali dengan simbol \  sekarang coba di form username ketik \' lalu submit maka akan muncul pesan error.

selanjutnya untuk mendapatkan flag saya harus memasukan query pada form username "\' UNION SELECT 1-- " lalu submit maka flag akan muncul.

No comments:

Post a Comment