보안에서 **"세션을 가로채다"**라는 의미의 공격은 세션 하이재킹(Session Hijacking) 이라고 한다.
세션 하이재킹이란?
사용자와 서버 간에 로그인 등으로 생성된 세션 ID(Session Identifier) 를 공격자가 가로채서, 그 세션을 이용해 사용자인 척 서버에 접근하는 공격이다.
주요 방식:
세션 쿠키 탈취: 웹 브라우저가 저장한 쿠키를 가로챔
스니핑(Sniffing): 암호화되지 않은 네트워크에서 세션 ID를 몰래 엿봄
XSS (Cross-site Scripting): 악성 스크립트를 심어 쿠키를 탈취함
세션 고정(Session Fixation): 사용자가 미리 정해진 세션 ID를 사용하도록 유도한 뒤 탈취
예:
1. 사용자가 로그인하면서 session_id=ABC123을 받음
2. 공격자가 이 세션 ID를 탈취
3. 공격자가 그 세션 ID로 로그인된 것처럼 요청을 보냄
4. 서버는 사용자의 세션으로 인식하고 요청을 처리함
방어 방법:
HTTPS 사용 (세션 ID 암호화)
세션 타임아웃 설정
IP/브라우저 확인
세션 고정 방지
HttpOnly 및 Secure 쿠키 설정