请求伪造漏洞和防护

  1. CSRF 跨站请求伪造,cross-site Request Forgery csrf 则是攻击者可伪造当前用户的行为,让目标服务器误以为请求由当前用户发起,并利用当前用户权限实现业务请求伪造。
  2. SSRF 服务器请求伪造,server-side Request Forgery服务器端请求伪造可让服务器执行一些在用户侧无法实现的效果,如内网探测、加载特定图片和文件等。

CSRF 跨站请求伪造
三个条件:

1 )用户处于登录状态
2)伪造的链接与正常应用请求链接-致
3 )后台未对用户业务开展合法性做校验

因为必须在用户登录的情况下,由用户主动点击伪造链接 ,方可触发漏洞,十分困难,一但发生,也是十分危险的,

防护:
主要是在没有验证用户完整性,

  1. 添加中间环节,
    添加验证过程(如点击确认,需要页面接受后在前台进行显示,不要用纯前端来做,不然没作用)和添加验证码,进行二次验证
  2. 验证用户合法性
    验证referer(容易绕过,效果不够好),利用token(token是访问页面时候生成的一次性的,且有较强随机性,安全性高),主要验证用户合法性。

SSRF:
SSRF 服务器先向用户发起请求获取某个数据,而非法用户伪造数据从而使得利用服务器高权限对系统敏感信息的访问。服务器对用户提供的 URL 或调用远程服务器的返回信息没有进行验证及过滤,导致传入服务器的数据可能存在其他非正常行为 ,而且这类非正常行为会被执行和回显.
修改访问的url路径,title来对路径进行处理。

1)对内网 Web 应用特征进行发现
2)对服务器所在内网进行各类信息探测
3)利用 File 协议读取本地文件
4)针对特定目标进行攻击时隐藏攻击发起地址

解决:
1.用户请求的合法性,
2.服务器行为的合规性
SCRF token SSRF:可利用正则表达式及黑名单的方式实现针对内网地址的过滤,以达到防护的效果.

SSRF防护:

1 )双向过滤用户端参数,严格限定输入参数、返回结果的数据类型及内容
2 )限制请求行为端口,井针对具有服务器请求业务的网络范围进行严格划分
3 )针对内网地址添加黑\白名单,参考以上实例
4)尽可能实现业务集中化调用,并尽量减少这类直接发起主动请求的业务行为
存在漏洞,而漏洞却无法被利用也是一种防护。
©️2020 CSDN 皮肤主题: 黑客帝国 设计师:上身试试 返回首页