CSRF与SSRF与XXE


前言

系统的梳理下CSRF和SSRF的知识点


一、CSRF

1.CSRF的简介

CSRF又称跨站请求伪造,XSS就是CSRF中的一种。跨站请求伪造指的是伪造客户端请求。
发生条件:
用户在正常网站A登录的情况下
访问了保存有恶意代码的另一个网站B
B网站劫持用户的登陆状态以用户的身份对网站A发送请求,一般是劫持了COOKIE信息。
当服务端对这次请求无验证的情况下,会通过此次请求并视为可信的用户的操作。

2.CSRF的防御与检测

对CSRF的检测可以使用手工测点,一般在用户操作的点上。
也可以使用如CSRFTester这类工具,将抓取过的链接及表单信息修改了之后相当于伪造了客户端请求,如果此请求成功背网站服务器接受,则存在CSRF漏洞,也可以用此工具进行CSRF攻击。

对CSRF的防御可以:
1.对HTTP Referer字段进行验证,这个字段记录了HTTP的请求的来源地址,可验证此来源是否可信、是否合规来避免CSRF攻击,但是黑客完全可以把用户浏览器的 Referer 值伪造成源网站的地址,这样就可以通过验证,从而进行 CSRF 攻击。
2.在请求地址中添加 token 并验证
可以在 HTTP 请求中以参数的形式加入一个随机产生的 token,并在服务器端建立一个拦截器来验证这个 token,如果请求中没有 token 或者 token 内容不正确,则认为可能是 CSRF 攻击而拒绝该请求。但要注意token内容最好随机并且不可预测。
3.在 HTTP 头中自定义属性并验证
在HTTP头中自定义的属性里,通过XMLHttpRequest 这个类可以一次性给所有该类请求加上 csrftoken 这个 HTTP 头属性,并把 token 值放入其中。同时避免通过这个类请求的地址不会被记录到浏览器的地址栏,也不会担心token回通过Referer泄露到其他网站。
当然此方法局限性很大,这个类一般用于Ajax方法中,一些操作对用户带来不便,所以建议使用上面两种方式。

二、SSRF

1.SSRF简介

SSRF叫做服务端请求伪造攻击。
有的大型网站在web应用上提供了从其他服务器获取数据的功能。使用户指定的URL web应用获取图片,下载文件,读取文件内容。攻击者利用有缺陷的web应用作为代理攻击远程和内网的服务器(跳板)。
攻击的目标是从外网无法访问的内部系统
Web应用脚本提供了从其他服务器应用获得数据的功能,但没有对目标地址进行过滤和限制

2.SSRF容易出现的地方

社交分享功能
转码服务
在线翻译
图片加载/下载图片到本地
图片/文章收藏功能
云服务厂商
网站采集,网站抓取的地方
数据库内置功能
邮件系统
编码处理, 属性信息处理,文件处理
常见的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值