Java에서 XSS(교차 사이트 스크립팅) 처리

2782 단어 owaspxssjava
XSS(교차 사이트 스크립팅)는 공격자가 일종의 사용자 입력(예: 입력 상자, URL 매개 변수, HTML 헤더 등)을 통해 악성 스크립트를 주입하는 웹 응용 프로그램의 보안 취약점 유형입니다.
웹 애플리케이션 정보의 기밀성, 무결성 및 가용성을 보호하기 위해 XSS 공격을 방지하는 것이 중요합니다. 두 가지 주요 교차 사이트 스크립팅 결함이 반영되고 저장됩니다.

반영된 XSS



사용자 요청의 악성 콘텐츠는 사용자에게 표시되거나 서버 응답 후 페이지에 기록됩니다. 예를 들어 다음 스크린샷에서 신용 카드 번호 필드는 취약합니다. 숫자 뒤에 삽입할 스크립트가 있습니다.

<script>alert('my javascript here')</script>



구매 버튼을 클릭하면 경고 창이 표시됩니다.


Java의 결함에 대한 패치



String RequestParam이 있는 경우 삭제 없이 처리하지 마십시오.


OWASP Java encoder 그 목적을 위해 forHtml이라는 메소드가 있습니다.


이제 필드는 텍스트로 인쇄되지만 실행되지는 않습니다.


저장된 XSS



페이로드가 유지됩니다. 예를 들어 다음 스크린샷에서 스크립트가 댓글로 추가된 것을 볼 수 있습니다. 페이지가 로드되면 스크립트가 실행되고 코드의 일부로 인쇄됩니다.


Java의 결함에 대한 패치



해결 방법은 처리하기 전에 RequestBody를 삭제하는 것입니다.



이제 주석이 텍스트로 인쇄되지만 실행되지는 않습니다.

좋은 웹페이지 즐겨찾기