【发布时间】:2017-04-24 11:52:17
【问题描述】:
我只是想在 xss 上锻炼,我希望在 echo 上弹出警报框,它应该在 echo 上工作。我正在根据概念进行练习,并且我对 htmlspecialchars 的使用有误,这很容易受到 xss 的影响。然而,这并没有真正起作用,我不明白为什么。这是我的代码
$name=htmlspecialchars($_GET['myname']);
echo "<HTML><body>";
echo '<form action="">';
echo "name: <input type='text' name='myname' ><br>";
echo "<input type='submit' ></form>";
echo $name; // here I want the xss to execute a popup box
echo "</HTML></body>";
输入脚本如下所示。
<script>alert();</script>
我也尝试了很多替代方案。该脚本在我键入时显示,并且没有警告框。
【问题讨论】:
-
你应该在html之前关闭body标签。还向您的表单添加方法
-
@Akin 在 HTML5 中不需要关闭某些标签,如果没有给出方法,则假定 GET。
-
为什么这是
htmlspecialchars()函数的错误用法? -
看看这个是否有帮助 owasp.org/index.php/… >
标签: javascript php security xss