프런트엔드보안2 728x90 로그인·결제 폼의 보안 기본 — CSRF 토큰, 자동완성 속성, 비밀번호 입력 UX, 속도 제한 폼은 사용자와 서버가 만나는 자리라서 보안과 UX 가 같은 곳에서 결정됩니다. 그리고 '보안을 위해' 라며 넣은 장치가 오히려 보안을 해치는 경우가 많습니다 — 비밀번호 붙여넣기 금지가 대표적입니다. 로그인·결제·설정 변경 폼을 만들 때 지켜야 할 기본을 정리합니다.1. CSRF — 남의 사이트에서 내 폼을 보내지 못하게CSRF(교차 사이트 요청 위조)는 로그인된 사용자가 다른 사이트의 페이지를 여는 순간 그 사이트가 몰래 우리 서버로 '비밀번호 변경' 같은 요청을 보내는 공격입니다. 방어는 서버가 발급한 토큰을 폼에 넣고 요청 때 확인하는 것이고, 대부분의 프레임워크가 기본으로 제공합니다. 세션 쿠키에 SameSite=Lax(또는 Strict) 를 두면 브라우저 단에서 한 겹 더 막힙니다. 그리고 상태.. 2026. 7. 24. 콘텐츠 보안 정책(CSP) 처음 적용하는 법 — 보고 모드에서 시작해 단계별로 조이기 CSP(Content-Security-Policy)는 "이 페이지는 어떤 출처의 스크립트·스타일·이미지만 실행·표시한다"를 브라우저에 알려 주는 응답 헤더입니다. 제대로 걸리면 XSS 로 주입된 스크립트가 실행 자체가 막히므로 가장 강력한 방어선이 됩니다. 문제는 처음부터 강하게 걸면 사이트가 바로 깨진다는 것. 그래서 보고 모드로 시작해 단계별로 조이는 순서가 정석입니다.1단계 — 보고 모드로 현황 보기Content-Security-Policy-Report-Only: default-src 'self'; report-uri /csp-reportReport-Only 는 아무것도 막지 않고 위반만 보고합니다. 브라우저 콘솔에도 뜨고, /csp-report 로 JSON 이 POST 됩니다. 이 보고를 일주일쯤.. 2026. 6. 10. 이전 1 다음 728x90 728x90