美文网首页
CSRF知识点总结面试版

CSRF知识点总结面试版

作者: kevinhuangk | 来源:发表于2017-10-13 15:04 被阅读48次

CSRF跨站请求伪造

1.本质:代码层次上将,CSRF能攻击成功是攻击者能猜到你重要参数,因而伪造请求。

2.原理:CSRF攻击建立在浏览器和web服务器的会话之中,并且能欺骗用户访问url。发起的目标是通过伪造的用户请求,该请求不是用户想发出去的请求,服务器或服务来说,该请求是完全合法的请求,但却完成了攻击者的期望操作。

3.局限性(前提条件):

a.目标站点不能有检查referer头的操作,或许被攻击者的浏览器允许referer欺骗。

b.攻击者必须在目标站点找到啊一个表单的提交入口,或者有类似的URL(例如用来转钱,修改受害者邮箱或者密码)

c.攻击者必须觉得所有的表单或者URL参数中的正确的值;如果有秘密验证值或者ID,攻击者没有猜对,攻击很可能不成功。

d.攻击者必须诱使受害者访问有恶意代码的页面,并且此时受害者已经登录到目标站点。

4.常见攻击手段:

A.CSRF作用范围内的威胁:

a.论坛的交互区。如用户提交的一些图像,url指向一个恶意网址,很可能导致CSRF攻击。且这些请求无法自定义HTTP Header,必须使用GET方法。

b.web所有者的攻击。指拥有自己独立域名,HTTPS证书和web服务器的个人,一旦访问其所在域名,攻击者可同时用GET和POST方法发起跨站请求,即为CSRF攻击。

c.网络攻击者。指能控制用户网络连接的恶意代理,如通过控制无限路由或DNS服务器控制用户的网络连接,该攻击需要更多的准备及资源。

B.CSRF作用范围外的威胁(联合攻击):

a.跨站脚本(XSS)。如果网站本身存在XSS漏洞,那么CSRF的防御将毫无意义,因为用户会话的完整性和保密性已经告破。

b.恶意软件。如果用户在攻击者电脑或者移动端设备上运行着恶意软件,那么攻击者可以控制用户的浏览器,向那些可信的网站注入脚本,那么所有基于浏览器的防御策略都会失效。

c.证书错误。如果用户的HTTPS证书错误时,还继续点击访问,那么HTTPS能提供的安全防护措施毫无意义,也包括CSRF。

d.钓鱼。访问钓鱼网站时,用户输入的个人信息,很可能导致钓鱼攻击。

5.CSRF常见防御方法:

a.验证码方式(不完全解决)。验证码强制用户必须和应用进行交互,才能完成最终的请求,在一定程度上能遏制CSRF攻击。

b.查看Referer(不完全解决)。查看请求源,一般来说,Referer的值必须为当前表单所在页面,若不在此页面,则可能遭受CSRF攻击。(不靠谱原因:服务器并非随时都能获得Referer,只能监控是否发生,并且不能防范统一域上的CSRF攻击)

c.设置Token值。从本质入手,本质上说,CSRF是攻击者猜到了你的重要参数,那么根本解决办法就是参数加密,或者用一次性随机值代替。典型的就是Token的设计。

Token是一个随机参数,不可预测,需同时放在表单和session中,提交请求时服务器只需验证表单中Token与用户Session中的Token是否一致即可。(Token防御CSRF时的详细步骤:

1.每次用户登录会随机生成一段字符串,并存储在Session中。

2.在敏感操作中假如隐藏标签,value即为Session中保存的字符串。

3.提交请求后,服务器端的Session中字符串与提交的Token对比,如果一直,课认为是正常请求,否则可能是CSRF攻击

4.更新Token。)

相关文章

  • CSRF知识点总结面试版

    CSRF跨站请求伪造 1.本质:代码层次上将,CSRF能攻击成功是攻击者能猜到你重要参数,因而伪造请求。 2.原理...

  • 求职准备

    1:知识点总结 2:项目总结 3:常见面试问题总结 4:公司筛选 5:安排面试行程 6:面试!!!

  • 后端面试-总结(java)

    最近在准备面试,对于面试总结了一套自己的知识点,在这里大概罗列一下,后面会分别按照不同的知识点专门总结。 1.面试...

  • 前端校招面试总结

    感觉抱着通过面试来发现自己的不足和不断成长的心态,面了好多公司,来做个面试总结吧。 面试知识点总结 遇到的面试,大...

  • 操作系统面试重难点总结

    针对操作系统,根据面试重难点总结以及网络上的一些参考,对操作系统面试知识点的总结与学习。 一、操作系统知识点图谱 ...

  • 操作系统面试重难点总结

    针对操作系统,根据面试重难点总结以及网络上的一些参考,对操作系统面试知识点的总结与学习。 一、操作系统知识点图谱 ...

  • SQL注入知识点总结(面试版)

    SQL注入面试时该知道的知识点 总体见解: 1.只要是支持批处理S...

  • 9、csrf_token和Django中间件的使用

    1、csrf_token的知识点 (1)报错分析:如果前端表单中没有加{% csrf_token %}标签的话,在...

  • CSRF/XSRF攻击与防御(转)

    转载地址:http://www.phpddt.com/reprint/csrf.html 个人总结:CSRF攻击的...

  • 2021前端面试

    174道JavaScript 面试知识点总结(下) [Vue中文社区](javascript:void(0);) ...

网友评论

      本文标题:CSRF知识点总结面试版

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