article thumbnail image
Published 2021. 5. 14. 23:44

들어가자마자 Access_Denied라는 Alert창을 띄우는 불친절한 행동을 하는 페이지이다.
확인 버튼을 누르면 Webhacking.kr의 인덱스 사이트로 리다이렉션된다.

 

소스코드를 보고 싶어서 Alert창이 띄어지기 전에 F12을 눌려서 개발자 도구를 열려고 하니, 안먹히고 Alert창이 띄어진다.

 

나는 여기서 어떻게 저 Alert창이 안띄어지게 할 것인가? 라는 고민을 하였다.

 

여러 방법 중 생각 난 것은 브라우저의 옵션 중 Javascript 설정을 차단하는 것과 Burp Suite이라는 프록시 툴을 사용할 지를 고민하였다.

 

이미 노트북에 설치되어 있는 Burp Suite를 사용하기로 하였다.

 

옛날 Burp Suite은 브라우저에서 프록시 사용을 켜주고, 포트 설정을 해줘야 했는데 업데이트가 되면서 Burp Suite 자체 내에서 크로미움을 제공하여 그런 귀찮음 중을 해결해주었다.

 

잡설은 그만두고, HTTP 응답을 살펴보겠다.

HTTP/1.1 200 OK
Date: Tue, 27 Apr 2021 17:52:33 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Vary: Accept-Encoding
Content-Length: 184
Connection: close
Content-Type: text/html; charset=UTF-8

<html>
<head>
<title>Challenge 15</title>
</head>
<body>
<script>
  alert("Access_Denied");
  location.href='/';
  document.write("<a href=?getFlag>[Get Flag]</a>");
</script>
</body>

해더에는 볼만한 내용은 없으며, Body를 살펴보니 Alert와 Location의 코드가 보였다.
그 다음으로 DOM에 A 태그를 삽입하는 코드를 살펴보니, 문제 페이지 URL에 getFlag라고 보내면 Flag를 주는 것 같다.

확인을 위해 방해가 되는 Alert와 Location 코드를 지우고 브라우저에 넘겼다.

 

getFlag를 넘겨주는 A태그나 출력되는 것을 확인하였고, 클릭하였다.

 

옛날에 풀어버린 문제라서 Flag값은 나오지 않았지만, Flag까지 도달하는데 성공하였다. 

'워게임 > webhacking.kr' 카테고리의 다른 글

Old - 18 Write Up  (0) 2021.05.15
Old - 17 Write Up  (0) 2021.05.14
Old - 16 Write Up  (0) 2021.05.14
Old - 14 Write Up  (0) 2021.05.14
Old - 6 Write Up  (0) 2021.05.14
복사했습니다!