2016-12-30 3 views
0

저는 PHP로 게임을하고 있습니다. 몇 가지 보안 자습서를 거칩니다. 나는 아주 기본적인 XSS 공격을 시도했다. 만약 내가 단순히 echo "Test<script>alert(1);</script>";을 사용하면 자바 스크립트 경고 상자를 표시하지만, 시도 할 때 POST 동일한 텍스트를 양식을 사용하여 브라우저에 다시 표시하면 자바 스크립트 경고 상자가 표시되지 않습니다. 시험 만 표시하면됩니다. 뭐지 위해 작업하는 브라우저입니다자바 스크립트가 PHP와 함께 실행되지 않습니다.

<?php 

$text = isset($_POST['text'])? $_POST['text']: NULL; 
if ($text) { 
    echo $text; 
} 

$test = "Test<script>alert(1);</script>"; 
echo $test; 
?> 


<!DOCTYPE html> 
<html> 
<head> 
<title>Security</title> 
</head> 
<body> 
<form method="POST"> 
<label for="text">Put some random text here:</label> 
    <input type="text" name="text"> 

    <input type="submit" name="submit"> 
</form> 
</body> 
</html> 
+0

:

여기 내 코드입니까? –

+0

어떤 브라우저가 작동하지 않았습니까? 다른 브라우저에서 사용해보십시오. 크롬을 올바르게 기억하면 검색어가 표시되거나 게재되는 JavaScript가 실행되지 않습니다. – Ultimater

+0

@Ultimater Chrome에서 그렇게하려고했습니다. Firefox에서 완벽하게 작동합니다. 감사 –

답변

0

양식을 제출 한 후 소스 코드를 확인해야 .....

<script>alert(1);</script>Test<script>alert(1);</script> 

<!DOCTYPE html> 
<html> 
<head> 
<title>Security</title> 
</head> 
<body> 
<form method="POST"> 
<label for="text">Put some random text here:</label> 
    <input type="text" name="text"> 

    <input type="submit" name="submit"> 
</form> 
</body> 
</html> 
관련 문제