XSS与CSRF有什么区别吗?

web安全及防护原理相关

XSS是获取信息,不需要提前知道其他用户页面的代码和数据包。CSRF是代替用户完成指定的动作,需要知道其他用户页面的代码和数据包。要完成一次CSRF攻击,受害者必须依次完成两个步骤:
登录受信任网站A,并在本地生成Cookie。
在不登出A的情况下,访问危险网站B。
CSRF的防御
服务端的CSRF方式方法很多样,但总的思想都是一致的,就是在客户端页面增加伪随机数。通过验证码的方法。
by三人行慕课
温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-04-01

CSRF攻击基本概念及防范方法

一、基本概念

CSRF,英文全称Cross-site request forgery,跨站请求伪造。也被称为“One Click Attack”或者“Session
Riding”,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。

二、防范方法

方法1:Token验证,用的比较多:①服务器发送给客户端一个token;②客户端提交的表单中带着这个token;③如果这个token不合法,那么服务器拒绝这个请求。

方法2:隐藏令牌:将token隐藏在http的head头中,方法二和方法一有点像,本质上没有太大区别,只是使用方式上有区别。

方法3:Referer验证:Referer指的是网页请求来源,意思是,只接受本站的请求,服务器才做响应;如果不是,就拦截。

XSS攻击的基本概念及防范方法

一、基本概念

XSS,全称Cross Site
Scripting,跨站脚本攻击。XSS攻击的核心原理是:不需要你做任何的登录认证,它会通过合法的操作,向你的页面注入脚本。

最后导致的结果可能是:盗用cookie破坏页面的正常结构,插入广告等恶意内容D-doss攻击。

二、防范方法

方法1:编码:对用户的输入进行HTML Entity编码。

方法2:过滤:移除用户输入的和事件相关的属性。如onerror可以自动触发攻击,还有onclick等。(总而言之,过滤掉一些不安全的内容)移除用户输入的style节点、script节点、Iframe节点。

方法3:校正:避免直接对HTML Entity进行解码。使用DOM parse转换,校正不配对的DOM标签。

DOM parse,这个概念,它的作用是把文本解析成DOM结构。

比较常用的做法是,通过第一步的编码转成文本,然后第三步转成DOM对象,然后经过第二步的过滤。

还有一种简洁的答案:首先是encode,如果是富文本,就白名单。

XSS攻击和CSRF攻击有什么区别?

区别一:CSRF需要用户先登录网站A,获取cookie,XSS不需要登录。

区别二:CSRF是利用网站A本身的漏洞,去请求网站A的api,XSS是向网站A注入js代码,然后执行js里的代码,篡改网站A的内容。

第2个回答  2019-10-08
完全不相干的两个东西。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网