728x90
반응형
SMALL
문제정보
더보기
php로 작성된 Back Office 서비스입니다.
LFI 취약점을 이용해 플래그를 획득하세요. 플래그는 /var/www/uploads/flag.php에 있습니다.
Keypoint
더보기
php wrapper
메인화면
위 문제는 LFI 문제이다.
그중 php wrapper를 이용하고 php:// 필터를 사용할것이다.
기본적인 구문은 다음과 같다.
php://filter/read=convert.base64-encode/resource={resource}
resource에는 공격하고자 하는 파일. 즉, 여기서는 /var/www/uploads/flag 를 입력하면 된다.
이제 위 페이지에서 LFI 취약점이 있는 위치를 찾아보면 총 2군데가 있다.
첫번째는 index 페이지에서 main.php 페이지를 불러오는 곳이고,
두번째는 view 페이지이다.
view 페이지에서는 'preg_match' 함수를 사용하여 'flag'문자열 또는 ':' 을 필터링 하기 때문에
첫번째 포인트에서 공격을 시도한다.
구문은 다음과 같다.
" ?page=php://filter/read=convert.base64-encode/resource=/var/www/uploads/flag "
그러면 위와 같이 문자열이 뜨는데 base64 문자열이고 해당 문자열을 디코딩하면 다음과 같다.
<?php
$flag = 'DH{bb9db1f303cacf0f3c91e0abca1221ff}';
?>
can you see $flag?
FLAG
더보기
DH{bb9db1f303cacf0f3c91e0abca1221ff}
728x90
반응형
LIST
'DreamHack > web' 카테고리의 다른 글
[wargame] command-injection-1 (0) | 2023.07.30 |
---|---|
[wargame] web-misconf-1 (0) | 2023.07.24 |
[wargame] Carve Party (0) | 2023.07.23 |
[wargame] mongoboard (0) | 2023.07.18 |
[wargame] session (0) | 2023.07.17 |