✔︎ XSS(Cross Site Scripting)
- 웹 애플리케이션에서 일어나는 취약점으로 관리자가 아닌 권한이 없는 사용자가 웹 페이지에 스크립트를 삽입하는 공격 기법
- 세션 쿠키 탈취
- 입출력 값 검증, XSS 방어 라이브러리, 웹 방화벽을 통해 방어
참고
✔︎ CSRF(Cross Site Request Forgery)
- 인터넷 사용자(희생자)가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 만드는 공격
- 위조 요청을 전송하는 사이트에 희생자가 로그인한 상태 && 희생자가 공격자가 만든 피싱 사이트에 접속
- 권한 도용
- Referer 검증, CSRF 토큰, CAPTCHA 사용
참고
✔︎ CORS(Cross Origin Resource Sharing)
- SOP 위반시 CORS 에러 발생
- SOP(same origin policy, 동일 출처 정책)
출처가 동일한 프로토콜, 포트번호, 도메인에서만 자원을 사용가능 하도록 하는 보안정책
- CORS 에러
다른 도메인(프로토콜, 포트번호)을 가지는 서버로 요청이 갈 때 브라우저에서 발생하는 보안 정책
- 웹 사이트(프론트엔드)에서 다른 도메인으로 요청을 보낼 때 발생한다.
- 이를 해결하는 방법은 요청을 받는 백엔드에서 CORS를 허용할 출처들을 명시해두는 것이다.
- preflight request & main request
- preflight request
OPTIONS 메서드를 통해 다른 도메인의 리소스에 요청이 가능하진 확인한다.
- preflight response
응답 헤더의 Access-Control-Allow-Origin 에 허용하는 출처를 응답한다. 응답된 출처와 동일한 경우 main request를 진행할 수 있다.
참고