2013-08-16 2 views

답변

1

, 가장 쉬운 방법은한다고는 화이트리스트 HTML.Allowed보다는 철저한 블랙리스트에 시도로 하늘을 설정할 수 있습니다. (일반적으로 난 도망 블랙리스트에서 머물 당신이 정말로 다른 옵션이없는 경우를 제외하고 접근 것이 좋습니다 것 말하기 - 블랙리스트에 항상 뭔가를 그리워 할 수있는 기회가있다.)

그러나을 :

HTML 정수기는 도구입니다 의 경우 HTML을 허용하도록 특별히 설계되었습니다. 그렇지 않으면 기회가되는 것은 단순히 계산상의 오버 헤드이며 이익을 얻지는 못합니다.

는 대조 :

아마도 대신 htmlspecialchars(strip_tags(...), ENT_QUOTES, 'your-encoding-goes-here')를 시도? 그것은 당신이 성취하고자하는 것에 대해보다 빠르고 안전해야합니다.

+0

설명을 위해 제목과 HTMLPurifier에'$ this-> title = strip_tags ($ this-> title); '를 사용합니다. strip_tags에서 올바르게 사용 했습니까? 또는 htmlspecialchars에서 사용해야합니까? – msoa

+1

@msoa : 일반적으로'strip_tags()'만이 안전하지 않기 때문에'htmlspecialchars (strip_tags())'를 사용해야합니다. 즉 누군가 진정으로 사이트를 해킹하고 싶다면'strip_tags()'를 우회 할 수 있습니다. 물론'$ this-> title '이 출력되기 전에 이미 html로 이스케이프 처리 된 상태라면, 실제로 그렇게하지 않아도됩니다 (실제로는 안됩니다). 그러나 설정에 대해 더 많이 알지 못하면, 나는 조언 할 수 없다. 행운을 빕니다! :) – pinkgothic