ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Dreamhack - Type c-j
    wargame/Dreamhack 2025. 5. 4. 23:03

    [LEVEL 1 - Type c-j - web]

     

     

     

    문제 환경에 접속하면 위와 같이 나온다.

     

     

     

     

    문제 파일을 다운로드 받으면 위와 같이 check.php 코드가 있다.

    여기서 알 수 있는 사실은 pw는 8자리이며, 1이라는 문자열을 sha1으로 암호화한 값이다.

    반면 id는 랜덤 문자열 10자리인데, 자세히 보면 (int)$input_id == $id 이 조건문에서 input_id를 가져와 int 형변환을 해주고 있는 것을 볼 수 있다.

    php 비교 연산자 취약점에 의해 input_id가 문자열로 시작하면 0이 되고, 숫자가 먼저 오면 먼저 온 숫자까지의 값으로 변환한다.

    따라서 id는 0으로 10자리를 모두 채워주면 되는 것이다.

     

     

     

     

    dreamhack cyberchef 페이지에서 1을 sha1으로 암호화한 결과값은 위와 같다.

    pw는 8자리이므로, pw는 356a192b인 것이다.

     

     

     

     

    앞서 구한 id와 pw을 각각 넣어주고 제출을 누른다.

     

     

     

     

    ID pass 라는 문구와 함께 플래그 값이 출력된다.

     

     

     

     

    플래그를 획득했다!

     

    'wargame > Dreamhack' 카테고리의 다른 글

    Dreamhack - baby-union  (1) 2025.06.15
    Dreamhack - what-is-my-ip  (0) 2025.05.04
    Dreamhack - out of money  (0) 2025.04.27
    Dreamhack - command-injection-chatgpt  (0) 2025.04.27
    Dreamhack - simple_sqli_chatgpt  (0) 2025.04.21
Designed by Tistory.