XSS:跨站脚本攻击 js注入
分为三类:存储型(持久型)
反射型(非持久型)
DOM型
(图片来自于XSS 原理和攻防 - Web 安全常识_哔哩哔哩_bilibili 02:59 侵删
反射型:一般出现在url链接中。通常通过邮件或者聊天地址给你一个点击地址。发出请求的时候,xss的代码出现在我们的访问链接中,作为一部分的输入提交到服务器。服务器解析之后做出响应。这段代码就会随着响应返回到浏览器中进行渲染。/
也就是说xss代码会被web服务器反射回客户端进行执行。
存储型:最典型的情况在留言中。和反射型的区别在于提交的代码回存储在web服务器中(持久型)下一次请求的时候不需要再次请求。
XSS存在的原因:对url中的参数或者用户提交输入的地方没有提交过滤,造成的不合法的参数能够被提交到web服务器。但是我们没有办法对它进行完全充分百分百的过滤。 xss的防范:
图片来源于XSS 原理和攻防 - Web 安全常识_哔哩哔哩_bilibili 08:24 侵删
同上,侵删 ps.session和cookie的区别
在node.js中如何做防范呢,使用js-xss库
CSRF:跨站点请求伪造
你可以这样去理解:攻击者盗用了你的身份,以你的名义去发送恶意请求
图源:CSRF 攻击和防御 - Web 安全常识_哔哩哔哩_bilibili 01:12 侵删 本质原因:上图右下角紫色的服务器验证不够 解决方法:在服务器服务端去做验证处理
1.尽可能使用post请求
2.加入验证码/滑块等等
3.验证Referer(http头上的字段)(当前请求的来源地址)(简单-方便的方案)但是也有网站可以篡改referer
4.anti CSRF token(最常用的):
1)在form表单或者头信息中传递一个随机产生的token
2)token存储在服务端(不在cookie,一般用户信息存储在cookie就极容易被CSRF攻击)
3)服务端通过拦截器验证token
4)校验失败就拒绝请求,token验证通过后要立刻销毁
(刚查看了感觉掘金不是使用的token,如有发现的请留言指正)
5)自定义header(本质上其实和4)一样的)
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!