1
DB에 HTML 텍스트가 포함 된 필드가 있으며이를 JSP 페이지에 인쇄해야합니다. HTML을 어떻게 렌더링 할 수 있습니까? <c:out value="${text}" />
을 사용하면 HTML 태그가있는 텍스트를 볼 수 있습니다. 즉, HTML을 벗어납니다.JSP 페이지에서 이스케이프 처리되지 않은 HTML 렌더링
DB에 HTML 텍스트가 포함 된 필드가 있으며이를 JSP 페이지에 인쇄해야합니다. HTML을 어떻게 렌더링 할 수 있습니까? <c:out value="${text}" />
을 사용하면 HTML 태그가있는 텍스트를 볼 수 있습니다. 즉, HTML을 벗어납니다.JSP 페이지에서 이스케이프 처리되지 않은 HTML 렌더링
은 기본적으로 <c:out>
는 XSS 공격을 방지하기 위해 XML 엔티티에게 <
, >
, &
, "
및 '
를 이스케이프합니다.
${text}
또는 escapeXml="false" attribute
추가 :
<c:out value="${text}" escapeXml="false" />
당신은 확인해야합니다
그래서 중 단지<c:out>
(JSP 2.0에서 작동하며 새로운)를 사용하지 않는 문제를 해결하기 위해 이 HTML이 신뢰할 수 있거나 매우 쉽게
XSS attack 구멍이됩니다.
Jsoup이 도움이 될 수 있습니다.
XSS prevention in JSP/Servlet web application도 참조하십시오.
구문 분석을 통해 당신은 무엇을합니까? html로 렌더링하고 싶습니까? – Saket
예, 죄송합니다, 렌더링을 의미합니다. –