2014-06-13 1 views
1

사용자가 HTML 입력을 입력 할 수있는 응용 프로그램에 페이지가 있습니다. 이제는 XSS 공격을 피하기 위해 OWASP HTML Sanitizer를 사용하여 사용자 입력을 위생적으로 처리하고 있습니다. 사용자 입력이 정책에 따라 유효하지 않은 경우 사용자를 내 보내기 만하면됩니다.owasp html sanitizer의 isValid() 메소드

입력 html이 위생 처리없이 정책에 대해 유효한지 여부를 간단히 확인할 수있는 방법이 있습니까?

뭔가

공공 정적 부울 isValid (문자열 입력, 정책 정책)

같은;

답변

0

자신을 isValid 메서드로 정의 할 수 있지만 sanitize 메서드를 호출하지 않고도이를 수행 할 수 있는지 확신 할 수 없습니다.

// Define the policy factory 
PolicyFactory polFac = new HtmlPolicyBuilder() 
    .allowElements("a", "p") 
    .allowAttributes("href").onElements("a") 
    .toFactory(); 

boolean isValid(String input, PolicyFactory polFac){ 
    return input.equals(polFac.sanitize(input)); 
} 

당신은 거부 된 요소와 속성의 이름을보고합니다 (PolicyFactory 클래스)를 sanitize 메서드의 두 번째 버전을 사용 isValid의보다 강력한 버전을 얻을 수 있습니다.

관련 문제