test.txt는 잘 다운받아지는데 flag.docx는 Access Denied가 뜬다.
<html>
<head>
<title>Challenge 42</title>
</head>
<body>
<table border=1 align=center width=300>
<tr><td width=50>no</td><td>subject</td><td>file</td></tr>
<tr><td>2</td><td>test</td><td>test.txt [<a href=?down=dGVzdC50eHQ=>download</a>]</tr>
<tr><td>1</td><td>read me</td><td>flag.docx [<a href=javascript:alert("Access%20Denied")>download</a>]</td></tr>
</table>
</body>
</html>
페이지의 소스 코드를 보면 test.txt를 다운받을 때 down
변수에 dGVzdC50eHQ=
라는 값을 넣어 전송하는 것을 알 수 있다.
이 값은 파일 이름인 test.txt
를 base64 인코딩한 문자열이다.
따라서 flag.docx
를 base64 인코딩하여 down
변수에 담아 전송하면 플래그를 획득할 수 있을 것이다.
https://webhacking.kr/challenge/web-20/?down=ZmxhZy5kb2N4
728x90