csrf Attack 에 대하여 배운 이후로, 공격을 방지하기 위한 csrfToken을 항상 사이트에 적용시켜 놓는다.
1. csruf 패키지로, csrf token을 활성화 시키고
2. csrf 패키지를 불러온 후, app.use( csrf() ) 를 통해, 작동시킨다.
3. middelware 혹은, Constroller에서, render할 페이지에 csrf token을 '나의 HTML'에 보낸 후
4. '나의' 브라우저에만 있는 csrf token을 접속시, 서버에 제출함으로써, '나의페이지가 맞음을 확인받는다'
중요한것은 브라우저에서 서버로 제출 시 방법이다.
즉, 쿼리매개변수로 제출되는 형태이다.
제출을 하게되면 URL에는 domain/login?_csrf=" csrfToken" 의 식으로 제출될것이다.
그런데 FORM에 enctype을 사용해서, file과 정보를 보내면 저같은 식의 value는 제출되지 않는다.
그러면 어떻게 해야할까?
바로!
FORM의 ACTION 자체에 쿼리 매개변수를 담아버리면 된다!
요렇게!
끝!
'공부용-사이드프로젝트 > Nodejs - 미니프로젝트-쇼핑몰' 카테고리의 다른 글
5. 물품 상세 // 물품 (유저별로 다르게) 장바구니에 담기 // (유저별로 다르게) 장바구니 구현하기! With Ajax (0) | 2022.09.27 |
---|---|
extra) 자바스크립트 내장 클래스 URL 클래스로, 섬네일 편하게 만들기 (0) | 2022.09.25 |
4. 물품 올리기! 업데이트! 삭제까지! (1) | 2022.09.25 |
3. 섬네일을 만들어볼까나? (수정) (0) | 2022.09.23 |
2. 로그인페이지, 검증과 오류처리, 세션, 물건 업데이트 페이지 생성 (0) | 2022.09.21 |
댓글