XSS(Cross-Site Scripting)

XSS란 무엇인가?


동적 처리가 이루어지는 웹 애플리케이션에 대해 악의적인 스크립트를 삽입하여 사용자에게 비정상적인 행위를 강제적으로 유도하는 공격이다.


공격 유형


  • 피싱
    • 악의적인 사용자가 유도한 사이트로 리다이렉션 할 수 있다.
  • 악성 코드 유포
    • 강제로 악성 코드를 다운로드 할 수 있다.
    • 악성 코드를 실행까지 하려면 브라우저 취약점이나 플러그인 취약점으로 연계가 가능해야 한다.
  • 웹 브라우저 공격
    • 키로깅, 사회 공학 기법 등 여러 공격을 수행할 수 있다.
  • 세션 하이재킹
    • 사용자의 세션을 탈취 후 재사용하여 권한을 탈취할 수 있다.
  • CSRF
    • 악성 스크립트에 의해 공격자가 의도한 행위를 피해자가 수행할 수 있다.


왜 자바스크립트를 사용할까?


클라이언트를 대상으로 하는 공격이다. 웹 브라우저는 기본적으로 자바스크립트를 실행할 수 있는 환경을 제공하며, 자바스크립트는 웹 페이지와 사용자 상호작용을 제어한다. 그러므로 공격자가 악성 스크립트를 삽입하면 비정상행위를 발생시킬 수 있다.


공격 기법의 종류


  1. DOM based XSS
  2. Reflected XSS
  3. Stored XSS

Published by