개인정보는 쿠키에 저장한다.
그런데 공격자가 쿠키 탈취를 시도한다. -> 쿠키에 대한 공격 중 가장 대중적인 것이 세션 하이재킹
HTTP Only Cookies
쿠키는 클라이언트에서 자바스크립트로 조회할 수 있기 때문에, 해키들은 js로 쿠키를 가로채고자 시도한다.
XSS에서 location.href=""+document.cookie
이런 xss 취약점을 해결하는 것은 브라우저에서 쿠키에 접근할 수 없도록 제한하는 것이다.
이 역할을 하는 것이 바로 HTTP Only Cookie이다.
Set-Cookie: key:value; path=/; HttpOnly
HttpOnly를 추가함으로써 http only cookie가 활성화되며, XSS 공격이 차단된다.
브라우저에서 해당 쿠키로 접근할 수 없게 되지만, 쿠키에 포함된 정보의 대부분이 브라우저에서 접근할 필요가 없기 때문에 http only cookie는 적용하는 것이 좋다.
http only cookie를 적용하면 client에서 javascript를 통한 쿠키 탈취 문제를 예방할 수 있다.
하지만 js가 아닌 네트워크를 감청해서 쿠키를 가로챌 수도 있다.
Secure Cookie
https를 사용하면 쿠키 또한 암호화되어 전송된다.
Set-Cookie: key=value; path=/; secure
브라우저는 https가 아닌 통신에서는 쿠키를 전송하지 않는다.
댓글