2010-03-03 3 views
1
나는 문제를 해결하기 위해 필요

양식 텍스트 영역에서 자바 스크립트 주입과 필드 자바 스크립트 주입

script type='text/javascript' 
window.location='http:site.com'; 

/스크립트

또는

a href='javascript:...' 

또는

형태의 액션과 함께 .. .

또는

input name... 

예 : a, b, ul과 같은 일부 html 태그는 보존 할 수 있습니까?

+2

는 http://stackoverflow.com/questions/1975613/how-can-i-allow-html-in-a 참조 (정규식에 대한 사과, 내 강점이 아니다) -whitelist-with-php (그리고 HTML 정제기에 대한 찬성으로 현재 0 점으로 받아 들여진) 대답을 무시하십시오. – Quentin

답변

1

HTML의 유형 당신은 XSS 공격으로부터 자신을 보호 할 수 있도록 원하는대로로 지정 HTML Purifier를 사용해보십시오. 당신이 XSS에 대해 걱정하는 경우

-1

, 당신은 어떤 자바 스크립트에 없다 있는지 확인하기 위해 서버 측의 입력을 처리해야합니다. 희망이 펄 예제가 도움이 될 것입니다

use strict; 
my $str = <<HTML; 
<body> 
     <div> 
       sfdasfasdfs 
       <script type="text/javascript"> 
         window.location.href = "http://badsite.com"; 
       </script> 
       sadfssdfssdf 
     </div> 
</body> 
HTML 

$str =~ s/<script.*?>[\s\w\d\W]*<\/script>//g; 

print "$str\n"; 
+1

이것은 질문에서 제시된 대부분의 예제를 제거하지 않습니다. 그 문제에 대해서도, 그것은 '