Tyojong
[LOS] evil_wizard 본문
http://www.wechall.net
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/prob|_|\.|proc|union|sleep|benchmark/i', $_GET[order])) exit("No Hack ~_~");
$query = "select id,email,score from prob_evil_wizard where 1 order by {$_GET[order]}"; // same with hell_fire? really?
echo "<table border=1><tr><th>id</th><th>email</th><th>score</th>";
$rows = mysqli_query($db,$query);
while(($result = mysqli_fetch_array($rows))){
if($result['id'] == "admin") $result['email'] = "**************";
echo "<tr><td>{$result[id]}</td><td>{$result[email]}</td><td>{$result[score]}</td></tr>";
}
echo "</table><hr>query : <strong>{$query}</strong><hr>";
$_GET[email] = addslashes($_GET[email]);
$query = "select email from prob_evil_wizard where id='admin' and email='{$_GET[email]}'";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if(($result['email']) && ($result['email'] === $_GET['email'])) solve("evil_wizard");
highlight_file(__FILE__);
?>
문제 목표
if(preg_match('/prob|_|\.|proc|union|sleep|benchmark/i', $_GET[order])) exit("No Hack ~_~");
이전 hell_fire 문제에서 sleep과 benchmark 필터링이 추가되었다. (나머지는 이전 문제와 동일)
문제 해결
이전 문제에서 time based를 이용해 해결하지 않았기 때문에 동일한 코드로 문제를 해결할 수 있다.
https://tyojong.tistory.com/78
[LOS] hell_fire
idemailscore"; $rows = mysqli_query($db,$query); while(($result = mysqli_fetch_array($rows))){ if($result['id'] == "admin") $result['email'] = "**************"; echo "{$result[id]}{$result[email]}{$result[score]}"; } echo "query : {$query}"; $_GET[email] =
tyojongblog.site


'web > LOS' 카테고리의 다른 글
| [LOS] hell_fire (0) | 2026.02.05 |
|---|---|
| [LOS] dark_eyes (1) | 2026.02.04 |
| [LOS] iron_golem (0) | 2026.02.03 |
| [LOS] dragon (0) | 2026.01.30 |
| [LOS] xavis (2) | 2026.01.27 |
