이번엔 색다른 화면이네요.

리눅스의 ls -al 명령처럼 파일 리스트가 작성되어있습니다.

아래 textarea에는 hello world라고 작성되어 있네요.

url을 보니 ?file=hello 라는 문구가 눈에 띕니다.

아마 hello.php파일의 내용이 아래 textarea에 출력되는것 같네요.

페이지의 코드를 보아도 특별한건 없어보이네요.

그럼 제일 의심이 가는 flag.php 파일을 열어보겠습니다.

플래그는 코드 안에 있다 라는 문구가 나오네요.. 아쉽게 우리가 원하는 flag는 바로 안보여주나봅니다.

이래저래 고민을 해보다가.... 문득 떠오르는게 있습니다.

잘 보면 php파일이죠? 그리고 우리는 php 파일의 코드를 보고싶은거고요.

저 파일의 코드를 꺼낼 수 있는 방법이 있습니다.

바로 php://filter 를 이용하는겁니다.

 

php에는 다양한 i/o 스트림이있습니다.

filter말고도 input, output, fd 등이 있지만, 지금 상황에서 최적은 filter입니다.

php://filter 의 효과는 말그대로 필터를 적용할 수 있다는 겁니다.

필터를 통해 base64로 코드를 인코딩해서 볼 수도 있다는거죠.

이를 통해 결과적으로 "실행되지 않고" 코드 자체가 출력됩니다.

바로 해보겠습니다.

php://filter/convert.base64-encode/resource=flag라는 페이로드를 붙여 넣었더니 위와 같이 base64로 인코딩 된 데이터가 나왔습니다.

사이트를 통해 디코딩 해보면...!

페이지에서 보이던 FLAG is in the code 말고도 진짜 플래그가 보입니다!

이걸 메인 페이지의 Auth로 가져가서 입력해주겠습니다.

 

짠! 해결 완료 입니다!

'보안 > 워게임 (웹 해킹)' 카테고리의 다른 글

웹 해킹 - ffuf 사용법  (0) 2026.02.22
Challenge - old-23 write up  (0) 2025.04.12
Challenge - old-27 write up  (0) 2025.04.09
Challenge - old-54 write up  (0) 2025.04.05
Challenge - old-38 write up  (0) 2025.04.05

+ Recent posts