개발자의 끄적끄적

[브라우저] 수정 - pg결제 로그인 풀림 - chrome 80 버전 SameSite CORS 대응 [펌] 본문

개발

[브라우저] 수정 - pg결제 로그인 풀림 - chrome 80 버전 SameSite CORS 대응 [펌]

효벨 2020. 9. 12. 02:00
728x90
반응형

[브라우저] 수정 - pg결제 로그인 풀림 - chrome 80 버전 SameSite CORS 대응 [펌]

 

2월4일 업데이트 된다는 chrome 버전 80 에서 쿠키 정책이 크게 바뀝니다.
타 도메인에서 방문시 브라우저가 서버로 쿠키를 보내지 않게 되어
타 도메인에서
iframe src=내도메인, form action=내도메인
등등의 경우에 쿠키를 인식할 수 없습니다.

브라우저가 보내지 않았을 뿐 없어진것은 아니라서,
인식 못한 페이지에서 document.cookie 를 조회하면 조회되고,

session_start() 하기 전에
$_COOKIE['PHPSESSID'] 가 없을 경우
$_GET, $_POST 값으로 form 태그를 조합하여 자기 자신을 재호출 하는 등의 꼼수를 쓸 수도 있겠으나
history 가 하나 더 생기게 되고 생각 못한 다른 오류가 발생할 수 있으므로,
CORS 보안정책이 느슨해지게 되는 것이지만 PHPSESSID 를 인식할 수 있게 쿠키를 고쳐줍니다.

https://xeno.work/samesite.html

추가)
쿠키가 이미 있는경우 쿠키를 새로 굽지 않기 때문에 로그인시 적용할
session_regenerate_id_samesite() 를 추가로 만들었습니다.

추가2)
쿠키를 건드리지 않고 session_start() 하기 전에 form submit 으로 재호출해서 쿠키를 살리는 방법을 추가했습니다.

License: Public Domain

 

 

출처 : www.phpschool.com/link/tipntech/82446

반응형
Comments