Skeleton Write-up

Ccr3t·2025년 7월 30일
0

Wargame

목록 보기
30/55

[Solved in under 1 minute]

밤 낮 바뀐거 어떻게 다시 돌려놓지 곧 첫 출근인데....
그래도 내가 게임을 별로 안 좋아해서 할게 이거밖에 없다..

다행인건가?

일단 가보자

<?php 
  include "./config.php"; 
  login_chk(); 
  $db = dbconnect(); 
  if(preg_match('/prob|_|\.|\(\)/i', $_GET[pw])) exit("No Hack ~_~"); 
  $query = "select id from prob_skeleton where id='guest' and pw='{$_GET[pw]}' and 1=0"; 
  echo "<hr>query : <strong>{$query}</strong><hr><br>"; 
  $result = @mysqli_fetch_array(mysqli_query($db,$query)); 
  if($result['id'] == 'admin') solve("skeleton"); 
  highlight_file(__FILE__); 
?>

일단 코드를 요약하자면 필터링은 그냥 없는 수준이고 id='guest'로 고정에 인자를 pw로 받는다.
여기서 특이한 점은 맨뒤에 구문에 and 1=0 이 들어가있다 항상 false로 만드는데 pw값 뒤에 받아서 별 의미 없어보인다.

id='admin'이면 풀리는 문제니 일단

1' or id=admin # 이런형태라고 생각한다.
그런데 필터링이 걸려있지 않아 따로 바꿀 필요없다.

바로 넣어보자

?pw=1' or id='admin' %23

뭐임 이거?

"화자의 의도와 같은것은?" 옛날 국어 지문이 생각 날 정도로 문제 제작자의 의도가 매우 궁금하다.

이건 뭐 설명할 것도 없다.
그만 알아보자.

LoS(Lord of SQL Injection) Skeleton Write-up

이상 보고 끝!

profile
웹해킹을 잘 못 하지만 좋아 하려고 노력하는 한 젊은이.

0개의 댓글