<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/\'/i', $_GET[id])) exit("No Hack ~_~");
$_GET[id] = strtolower($_GET[id]);
$_GET[id] = str_replace("admin","",$_GET[id]);
$query = "select id from prob_vampire where id='{$_GET[id]}'";
echo "<hr>query : <strong>{$query}</strong><hr><br>";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result['id'] == 'admin') solve("vampire");
highlight_file(__FILE__);
?>
str_replace를 통해 admin문자를 없애고 있다.
이런경우 우회법은 adadminmin과 같이 안에 admin을 한번 더 써주는 방법이 있다.
adadminmin
보라색 부분이 없어지면서, 결국 빨간 admin만 남게되는 원리다.
?id=adadminmin
'wargame 🏴☠️ write-up > Lord of SQLInjection' 카테고리의 다른 글
golem (0) | 2022.04.02 |
---|---|
skeleton (0) | 2022.04.02 |
troll (0) | 2022.04.02 |
orge (0) | 2022.04.02 |