네 안녕하세요. Godhaword 입니다.
바로 문제보시죠
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~");
if(preg_match('/or|and|substr\(|=/i', $_GET[pw])) exit("HeHe");
$query = "select id from prob_golem where id='guest' and pw='{$_GET[pw]}'";
echo "<hr>query : <strong>{$query}</strong><hr><br>";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result['id']) echo "<h2>Hello {$result[id]}</h2>";
$_GET[pw] = addslashes($_GET[pw]);
$query = "select pw from prob_golem where id='admin' and pw='{$_GET[pw]}'";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if(($result['pw']) && ($result['pw'] == $_GET['pw'])) solve("golem");
highlight_file(__FILE__);
?>
오랜만에 보는 Blind SQL Injection 인데.. 뭔가 맛이 없어보입니다.
다시 4번 orc 문제 풀었을 때 썼던 코드를 불러와봅시다.
돌려놓고 에스파 직캠보고 왔습니다.
= : like
substr : mid 로 바꾸어놓고 왔습니다.
문제가 쉽기도 한데 쉬운 이유가 이전에 짧게짧게 풀렸던 기본기문제 덕분입니다.
Blind SQL Injection은 코딩 실력과 필터링 실력이 같이 올라간다기보단 필터링 공부하면 필터링 실력만 쭉 늘고 코딩만 하면 코딩 실력이 쭉느는 그런 느낌이기 때문에
"아.. 나는 코딩에 재능이 없나..?"
하면 필터링 관련 문제만 푸시고
"필터링 재미 1도 없네"
싶으시면 코딩만 주구 장창 해보시길 바랍니다.
https://godhaword.tistory.com/472
https://godhaword.tistory.com/473
필터링 및 우회 방법은 위의 글 읽어보시길 바랍니다.
- 이 문제로 알 수 있는 점
- 문제가 쉬워진게 아니라 문제를 푸는 사람의 실력이 올라간 것 입니다. - Key Point
= : like
substr : mid
'web_security > Lord Of SQL' 카테고리의 다른 글
[LOS : Lord Of SQL Injection] 13번 Bugbear 문제 풀이 (0) | 2022.06.04 |
---|---|
[LOS : Lord Of SQL Injection] 12번 Darknight 문제 풀이 (0) | 2022.06.04 |
[LOS : Lord Of SQL Injection] 10번 Skeleton 문제 풀이 (0) | 2022.06.04 |
[LOS : Lord Of SQL Injection] 9번 Vampire 문제 풀이 (0) | 2022.06.04 |
[LOS : Lord Of SQL Injection] 8번 Troll 문제 풀이 (0) | 2022.06.04 |