Tyojong
[LOS] troll 본문
반응형
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/\'/i', $_GET[id])) exit("No Hack ~_~");
if(preg_match("/admin/", $_GET[id])) exit("HeHe");
$query = "select id from prob_troll 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("troll");
highlight_file(__FILE__);
?>
문제 목표
if($result['id'] == 'admin') solve("troll");
id가 admin이면 해결된다.
if(preg_match("/admin/", $_GET[id])) exit("HeHe");
admin문자열을 필터링하고 있다.
문제 해결
sql에서는 대•소문자를 구분하지 않는다.
admin문자열을 필터링하고 있는 정규표현식을 보면 admin이라는 소문자로만 이루어진 문자열만 검증하고 있다.
이런식으로 id에 대문자를 섞어 작성하면 문제를 해결할 수 있다.
728x90
'web > LOS' 카테고리의 다른 글
[LOS] skeleton (0) | 2025.07.25 |
---|---|
[LOS] vampire (0) | 2025.07.25 |
[LOS] orge (0) | 2025.07.22 |
[LOS] darkelf (0) | 2025.07.22 |
[LOS] wolfman (0) | 2025.07.21 |