클래스/유틸리티 등을 찾고 HTML 코드를 삭제합니다. 즉 XSS 및 유사한 공격을 피하기 위해 위험한 태그, 속성 및 값을 제거합니다.XSS 공격을 방지하기 위해 Java에서 HTML 코드를 어떻게 위생 처리합니까?
서식있는 텍스트 편집기 (예 : TinyMCE)에서 html 코드를 얻을 수 있지만 악의적 인 방법으로 TinyMCE 유효성 검사 ("데이터는 오프 사이트 양식 제출")를 보낼 수 있습니다.
PHP의 InputFilter처럼 사용하기 쉬운 것이 있습니까? 완벽한 솔루션은 그와 같은 작품 (소독제를 가정 HtmlSanitizer 클래스에서 캡슐화)를 상상할 수 :
String unsanitized = "...<...>..."; // some potentially
// dangerous html here on input
HtmlSanitizer sat = new HtmlSanitizer(); // sanitizer util class created
String sanitized = sat.sanitize(unsanitized); // voila - sanitized is safe...
업데이트 - 간단한 솔루션을, 더 나은! 가능한 한 다른 라이브러리/프레임 워크에 대한 외부 의존성이없는 작은 util 클래스가 가장 적합 할 것입니다.
어때요?
그래서 기본적으로 클라이언트가 형식을 제출하여 fx 형태로 표시 할 수 있어야합니다. 방명록? 그리고 사용자가 html을 사용할 수 있기를 원하지만 악의적 인 사용자가 해킹 시도를 차단할 수 있기를 원하십니까? 아니면 내가 여기서 잘못 했어? – Latze
@Latze : 클라이언트 (브라우저를 통해 사용자)가 richtext 콘텐츠 (서식있는 텍스트 편집기 -TinyMCE를 통해 HTML 형식)를 제출하지만 잠재적으로 위험한 (안전하지 않은) 내용을 확인하고 제거하도록합니다. 이 컨텍스트에서 언급 한 fx와 방명록은 무엇인지 모르겠습니다. – WildWezyr
아! 내가 총을 줘, 2 분 정도 줘 – Latze