Cross-Site Script (XSS)

2025. 5. 2. 18:12·Web/Web Hacking Techniques
목차
  1. XSS란 무엇인가?
  2. 왜 발생 하는가?
  3. 공격 방식
  4. XSS를 성공 시키기 위한 JavaScript 실행 방법
  5. XSS 공격의 유형
  6. 1. Dom-Based XSS
  7. 2. Reflected XSS
  8. 3. Stored Based XSS

XSS란 무엇인가?

동적인 처리가 이루어지는 웹 어플리케이션에서 공격자에 의해 조작된 악의적인 스크립트를 사용하여, 비정상적인 행위를 강제하게 하도록 하는 공격이며, 일반적으로 브라우저 측 스크립트 형태의 악성 코드를 다른 최종 사용자에게 보낼 때 발생한다. XSS 취약점은 OWASP TOP10에 매번 등록되는 취약점이다.

왜 발생 하는가?

  • 사용자의 입력값이 웹 브라우저상에 노출되는 구간에서 사용자의 입력값을 검증하지 않고 신뢰하게되어, 각각의 XSS 공격 기법에 의해 웹 브라우저, 웹 애플리케이션, 백엔드 단에서 악성스크립트가 실행되고 이를 통해 쿠키, 세션 토큰 등 기타 민감한 정보에 엑세스 할 수 있게 되며, 이 외에도 다양한 공격 기법으로 연계될 수 있게 된다.

공격 방식

  • 다양한 스크립트 언어가 있지만 현재 웹 상에서 대부분 독과점으로 사용되고 있는 JavaScript를 통해 공격이 이루어진다.
  • 대부분 XSS 취약점을 식별 및 증명 하기 위해 alert, prompt, print등과 같은 함수를 사용하여 확인한다.
  • 제3자가 볼 수 있는 환경에서 사용자의 입력값을 출력하거나, 입력값을 DataBases에 저장하며, 제3자가 입력값의 동적 컨텐츠를 볼 수 있다면 XSS 취약점을 테스트 해볼 수 있는 공격 표면이 된다.

XSS를 성공 시키기 위한 JavaScript 실행 방법

xss 를 성공 시키기 위해 사용되는 코드는 매우 다양하며, 각각의 조합과 필터링 우회를 위해 여러 조합을 통해 사용된다. 아래 4가지 방법은 가장 기본적인 xss 를 성공 시키기 위한 방법이다.

  1. <script>alert(1)</script>태를 통한 방법
  2. 스크립트 태그가 제헌될 경우 HTML 태그의 이벤트 핸들러를 통한 함수 실행
  3. EX) <img src=’’ onerror=alert(1)>, <input type=”button” onclick=alert(1)>, <svg onload=”alert(1)”> <svg><animatetransform onbegin=alert(1)>
  4. CSP 우회가 가능한 외부파일을 통한 자바스크립트 실행
  5. EX) <scirpt src=”javascript.js”<—경로></script>
  6. URL (Redirection) 이동 기능이 존재할 경우의 자바스크립트 실행
  7. EX) <a href=”javascript:alert(1)”>Hack</a>

XSS 공격의 유형

1. Dom-Based XSS

https://hg2lee.tistory.com/entry/Dom-Based-XSS#DOM-Based-XSS%EB%9E%80%3F-1

 

Dom-Based-XSS

DOM-Based-XSS란?DOM-Based-XSS는 Reflected xss와 유사하지만, 엄연히 다르다. 이 둘의 차이점은 DOM-Based의 경우 Relected 와 달리 입력 값을 통해 동적 웹 페이지를 구성 및 악성 스크립트가 실행되는 구간이

hg2lee.tistory.com

2. Reflected XSS

https://hg2lee.tistory.com/entry/Reflected-XSS

 

Reflected XSS

Reflected XSS란 무엇인가?Reflected XSS는 반사형 XSS로 사용자의 입력값을 받아 동적 페이지를 구성하는 환경에서 발생한다. DOM Based XSS 와의 큰 차이점은 DOM Based XSS는 브라우저단에서 입력값을 받아

hg2lee.tistory.com

3. Stored Based XSS

https://hg2lee.tistory.com/entry/Stored-Based-XSS

 

Stored-Based-XSS

Stored XSS란 무엇인가?Stored XSS는 사용자의 입력 값을 전달 받아 서버 데이터베이스에 저장한 후 해당 저장 값을 불러와 동적 페이지를 구성할 때 발생하는 취약점이다. 보통 게시글이나, 댓글 기

hg2lee.tistory.com

 

저작자표시 (새창열림)

'Web > Web Hacking Techniques' 카테고리의 다른 글

ZIP Slip Vulnerability  (0) 2025.05.06
Deserialize_Vulnability for Python_Pickle  (0) 2025.05.06
Stored-Based-XSS  (0) 2025.05.02
Reflected XSS  (0) 2025.05.02
Dom-Based-XSS  (0) 2025.05.02
  1. XSS란 무엇인가?
  2. 왜 발생 하는가?
  3. 공격 방식
  4. XSS를 성공 시키기 위한 JavaScript 실행 방법
  5. XSS 공격의 유형
  6. 1. Dom-Based XSS
  7. 2. Reflected XSS
  8. 3. Stored Based XSS
'Web/Web Hacking Techniques' 카테고리의 다른 글
  • ZIP Slip Vulnerability
  • Deserialize_Vulnability for Python_Pickle
  • Stored-Based-XSS
  • Reflected XSS
g2h
g2h
  • g2h
    감자 텃밭
    g2h
  • 전체
    오늘
    어제
    • 분류 전체보기 (144)
      • Network (4)
      • Web (31)
        • Web Hacking Techniques (31)
      • System (32)
        • Tips (11)
        • System Hacking Techniques (21)
      • Pentest (14)
        • Pentest (14)
      • WriteUP (47)
        • sec (0)
      • 도구|Tools (12)
      • Security Issue (3)
      • 1-Day-Analysis (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    NOSQL
    DoM
    해킹툴
    스캐닝
    스캔
    Los
    skt 해킹
    권한상승
    load of sqlinjection
    Kioptrix
    해킹
    dom based xss
    내부침투
    Reflected XSS
    web hacking
    sql
    Encoding
    해킹도구
    모의해킹
    XSS
    Metasploit
    vulnability
    nosql injection
    취약점 스캔
    cross side script
    침투테스트
    취약점
    CTF
    Hacking
    SQL Injection
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
g2h
Cross-Site Script (XSS)

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.