Description

Category: Web

Source: webhacking.kr

Points: 150

Author: Jisoon Park(js00n.park)

Description:

Write-up

파일 목록과 텍스트가 주어진다. 소스 코드를 봐도 별다른게 없는데, 주소표시줄을 보면 file=hello라고 되어있다.

hello.txt 파일의 크기는 12 byte이고, 출력된 메세지도 (엔터까지 세면) 12 byte이므로, hello.txt 파일의 내용이 보여지는걸로 생각된다.

file=hello.txt가 아닌 것이 이상하지만, 일단 file=password.php를 넣어서 시도해보았을 때 형편좋게 password가 출력되어 주지는 않는다.

아래의 메세지 창이 hello.txt를 보여주는게 맞다면 전송한 file 문자열에 ".txt"를 붙여서 보여주는걸로 일단 가정해 보자.

password.php를 입력하면 "password.php.txt" 파일을 보여주려고 시도하게 되고, 실패하기 때문에 아마 기본인 hello.txt를 보여주는 것 같다.

php의 string concatenation을 무력화 하기 위해 password.php 뒤에 문자열 종료 문자(0x00)을 강제로 넣어보자.

file=password.php%00을 입력했을 때 정상적으로 password.php 파일의 내용이 표시되는 것을 볼 수 있다.

획득한 password를 auth 창에 등록하면 포인트를 획득할 수 있다.

'writeups > Web' 카테고리의 다른 글

webhacking.kr 032  (0) 2019.11.23
webhacking.kr 026  (0) 2019.11.23
webhacking.kr 015  (0) 2019.11.23
webhacking.kr 014  (0) 2019.11.23
webhacking.kr 004  (0) 2019.11.23

+ Recent posts