면접

3

yyyy7246 2023. 1. 18. 23:18

1. SOP가 뭘까요?

 

SOP는 Same Origin Policy의 약자로 동일 출처 정책을 의미합니다.

예를 들어서 내가 A의 사이트를 로그인하였는데 B라는 서버에서 내 쿠키값과 토큰을 요청하여 탈취할 수 있다면  보안적으로 매우 위험합니다. 그래서 이것을 막기 위한 것이 SOP입니다. 

 

웹 브라우저에서 동작하는 프로그램은 로딩된 위치에 있는 리소스만 접근 할 수 있다는 정책인데 예처럼 A 사이트에 로그인을 하였으면 A 사이트 내부에서만 요청을 주고 받을 수 있다는 내용입니다.

 

그렇다면 Origin의 경계에 대해서 궁금할텐데요. host, protocol, port가 모두 같아야만 sop의 조건에 적합하다고 할 수 있습니다.

예시로

www.naver.com  / www.comic.naver.com  은 host로 인한 cross(교차)출처이고 

https://www.naver.com / http://www.naver.com 은 protocol로 인한 교차 출처이고

http://www.naver.com:80 / http://www.naver.com:8080 은 포트로 인한 교차 출처입니다. 

 

이러한 SOP 덕분에 CSRF나 XSS에 안전할 수 있습니다.