本文主要是介绍安全防范知识点(XSS、CSRF、点击劫持、中间人攻击),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
什么是XSS攻击?如何防范XSS攻击?什么是CSP?
XSS跨站脚本攻击是一种网站应用程序的安全泄露攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在查看网页的时候就会受到影响。
XSS简单来说,就是攻击者想尽一切办法可以执行的代码注入到网页中。
XSS可以分为多种类型,但是总体上分为两类:持久型和非持久型。
持久型也就是攻击的代码被服务端写入数据库中,这种攻击危害性很大,因为如果网站访问量很大的话,就会到导致大量正常访问页面的用户都受到攻击。
举个例子,对于评论功能来说,就是防范持久型XSS攻击,因为我可以在评论中输入以下内容
这种情况如果前后端没有做好防御的话,这段话就会被存储到数据库中,这样每个打开该页面的用户都会被攻击到。
非持久型相比于前者危害就小的多了,一般通过修改URL参数的方式加入攻击代码,诱导用户访问连接从而进行攻击。
举个例子,如果页面需要从URL中获取某些参数作为内容的话,不经过过滤就会导致攻击代码被执行
<!--http://www.domain.com?name=<script>alert(1)</script>-->
<div></div>
但是对于这种攻击方式来说,如果用户使用Chrome这类浏览器的话,浏览器就能自动帮助用户防御攻击,但是我们不能因此就不防御此类攻击了,因为我不能确保用户都使用了该类浏览器。
对于XSS攻击来说,通常由两种方式可以用来防御:
转移字符:首先,对于用户的输入应该是永远不信任的,最普遍的做法就是转移输入输出的内容,对于引号、尖括号、斜杠进行转义。
function escape(str){str=str.replace(/&/g<
这篇关于安全防范知识点(XSS、CSRF、点击劫持、中间人攻击)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!