CSRF攻击和XSS攻击的区别

作者: 初七123 | 来源:发表于2017-04-21 19:31 被阅读1194次

XSS 跨站脚本攻击

原理

XSS 其实就是所谓的 HTML 注入,攻击者的输入没有经过后台的过滤直接进入到数据库,最终显示给来访的用户。如果攻击者输入一段 js 脚本,就能窃取来访者的敏感信息(比如 Cookie),实现伪装成来访者对网站发送危险请求。

防御

避免 XSS 的方法之一主要是对用户输入的内容进行过滤,比如 PHP 里面的 htmlspecialchars() 函数。

CSRF 跨站请求伪造

XSS 是实现 CSRF 的诸多途径中的一条,但绝对不是唯一的一条。一般习惯上把通过 XSS 来实现的 CSRF 称为 XSRF。

原理

要完成一次CSRF攻击,受害者必须依次完成两个步骤:

  • 登录受信任网站A,并在本地生成Cookie。
  • 在不登出A的情况下,访问危险网站B。

银行网站A,它以GET请求来完成银行转账的操作,如: http://www.mybank.com/Transfer.php?toBankId=11&money=1000

危险网站B,它里面有一段HTML的代码如下:

<img src=http://www.mybank.com/Transfer.php?toBankId=11&money=1000>

首先,你登录了银行网站A,然后访问危险网站B,噢,这时你会发现你的银行账户少了1000块!

防御

给每个表单加入随机 Token 进行验证,这样B页面无法获取A页面的 Token 导致请求验证失败,从而防止了 CSRF。

CSRF攻击是源于WEB的隐式身份验证机制!WEB的身份验证机制虽然可以保证一个请求是来自于某个用户的浏览器,但却无法保证该请求是用户批准发送的!

相关文章

  • 贰--某服

    1.xss和csrf的本质区别 xss和csrf是两种不同维度的攻击形式。xss跨站脚本,主要是一种攻击手段,恶意...

  • laravel的CSRF防护机制和延伸

    在说laravel框架里对CSRF的攻击防护之前先对XSS和CSRF攻击做一下简单的介绍。 XSS和CSRF攻击 ...

  • 常见的WEB攻击

    XSS攻击,CSRF攻击,SQL注入攻击,文件上传漏洞,DDoS攻击,其他攻击手段 1.XSS攻击 XSS(Cro...

  • CSRF攻击和XSS攻击的区别

    XSS 跨站脚本攻击 原理 XSS 其实就是所谓的 HTML 注入,攻击者的输入没有经过后台的过滤直接进入到数据库...

  • CSRF攻击

    除了XSS攻击外,还有一种叫CSRF的攻击不容小视。 什么是CSRF攻击呢? CSRF攻击又称跨站请求伪造,攻击者...

  • JAVA框架面试题整理之—第四篇

    168、什么是XSS攻击?什么是SQL注入攻击?什么是CSRF攻击? 答: - XSS(Cross Site Sc...

  • CSRF攻击和XSS攻击

    CSRF CSRF,全称Cross-site request forgery(跨站请求伪造),其原理是利用用户的身...

  • XSS攻击和CSRF攻击

    一、XSS攻击1、什么是XSS?XSS全称是Cross Site Scripting即跨站脚本,当目标网站目标用户...

  • XSS攻击和CSRF攻击

    前言:随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移...

  • xss攻击和csrf攻击

    XSS 跨站脚本攻击。指攻击者在网站上注入恶意脚本(js或html代码块),通过恶意脚本对用户浏览器进行控制或获取...

网友评论

    本文标题:CSRF攻击和XSS攻击的区别

    本文链接:https://www.haomeiwen.com/subject/cccjzttx.html