[Dreamhack 드림핵] php7cmp4re WriteUp

2024. 1. 31. 16:27Hacking/WebHacking Wargame Writeup

문제 링크

https://dreamhack.io/wargame/challenges/1113

 

php7cmp4re

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

dreamhack.io

 

문제

풀이

이런 화면이 처음에 등장하는데, 여기에 무슨 글자를 넣을지 알려면 코드를 분석해야하므로 php 코드를 살펴보았다. 

이런 조건문이 한 단락 나오는데, 이 조건문에 맞게 인풋 값을 입력해주면 된다.

1) input_1과 input_2에는 빈칸만 아니면 모든 값이 들어갈 수 있다.

2) input_1의 길이가 4 미만이어야 한다.

3) input_1이 아스키코드 8("8"이라 하였으므로 여기선 숫자 8이 아니라 아스키 코드 8로 해석이 된다) 이하 '이면서(&&)' 7.A 초과 (&&) 7.9미만

4) input_2의 길이가 1보다 크고 3미만 = 길이 값이 2

5) input_2의 값이 숫자 74보단 작지만 아스키코드 74보단 커야한다(여기서도 "74"라고 했으므로 숫자가 아니라 문자값이라는 것을 알 수 있다.)

이 다섯가지 조건을 충족하는 입력값으로 아스키코드 표값을 사용한다. 

input_1에는 7.9보다 높은 값을 입력 -> 7.90은 자릿수 초과 -> 따라서 아스키코드 표에서 90을 나타내는 :을 붙여 7.:을 넣음

input_2에는 두자리이면서 경계값인 74를 나타내는 아스키코드 J로 J0을 만들어 넣어주었다.