| <form action=level2.php method=GET> |
|
<input name=keyword value="test"> <input keyword value="test"> |
| <input type=submit name=submit value="搜索"/> |
| </form> |
这段代码是web前端的HTML代码,其所运行的结果如下:

如果在搜索框里填<script>alert(9)</script>,那么这段代码里的
<input keyword value="test">
会变成
|
<input keyword value="<script>alert(9)</script>"> |
但是很快会发现<script>alert(9)</script>被双引号引起来了变成字符串,但如果输入下面这段代码
"><script>alert(1)</script><"
这段代码就变成:
<input keyword value=""><script>alert(1)</script><"">
这段代码就会被当作三段代码执行
<input keyword value="">
<script>alert(1)</script>
<"">
其中<script>alert(1)</script>就会被apache当作js代码交给php执行。
所以永远不要相信用户输入的东西!!!

577

被折叠的 条评论
为什么被折叠?



