[TIL] 2020. 07. 02. Browser_Security
오늘 배운 것
Browser Security
1. CORS(Cross Origin Resource Sharing)
- CORS는 도메인 또는 포트에서 다른 서버의 리소스을 요청할 경우 이를 허용하는 매커니즘을 말한다.
- 따라서 같은 서버의 리소스를 요청할 경우는 CORS 이슈가 발생하지 않는다.
- 다른 서버의 리소스를 요청할 때 비로서 CORS 이슈가 발생하며 이 요청을 받아들일 지 말지에 대한 규칙을 정의하고 있다.
- Simple requests, Preflighted requests, Requests with credentials와 같이 요청하는 상황에 따른 규칙이 각각 정의되어 있으므로, 자세한 내용은 [MDN CORS 문서](Requests with credentials)를 참조하자
2. XSS(Cross Site Scripting)
- XSS란 웹 해킹 공격 기법 중 하나
- 공격의 희생자는 어플리케이션이 아닌 사용자이다.
- XSS 공격은 JavaScript 코드의 실행을 통해 이루어진다.
- 해커가 서버에 원하는 바를 실현할 수 있는 자바스크립트 코드를 저장해놓는다.
- 사용자는 이 사실을 알지 못하고 서버에서 리소스를 받아 실행시킨다.
- 해커가 저장해놓은 코드가 실행되며 공격이 성공한다.
3. CSRF(Cross Site Request Forgery)
- CSRF란 웹 해킹 공격 기법 중 하나
- 사용자(희생자)가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 만드는 공격이다.
- 사용자가 정상적으로 특정 사이트에 로그인을 완료한다.
- 그 와중에 어떤 링크를 타고 해커의 사이트에 방문한다.
- 그 순간 해커의 사이트에 숨겨져있던 코드가 실행된다.
- 사용자가 접속하고 있던 사이트에서 해커가 의도한 행위들을 요청하게 된다.
- 사용자가 접속하고 있던 사이트에서는 이것이 사용자가 요청한 것이라 믿고 해당 요청을 승인한다.
- 공격이 성공한다.