반응형
XSS(Cross-Site Scripting)란?
먼저, XSS란 '유저가 웹 페이지에 접속하는 것으로 올바르지 않은 스크립트가 실행되는 취약점 또는 공격 방법'을 말합니다.
사이트 간 스크립팅으로 웹 앱에서 많이 나타나는 취약점의 하나이며, 웹 사이트의 관리자가 아닌 일반 유저가 웹 페이지에 악성 스크립트를 삽입할 수 있는 취약점입니다.
출처: https://www.nascenia.com/why-cross-site-scripting-is-detrimental-and-how-to-prevent/
XSS에 의한 피해
공격자에 의해 올바르지 않은 로그인 유저의 Cookie가 공격자에 손에 넘어가는 것으로 Cookie 내에 있는 유저의 세션 정보가 공격자에 의해 사용되는 것으로, 유저를 사칭하여 서비스를 이용할 수 있는 위험성이 있습니다.
XSS를 방지하는 방법
1. 유저가 입력한 값의 검증을 서버 측에서 수행합니다.
2. 유저가 입력한 값 중에 HTML 코드로 인식될 수 있는 특수문자를 일반 문자로 바꿔서 처리합니다.
웹 페이지를 출력할 때, HTML 코드로 인식될 수 있는 문자열(예를 들면 '<', '&' 등)을 일반 문자열로 바꿔서 출력하도록 하며, 유저가 입력한 값뿐만 아니라 외부 시스템에서 온 데이터 등도 웹 페이지에 출력 대상이 되는 것이라면 반드시 처리해주는 것이 중요합니다.
반응형
'프로그래밍 > 웹개발(WEB)' 카테고리의 다른 글
렌더링 이란? (0) | 2021.08.23 |
---|---|
CSRF(Cross-Site Request Forgery)는 무엇일까요? (0) | 2021.08.12 |
스프링(Spring)에서 크로스도메인(CORS) 이슈 해결 (0) | 2021.08.10 |
CORS(Cross-Origin Resource Sharing)이란? (0) | 2021.08.09 |
submit 중복 클릭 막기 (6) | 2021.07.09 |
댓글