본문 바로가기

보안공부/SolveMe 풀이

SolveMe Bad compare 풀이 - Hex

SolveMe Bad compare 풀이

Hex ]


오늘은 Bad compare 문제를 풀어보자.


제공해준 링크에 들어가니 다음과 같은 PHP 코드를 하나 준다.

<?php
    error_reporting(0);
    require __DIR__.'/lib.php';

    if(isset($_GET['answer'])){

        if($_GET['answer'] === 'роВхУъесЧМ'){
            echo $flag;
        }else{
            echo 'Wrong answer';
        }

        echo '<hr>';
    }

    highlight_file(__FILE__);

GET 메소드를 통해 전달받은 answer값이 роВхУъесЧМ라는 값과 자료형이 일치해야한다.


하지만 위 값은 ascii에 존재하지 않는다. 따라서 같은 값으로 전달해줘도 받지 못한다.


그래서 피들러로 이 페이지의 코드를 16진수로 확인해 보았더니 F0 EE C2 F5 D3 FA E5 F1 D7 CC 라는 값이 나왔다.


따라서 이 값을 이해할 수 있도록 %를 붙혀 %F0%EE%C2%F5%D3%FA%E5%F1%D7%CC 라는 값을 answer로 전달해 주었더니 정답이 나왔다.



SolveMe Bad compare 클리어!