2024. 6. 25. 23:33ㆍ정보보안 및 해킹/Normaltic's 취업반 강의
XSS
Cross Site Scripting
클라이언트 측 스크립트(이용자 측 스크립트)를 삽입하는 공격
피해자는 이용자, 즉 클라이언트가 됨
PROCESS
1. 작성한 데이터가 화면에 출력되는지 확인
작성한 데이터가 화면에 출력되지 않으면 해당 취약점은 소용 없다
2. 특수문자 체크 < ' " >
공격용 스크립트에 사용할 특수문자가 필터링 되고있는지 확인한다
3. 스크립트 삽입
script, alert(1) 등 필터링 되고있는지 확인하거나 쿠키를 가져오는 등 여러가지 방법으로 스크립트를 삽입한다
종류
Stored XSS
사용 조건
공격자(클라이언트)가 삽입하는 스크립트가 서버에 저장되는 곳
필수 요소
공격자 (클라이언트) 가 삽입하는 스크립트가 서버에 저장되고, 동시에 화면에 혹은 Burp Suite에 해당 데이터가 출력되어야 한다
특징
서버에 저장되기 때문에 흔적이 남음
이용하는 이용자 모두가 해당 공격 코드를 읽게 될 수 있기 때문에 광범위한 공격이 가능
Reflected XSS
사용 조건
공격자(클라이언트)가 입력하는 데이터가 그대로 출력되는 곳
필수 요소
공격자 (클라이언트) 가 입력하는 데이터가 Burp Suite의 해당 Response에 그대로 출력되어야 함
GET 메서드 여야 함 -> 해당 링크를 사용하여 이용자에게 링크를 뿌려 사용하는 공격이기 때문
특징
링크를 이용한 공격이기 때문에 흔적이 남지 않음
특정 인물에게 링크를 보내므로 타겟팅을 한 공격
DOM Based XSS
사용 조건
공격자(클라이언트)가 입력하는 데이터가 그대로 출력되거나, 혹은 안되거나 Response에서 재조립되는 곳
필수 요소
공격자 (클라이언트) 가 입력하는 데이터가 Response에서 document.srite나 innerHTML등을 통해 재조립된다
GET 메서드 여야 함 -> 해당 링크를 사용하여 이용자에게 링크를 뿌려 사용하는 공격이기 때문
특징
입력한 데이터를 그대로 반사할 수 있기 때문에 Reflected XSS 공격처럼 보일 수 있음
POC : Proof Of Concept
어느 곳에 취약점이 존재하는지 보여주는 용도로 사용
보통 alert(1), prompt(1), console.log('xss') 등 사용
'정보보안 및 해킹 > Normaltic's 취업반 강의' 카테고리의 다른 글
[5 WEEK] SQL Injection (0) | 2024.06.07 |
---|---|
[4 WEEK] Burp Suite 기능 (0) | 2024.06.06 |
[3 WEEK] LOGIN, Cookie, Session, Session ID (0) | 2024.06.06 |
[2 WEEK] Database의 구조, SQL Syntax (0) | 2024.06.06 |
[1 WEEK] Web Server, WAS, DB (0) | 2024.06.06 |