Heim > Backend-Entwicklung > PHP-Tutorial > javascript - 跨站攻击,看了有点蒙,求解

javascript - 跨站攻击,看了有点蒙,求解

WBOY
Freigeben: 2016-06-06 20:44:04
Original
1153 Leute haben es durchsucht

<code><form method="post" action="test_form.php"></form>
<script>alert('hacked')</script>
</code>
Nach dem Login kopieren
Nach dem Login kopieren

为何这样的是不安全的

<code>htmlspecialchars处理后
<form method="post" action="test_form.php/">
<script>alert('hacked')</script>">
</form></code>
Nach dem Login kopieren
Nach dem Login kopieren

这样是安全的

test_form.php"/ 小白怎么看都觉得只是两个" /换了个位置

出自http://www.w3school.com.cn/php/php_form_validation.asp

回复内容:

<code><form method="post" action="test_form.php"></form>
<script>alert('hacked')</script>
</code>
Nach dem Login kopieren
Nach dem Login kopieren

为何这样的是不安全的

<code>htmlspecialchars处理后
<form method="post" action="test_form.php/">
<script>alert('hacked')</script>">
</form></code>
Nach dem Login kopieren
Nach dem Login kopieren

这样是安全的

test_form.php"/ 小白怎么看都觉得只是两个" /换了个位置

出自http://www.w3school.com.cn/php/php_form_validation.asp

原谅我刚才看错了,还以为只讨论htmlspecialchars。

防范xss首先应从格式规范上面入手。比如你那个页面表单里的姓名、电邮、网址,都是有格式的,取得参数值的时候用正则表达式或者手写个函数校验一下,能省不少事情。

再比如评论这种没有格式规范的,或者格式当中允许出现html格式字符的,在输入或者输出的地方,用htmlspecialchars处理一下。这个函数的作用就是把一些html格式字符转化为实体,这样就会直接显示出来而不会被解析了。

这里有篇文章,传送门:
XSS 与 CSRF 两种跨站攻击

可以参考下我以前总结的blog,详情

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。

htmlspecialchars()是将一些敏感的字符进行了转义。避免一些别有用心的用户利用特殊字符来实现分割原本要执行的语句,产生歧义,或分割为两条语句,或更多从来实现破坏的目的。

总之,就是永远不要相信用户提交的任何数据,一定要在入库或使用前要进行预处理。

牛逼嗯解释。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage