--- name: detecting-csrf-vulnerabilities description: >- SQIsoft 웹 애플리케이션에서 CSRF(Cross-Site Request Forgery) 취약점을 검사한다. 프로젝트 스택(Spring Boot 모던 / JSP·Servlet 레거시)을 자동 감지하여 스택에 맞는 Semgrep 룰로 1차 탐지하고, AI가 상태변경 엔드포인트의 토큰 보호 유무를 컨텍스트로 검증한다. Spring Security csrf().disable(), 토큰 없는 JSP form POST, 검증 없는 doPost, SameSite 미설정 쿠키 등을 찾는다. domain: cybersecurity subdomain: web-application-security tags: [csrf, cwe-352, owasp-a01, spring-security, jsp, servlet, sqisoft] cwe: [CWE-352] owasp: [A01:2021-Broken-Access-Control] stacks: [spring-modern, jsp-legacy] version: "0.3.0" author: sqisoft-security license: Proprietary --- # CSRF 취약점 검사 (Cross-Site Request Forgery) ## When to Use 다음 중 하나라도 해당하면 이 스킬을 실행한다. - SQIsoft 프로젝트(예: `sqisoft-sef-2026`, `Gseed_Web_Renew`)의 **상태를 변경하는 요청**(로그인, 회원정보 수정, 게시글/댓글 작성·삭제, 관리자 설정 변경)을 점검할 때 - 보안 코드 리뷰 / 출시 전 점검에서 CSRF 보호 적용 여부를 확인할 때 - Spring Security 설정에서 `csrf().disable()`이 의심될 때, 또는 JSP `