728x90
👾 문제 설명
php로 작성된 Back Office 서비스입니다.
LFI 취약점을 이용해 플래그를 획득하세요. 플래그는 /var/www/uploads/flag.php에 있습니다.
📎 https://dreamhack.io/wargame/challenges/46
문제 파일을 다운로드 한다.
4개의 파일이 존재한다. 각 파일 당 주요 부분을 공유해보겠다.
접속 정보에 "서버 생성하기"를 눌러서 링크에 접속한다.
List의 flag.php를 클릭했더니 Permission denied 가 떴다.
🛼 view.php
소스코드를 확인해보니 flag 문자 자체를 필터링했다.
🛼 index.php
index.php에서 include 함수를 통해 main.php를 GET방식으로 불러온다.
include시 가장 많이 쓰이는 구문은 base64등으로 인코딩하여 php tag를 인코딩시켜 코드가 실행되지 않고 출력되도록하여 소스코드를 노출시키는 방법을 많이 쓴다고 한다.
index.php?page=php://filter/read=convert.base64-encode/resource=../uploads/flag
php://filter/ 통해서 /var/www/uploads/flag.php 파일을 읽어보았다.
이렇게 뜬다. 위에 네비바가 텍스트를 가리는데 일단 복사하겠다.
PD9waHAKCSRmbGFnID0gJ0RIe2JiOWRiMWYzMDNjYWNmMGYzYzkxZTBhYmNhMTIyMWZmfSc7Cj8+CmNhbiB5b3Ugc2VlICRmbGFnPw==
728x90
'공부 > 웹해킹 (Web hacking)' 카테고리의 다른 글
[Webhacking.kr | 웹해킹] g00gle1 (0) | 2024.05.09 |
---|---|
[드림핵 | 웹해킹] LEVEL 1: command-injection-chatgpt (1) | 2024.05.02 |
[Webhacking.kr | 웹해킹] old-20 (0) | 2024.04.30 |
[Webhacking.kr | 웹해킹] old-19 (0) | 2024.04.04 |
[Webhacking.kr | 웹해킹] old-18 (0) | 2024.03.28 |