Ye0ngJae

[웹] DVWA를 이용한 XSS 실습 기초 본문

정보보안/웹

[웹] DVWA를 이용한 XSS 실습 기초

Ye0ngJae 2022. 3. 6. 01:16
728x90

개요

DVWA라는 페이지를 이용하여 간단한 Reflected XSS와 Stored XSS를 실습해 보도록 하겠습니다.

(Security level LOW 기준)

 

Reflected XSS

 

DVWA에 존재하는 Reflected XSS 실습 페이지를 활용해 간단한 Reflected XSS 공격 실습을 하겠습니다.

 

실습 창에는 이름을 물어보는 폼이 나오고 있고, 이 폼에 이름을 입력하면 아래 Hello (이름)으로 출력되는 것을 알 수 있습니다. 폼 안에 아래처럼 XSS가 실행될 때 XSS가 출력되는 간단한 스크립트를 입력해보도록 하겠습니다.

 

<script>alert('xss');</script>

 

 

위와 같이 스크립트가 실행되는 것을 알 수 있습니다. 우리는 방금 전 입력을 통해 스크립트를 실행할 수 있다는 것을 알았습니다. 이번에는 웹 페이지의 쿠키 값을 출력하는 스크립트를 작성해보도록 하겠습니다. 

 

<script>alert(document.cookie);</script>

 

쿠키 값을 출력하는 스크립트가 실행되며 쿠키의 값이 출력되었습니다.

 


 

Stored XSS

 

DVWA에 존재하는 Stored XSS 실습 페이지를 이용하여 간단한 Stored XSS 공격을 진행해 보겠습니다.

 

 

실습창에는 방명록이 구현되어 있고, 이름과 메시지를 남길 수 있게 되어있습니다. Stored XSS는 전에 설명했다시피 악성 스크립트가 포함된 게시물을 올릴 시 해당 게시물을 조회할 때 악성 스크립트가 실행되어 Stored XSS가 발생하게 됩니다.

 

위와 같이 XSS 발생 시 XSS라는 문자열이 출력되도록 하는 스크립트를 작성하여 보겠습니다. 

 

XSS가 성공적으로 발생하는 것을 볼 수 있습니다. 이번에는 쿠키 값을 출력하는 스크립트를 입력해보도록 하겠습니다. 

 

 

해당 게시물을 조회하면 성공적으로 XSS가 발생하여 쿠키 값이 출력되는 것을 확인할 수 있습니다. 

728x90