문제풀이

[Dreamhack] php7cmp4re 문제풀이

suuuullloc 2024. 2. 27. 22:42

# 문제링크 : https://dreamhack.io/wargame/challenges/1113

 

php7cmp4re

Description php 7.4로 작성된 페이지입니다. 알맞은 Input 값을 입력하고 플래그를 획득하세요. 플래그 형식은 DH{} 입니다.

dreamhack.io


 

웹페이지

 

문제 파일

 

흠... 코드들을 먼저 살펴보자. index.php랑 flag.php에서는 단서가 될만한 정보는 없었고 check.php에서 단서를 찾아볼 수 있었다.

 

이 부분을 살펴보면 index1과 index2에 어떤 값을 넣어야 하는지 알 수 있다. 둘 다 맞는 값을 입력하면 flag가 출력되고 아닐시 Good try.나 Try again.이 출력된다.

index1과 index2에 들어가야 하는 값들의 조건은 아래와 같다.

  • $input_1의 길이가 4보다 작은지 확인한다.
  • $input_1이 "8"보다 작고 "7.A"보다 작으며 "7.9"보다 큰지 확인한다.
  • $input_2의 길이가 1보다 크고 3보다 작은지 확인한다.
  • $input_2가 74보다 작고 "74"보다 큰지 확인한다.

위 조건을 따르게되면 input1에는 7.: ~ 7.@이 들어갈 수 있고 input2에는 7: ~ ...가 들어갈 수 있다. 아스키 문자가 들어가야 하고 input2의 조건을 보면 숫자 74보다는 작고 문자열 74보다는 커야하기 때문에 다음과 같은 해석이 가능하다.

 

우선 틀린값을 넣어보자.

실제로 아무값이나 넣어보면 이렇게 뜬다.

 

이 다음 input1에는 7.:을 넣고 input2에는 7:를 넣어보자.

플래그가 뜨는 걸 볼 수 있다.

 

문제 해결!