웹사이트에서 의도치 않은 스크립트를 넣어서 실행시키는 기법을 말합니다.
웹 애플리케이션이 사용자로부터 입력 받은 값을 제대로 검사하지 않고 사용할 경우 발생하며, 결과로 사용자는 의도치 않은 동작을 수행하거나 쿠키, 세션 등의 정보를 탈취 당하게 됩니다.
세션 쿠키를 탈취하는 스크립트
를 사이트에 삽입합니다.서버에 저장
한다.암호화
한다.사용자가 자신의 의지와는 무관하게 침입자가 의도한 행위를 서버에 요청하게 만드는 공격입니다.
XSS가 사용자가 특정 사이트를 신뢰
하기 때문에 발생하는 문제라면, CSRF는 특정 사이트가 사용자를 신뢰
하기 때문에 발생하는 문제입니다.
💡 CSRF의 2가지 조건
1. 사용자가 사이트에 로그인 상태여야 한다.
2. 사용자는 조작된 페이지에 방문(접속)해야 한다.
refferer
속성 검증CSRF Token
사용Security Token
사용사용자가 특정 사이트를 신뢰
하기 때문에 발생하는 문제라면, CSRF는 특정 사이트가 사용자를 신뢰
하기 때문에 발생하는 문제이다.클라이언트의 브라우저
에서 발생하는 문제이고, CSRF는 서버
에서 발생하는 문제이다.쿠키
를 탈취할 수 있고, CSRF는 서버로부터 권한
을 탈취할 수 있다.XSS | CSRF | |
---|---|---|
방법 | 악성 스크립트가 클라이언트에서 실행 | 권한을 도용당한 클라이언트가 가짜 요청을 서버에 전송 |
원인 | 사용자가 특정 사이트를 신뢰 | 특정 사이트가 사용자를 신뢰 |
공격대상 | 클라이언트 | 서버 |
목적 | 쿠키, 세션 갈취, 웹사이트 변조 | 권한 도용 |
📎 참고문서