-
NID_AUT와 NID_SES 쿠키를 이용한 네이버 로그인 처리Portfolio/인증과 크롤링 2018. 12. 21. 18:28728x90
네이버 웹툰 다운로더를 만들면서
19세 이상 인증이 필요한 웹툰을 다운로드를 구현하다가 막혔다.
로그인 처리가 되도록 해야하는데, ID 비밀번호를 입력하고 그걸 이용해서 로그인 처리를 할까도 생각해보았으나,
그리 좋은 방법은 아닌 것 같기도 하고, 네이버에서 세션을 어떻게 처리하고 있는지 확인해보기 위해서 확인도 해볼겸
네이버로 로그인 한 상태의 쿠키들을 확인하다가 NID_AUT와 NID_SES가 세션을 처리한다는 것을 알아내었다.
다음은 로그인 된 상태의 개발자도구에서 확인한 네이버의 쿠키이다.
위에서 확인할 사항은 NID_AUT, NID_SES의 쿠키값(Value)과 Domain이다.
현재 comic.naver.com 도메인으로 들어가 있는 상태이지만
위 두개의 쿠키는 comic.naver.com의 상위 도메인인 .naver.com으로 되어있다.
때문에 쿠키를 추가하거나, 코드를 작성할 때 위 사항을 이용하려면
- Domain 부분을 비워놓거나(이렇게 작성하면 현재 도메인인 comic.naver.com가 default로 들어간다.)
- comic.naver.com을 Domain에 집어넣거나
하면 안된다. 만약 .naver.com이 아닌 comic.naver.com이 도메인으로 들어가면 해당 쿠키를 집어넣어도 네이버에서 로그인된 것으로 처리하지 않는다.
아래는 EditThisCookie를 이용해 NID_AUT와 NID_SES를 수정하는 것이다.
동일한 블라우저에서 실행하면 이미 로그인 처리가 되어있기 때문에 크롬의 시크릿 창을 띄워서 들어갔다.
위와 같이 수정하고 초록색 V 표시된 버튼을 눌러 쿠키를 적용시킨다.
이렇게 하면 위와 같이 로그인이 된 것으로 처리되는 것을 볼 수 있다.
이 상태에서는 실제로 로그인 한 것 처럼 페이지를 이동해도 로그인된 상태가 유지된다.
다음은 실제 코드에 적용한 예시이다.
'Portfolio > 인증과 크롤링' 카테고리의 다른 글
웹 소켓으로 주고받는 데이터 크롤링하기(In GOPAX Notice) (0) 2019.02.21 Facebook 쿠키를 이용해 로그인하면 2단계 인증이 우회된다. (21) 2019.01.07 Facebook 쿠키 분석 (c_user, xs) (22) 2019.01.06 Daum 쿠키 분석 (HM_CU, HTS, PROF, TS, LSID) (0) 2018.12.31 Youtube 쿠키 분석 (HSID, SID, SSID) (0) 2018.12.25 Referer를 이용한 네이버 웹툰 크롤링 (0) 2018.12.18