로그인 3

CSRF 토큰과 DOM

배경CSRF 토큰, dom 은 뭐고 왜필요할까?둘은 어떤관계를 가지고 있을까?본문1. 한 줄 요약CSRF 토큰은 로그인이나 폼 전송 시 서버가 발급한 보안 코드이고, DOM은 그 토큰이 담긴 HTML 구조 안에서 우리가 그 값을 추출해내는 장소입니다.2. 🧠 용어 먼저 정리✅ CSRF 토큰이란?CSRF = Cross-Site Request Forgery (사이트 간 요청 위조)사용자가 로그인한 상태를 악용해, 의도치 않은 요청을 자동으로 보내는 공격을 막기 위해 사용됨서버는 폼 안에 무작위 토큰을 삽입해서, 이 토큰이 없거나 틀리면 요청을 거부함 CSRF 토큰은 HTML 안에 숨겨진 input 필드로 들어가며,서버는 이 값을 확인해 정상 요청인지 판단합니다.✅ DOM이란?DOM (Docu..

크롤링 2025.04.22

로그인시 토큰을 요청하는 이유

배경크롤링 코드를 짜던와중, 토큰을 요청하는 경우가 많음토큰이 뭐고 왜 필요할까?본문1.요약로그인 후 토큰을 요청하는 이유는, 비밀번호를 자주 보내지 않으면서도 인증된 사용자임을 증명하기 위해서입니다.요즘 대부분의 웹서비스는 사용자 로그인 이후 Access Token, Refresh Token 같은 인증 토큰을 발급하고,클라이언트는 이 토큰을 이용해 API와 안전하게 통신합니다.2. 로그인 → 토큰 흐름 요약[1] 사용자가 로그인 (ID/PW 입력) ↓[2] 서버가 Access Token / Refresh Token 발급 ↓[3] 이후 요청은 토큰만으로 인증3. 왜 토큰이 필요할까?비밀번호를 계속 보내는 건 너무 위험함매 API 요청마다 비밀번호를 보내는 구조라면?→ 중간자 공격(MITM), 로그..

크롤링 2025.04.22

Post 로그인이 안됐던 이유

배경크롤링 코드 짜던도중, request의 post로 로그인이 실패함.selenium으로 짜니 성공, 실제로 이런 경우가 많았는데 그게 왜인지 알고 싶음본문JavaScript 기반 로그인 처리많은 웹사이트는 로그인 시 JavaScript로 동작하는 로그인 로직을 사용합니다.예를 들어:로그인 버튼 클릭 → JS에서 추가로 토큰 생성숨겨진 필드(예: CSRF 토큰, CAPTCHA 응답 등) 자동 생성✅ Selenium은 브라우저를 그대로 띄우기 때문에 이런 JS 로직을 모두 실행할 수 있음❌ requests.post()는 단순히 HTTP 요청만 보내기 때문에 JS 실행을 하지 못함CSRF 토큰 미포함로그인 폼 안에 같은 항목이 포함되어 있는 경우이 토큰은 로그인 시 요청에 반드시 포함돼야 하며, 보통 로그..

크롤링 2025.04.22