이 글은 웹 개발 1년차가 쓴 뉴비가 쓴 글이므로, 오류가 있을 수 있습니다.
오류가 있거나 고칠 부분이 있다면 댓글로 알려주세요.
웹 개발을 하다보면 보안에 관심을 가지게 되는 경우가 있다. 요번에도 학교에서
중규모(?) 프로젝트를 하던 도중에 CSRF라는 것으로 해킹을 한다는 것을 듣게 되었다.
그래서 이 웹사이트에는 csrf를 처리해 보는것은 어떨까 해서 공부하게 되었다.
개인적인 해석으로 csrf를 말하자면
서버 api에서 보안 취약점을 찾은 후에, 사용자가 의지와는 무관하게 서버 요청을 보내서 정보를 수정, 삭제하는 해킹기법
위키토피아에서는 이렇게 말한다
사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격을 말한다.
솔직히 위키에 있는 정의가 제일 깔끔하다고 생각한다.
https://www.naver.com 를 예시로 들겠다. cookie에 access_token이 있고, 비밀번호를 바꾸는 서버 주소가 https://www.naver.com/change?password="" 라면 사용자가 메일을 받았는데 메일 내부에
<img src="https://www.naver.com/change?password="">
과 같은 것들이 있으면 cookie에 있는 token이 가면서 유저가 보낸것 이라고 인식하여, password가 바뀐다.