简述XSS与CSRF区别

zhuangnet 2020-02-26

XSS跨站脚本攻击

XSS:中文名称跨站脚本攻击,通常出现在搜索框、留言板、评论区等地方

分类:反射性、存储型、DOM型

攻击方式:构造恶意链接,诱骗用户点击盗取用户的cookie信息

反射性XSS:

  通常这一类xss危害较低,对网站没有什么严重的影响,具体表现在用户在搜索框输入xss语句返回弹框,仅出现一次

存储型XSS:

  存储型对网站危害较大,用户插入xss语句后,恶意语句会存入网站数据库中,用户访问过程都会出现弹框

DOM型XSS:

  DOM——文档对象类型

  利用浏览器的dom解析,更不容易被发现,可以更改页面布局

漏洞危害:XSS蠕虫、会话、流量劫持、网站挂马、盗取cookie

防护方法:设置黑名单和白名单、对用户输入进行过滤、入参字符过滤、出参字符转义、设置http-only

CSRF跨站请求伪造

CSRF漏洞:中文名称跨站请求伪造,攻击者冒充用户身份执行用户操作

漏洞原理:

  1、用户登录信任网站在未退出的情况下访问攻击者构造的恶意网站

  2、恶意网站发出访问第三方网站的请求,信任网站收到请求以用户信息访问

  3、攻击者在用户不知情的情况下冒充用户身份访问成功

检测漏洞:抓取一个请求包,去掉referer字段进行访问,如果访问有效则存在漏洞

危害:盗用用户身份、执行用户操作,修改信息

防护方法:

  1、设置referer字段;但是并不是所有服务器在任何时候都可以接受referer字段,所以这个方法存在一定的局限性

  2、设置验证码;在用户操作的过程中设置身份确认的验证码,该方法会很有用,不过验证码频繁的话会影响用户体验

  3、设置token值,在用户请求中设置一个随机没有规律的token值可以有效的防止攻击者利用漏洞攻击

XSS与CSRF区别

从上我们可以总结出:

    XSS:跨站脚本攻击、诱骗用户点击恶意链接盗取用户cookie进行攻击、不需要用户进行登录、xss除了利用cookie还可以篡改网页等

 CSRF:跨站请求伪造、无需获取用户的cookie而是直接冒充用户、需要用户登录后进行操作

个人总结

XSS与CSRF是包含关系 CSRF应归为XSS的一部分,两者可相互结合利用!

使用实例可参考文章:https://www.freebuf.com/column/184589.html

相关推荐