쿼리 매개 변수를 올바르게 인코딩하는 방법. 정리 작업을 수행하는 Anti Samy를 통해 데이터를 전달합니다. 그 다음에 unescapeHtml4 메소드를 전달해야합니다. 때로는 Json을 요청 매개 변수로 사용하기도합니다 (아래 예제 1 참조). 다음과 같이요청 매개 변수에서 Json과 HTML santization을 처리하는 방법은 무엇입니까?
현재, 내 코드는 다음과 같습니다
String str = StringEscapeUtils.unescapeXml(xml);
ClearResult cr = antiSamy.scan(str);
String cleanStr = cr.getCleanHTML();
String s = StringEscapeUtils.unescapeHtml4(cleanStr);
예 1 : JSON 요청과 같은 : 나는 줄 번호 4를 제거하면, 내가 이름 quot {&을 그만 둘 것이다
& quot : MAV & & quot}
예 quot 2 : 이스케이프의 결과 다음 스크립트 : < 스크립트> alert ("hi") < 스크립트>
줄 번호 4를 유지하면 XSS에 취약합니다.
이 문제를 해결하는 방법? JSON과 HTML 요청 매개 변수를 모두 처리하려고합니다. 어떤 도움을 주시면 감사하겠습니다.