laravel中的CSRF攻击防护
学习链接
什么是csrf
跨站请求伪造是一种通过伪装授权用户的请求来攻击授信网站的恶意漏洞
如何防护csrf
防御CSRF攻击:
目前防御 CSRF 攻击主要有三种策略:
验证 HTTP Referer 字段;【验证该 HTTP 请求的来源地址】
在请求地址中添加 token 并验证;
在 HTTP 头中自定义属性并验证。
laravel 中的实现
- 自带的csrf_token 的中间件,每次form 都要传递 一个 csrf_field 字段
- 如果接口使用,可以通过OAuth2.0实现,或者JWT。 这个后面讲。
如何排除指定 URL 不做 CSRF 保护
中间件:VerifyCsrfToken
把指定的路由加进去即可。
XSS攻击
什么是 XSS?
百度百科的解释: XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。
它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制,获取用户的一些信息。
XSS 攻击的分类
xss攻击可以分成两种类型:
1.非持久型攻击
2.持久型攻击
非持久型xss攻击:顾名思义,非持久型xss攻击是一次性的,仅对当次的页面访问产生影响。非持久型xss攻击要求用户访问一个被攻击者篡改后的链接,用户访问该链接时,被植入的攻击脚本被用户游览器执行,从而达到攻击目的。
持久型xss攻击:持久型xss,会把攻击者的数据存储在服务器端,攻击行为将伴随着攻击数据一直存在。
也可以分成三类:
反射型:经过后端,不经过数据库
存储型:经过后端,经过数据库
DOM:不经过后端,DOM—based XSS漏洞是基于文档对象模型Document Objeet Model,DOM)的一种漏洞,dom - xss是通过url传入参数去控制触发的。
反射型:简介
推荐文章: