해당 문제로 들어가면 바로 알림창이 뜨는 것을 확인할 수 있다.
접근이 거부되었다.
해당 소스페이지를 확인하기위해 개발자도구를 눌러보았지만 통하지 않는다.
그래서 해당 URL 앞에 view-source: 를 붙여서 해당페이지의 소스코드를 확인한다.
상단과 같이 html 코드를 확인할 수 있다.
<script>
alert("Access_Denied");
location.href='/';
document.write("<a href=?getFlag>[Get Flag]</a>");
</script>
이 부분을 중점으로 해석한다.
<script>
alert("Access_Denied");
location.href='/';
"Access_Denied" 라는 문구와 함께 알림창이 뜨고 location.href 속성으로 / 루트 디렉터리로 돌아간다.
document.write("<a href=?getFlag>[Get Flag]</a>");
</script>
<a> 태그는 웹페이지나 문서를 링크 시키기 위한 태그이다.
<a> 함께 href 속성도 같이 사용되었다.
href 는 hypertext reference 약자로 연결할 주소를 지정하는 주소이다.
[Get Flag]라는 문자열에 ?getFlag 라는 주소를 링크 시킨 것을 출력하는 것이다.
하지만 앞선 코드에 의해 루트 디렉터리로 이동했기 때문에 해당 출력내용을 보지 못한다.
그래서 URL에 ?getFlag를 직접 대입하여 해당 주소로 이동한다.
해당 문제가 풀렸다는 것을 확인할 수 있다.
'프로젝트 > Webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] Challenge(old) 11번 문제 (0) | 2021.07.06 |
---|---|
[Webhacking.kr] Challenge(old) 10번 문제 (0) | 2021.07.06 |
[Webhacking.kr] Challenge(old) 14번 문제 (0) | 2021.07.05 |
[Webhacking.kr] Challenge(old) 8번 문제 (0) | 2021.07.05 |
[Webhacking.kr] Challenge(old) 7번 문제 (0) | 2021.07.05 |