사전 목록
XSS

크로스사이트 스크립팅

크로스사이트 스크립팅은 신뢰된 웹사이트가 공격자가 조작한 콘텐츠를 이용자의 브라우저에서 실행하게 만드는 웹 취약점입니다.

#XSS#크로스사이트 스크립팅

크로스사이트 스크립팅

XSS는 Cross-Site Scripting의 약칭입니다. 게시글, 검색어, 프로필, 오류 메시지, URL 조각 등 공격자가 통제한 값이 적절한 출력 인코딩과 처리 없이 HTML·자바스크립트 문맥에 삽입될 때 발생합니다.

저장형 XSS는 악성 입력이 서버에 저장되어 여러 이용자에게 반복 실행됩니다. 반사형 XSS는 요청값이 즉시 응답에 반영됩니다. DOM 기반 XSS는 브라우저 스크립트가 위험한 방식으로 입력을 DOM에 삽입할 때 발생합니다.

핵심 특성

실행 위치이용자의 브라우저에서 신뢰된 사이트 권한으로 실행됩니다.

주요 유형저장형, 반사형, DOM 기반 유형이 있습니다.

핵심 방어문맥별 출력 인코딩, 안전한 DOM API, 검증된 정화, CSP가 필요합니다.

사용 맥락과 작동 원리

브라우저는 동일 출처 정책에 따라 신뢰된 사이트의 스크립트에 쿠키와 페이지 데이터 접근 권한을 부여합니다. XSS 코드는 이 권한을 이용해 화면을 바꾸고 사용자의 행동을 관찰하거나 요청을 보낼 수 있습니다.

HttpOnly 쿠키는 스크립트의 쿠키 원문 읽기를 제한합니다. XSS 코드가 사용자 브라우저에서 인증된 요청을 보내거나 가짜 입력창을 표시하는 위험은 남을 수 있습니다.

유출·오용 시 위험

XSS는 계정 사칭, 개인정보 노출, 결제·설정 변경, 피싱 화면 삽입, 악성 사이트 이동으로 이어질 수 있습니다. 관리자 화면에서 실행되면 더 높은 권한이 악용될 수 있습니다.

저장형 XSS는 많은 이용자에게 장기간 영향을 줄 수 있습니다. 게시물 삭제만으로 캐시, 알림, 이메일 렌더링 등 다른 출력 경로의 문제가 해결되는지 확인해야 합니다.

사건 공지에서 확인할 항목

개인이 취할 조치

조직의 보호조치

혼동하기 쉬운 개념

XSS는 브라우저에서 공격자 콘텐츠가 실행되는 문제입니다. CSRF는 인증된 브라우저가 원하지 않는 요청을 보내도록 유도합니다. SQL 인젝션데이터베이스 질의 구조를 변경합니다. HTML 삽입은 스크립트 실행이 없어도 화면 위조와 피싱에 사용될 수 있습니다.

공식 참고자료

OWASP — XSS 방어

OWASP — 세션 관리 지침

OWASP Top 10 관련 보안 지침