현재 SQL부분은 수정중이라 feat/SQLinjection 브랜치만 올리고 메인에는 머지하지 않은 상태입니다
간단한 댓글 서비스를 통해 Stored XSS, Reflected XSS 취약점을 재현한 웹 사이트
- XSS 취약점을 이해하고 재현
- 안전한 출력,인코딩 기법과 패치 등을 통해 보완
- Java 17
- Spring Boot
- Gradle - Groovy
- 기본 포트: 'http://localhost:8080 '
- 댓글 내용 입력 칸에 스크립트 공격문 삽입
- alert문 실행 성공
- DB확인한 모습
- DB에 들어와 다른 사용자에게도 영향을 미치기 때문에 페이지를 새로고침하는등의 렌더링 과정을 할 때마다 스크립트가 다시 실행된다.
- 닉네임에 스크립트 문 삽입
- 마지막 닉네임을 직접 눌러보면 스크립트 실행 성공
- URL에 search 파라미터를 통해 직접 스크립트 삽입
- alert문 실행 성공
- Reflected 이기 때문에 DB에 저장되지는 않는 모습