촉촉한초코칩

Dreamhack - php7cmp4re 본문

Study/Web Hacking

Dreamhack - php7cmp4re

햄친구베이컨 2024. 8. 7. 01:47

 

코드

if ($_SERVER["REQUEST_METHOD"] == "POST") {
      $input_1 = $_POST["input1"] ? $_POST["input1"] : "";
      $input_2 = $_POST["input2"] ? $_POST["input2"] : "";
      sleep(1);

      if($input_1 != "" && $input_2 != ""){
        if(strlen($input_1) < 4){
          if($input_1 < "8" && $input_1 < "7.A" && $input_1 > "7.9"){
            if(strlen($input_2) < 3 && strlen($input_2) > 1){
              if($input_2 < 74 && $input_2 > "74"){
                echo "</br></br></br><pre>FLAG\n";
                echo $flag;
                echo "</pre>";
              } else echo "<br><br><br><h4>Good try.</h4>";
            } else echo "<br><br><br><h4>Good try.</h4><br>";
          } else echo "<br><br><br><h4>Try again.</h4><br>";
        } else echo "<br><br><br><h4>Try again.</h4><br>";
      } else{
        echo '<br><br><br><h4>Fill the input box.</h4>';
      }
    }

 

input_1
- 4글자 이하 
- 8과 7.A보다 작고 7.9보다 커야 한다.
7.91으로 예측 

input_2
- 3글자 보다 작거나, 1글자 보다 커야 함 → 2글자 
- 숫자 74보다 작고 문자 74보다 커야 함 
73,72... 75, 76... 

input_2의 값을 찾는 게 너무 어렵다.... 

 

참고 : https://blog.naver.com/dlrkdtks135790/223403452549

input_1
- 7.9 ~ 7.A 사이 
- 7.9를 10진수로 변경 → 554657~554665 → 그 사이 숫자인 554658을 아스키 코드로 변경하면 7.:가 나온다.

input_2
- 숫자 74 초과, 문자 74 미만 → 10진수로 변경 → 74~5552 사이의 아스키코드로 변경하면 :;가 된다. 

 

드림핵 내의 풀이까지 추가 

php
- default_charset의 값을 따름 
- default_charset의 기본값은 utf-8이다. 

input_1
- 7.A ~ 7.9 사이의 숫자이므로 7.는 고정 
- 세번째 자리는 utf-8, hex 값 기준 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40가 해당됨 
- 이 값은 :, ;, <, =, >, ?, @가 된다. 

input_2
- 나눗셈 기호인 % : 2바이트
- % 기호를 숫자로 변환하면 숫자가 없으므로 0이 됨 → 첫번째 기준 부합
- %의 hex 값 : (utf-8 기준) c3 b7
  문자열 74의 hex 값 : (utf-8 기준) 37 34 → 두번째 기준 부합 
* 나눗셈 기호인 %는 아스키 표에는 없으나 input_2에 넣으면 잘 동작한다고 한다. 

'Study > Web Hacking' 카테고리의 다른 글

Dreamhack - error based sql injection  (0) 2024.08.15
Dreamhack - simple_sqli_chatgpt  (0) 2024.08.14
Dreamhack - XSS Filtering Bypass  (0) 2024.08.07
Dreamhack - php-1  (0) 2024.07.31
Dreamhack - simple-ssti  (0) 2024.07.31