背景

最近做的安全测评主要是SSRF,发现自己在这一块有挺大知识盲点,抓紧补一下。

1.介绍

  • SSRF(Server-Side Request Forgery:服务器端请求伪造),是一种攻击者利用服务端发起请求的安全漏洞。攻击者能够诱使服务端应用程序向攻击者选择的域发出HTTP请求。

  • SSRF针对的目标通常是从外部无法访问的内网系统。正因为它是由服务端发起的,所以它能请求到与它相通而与外部隔离的内网系统,可被用于作为代理来实施内网(或者远程服务器)的攻击。

2.成因

  • 大都是由于服务端提供了从其他服务器应用获取数据的功能,而没有对目标地址进行严格过滤与限制,一旦被发现,攻击者可以构造恶意请求实施攻击。

3.危害与防范

3.1 危害

  • 成功的SSRF攻击常用会导致黑客在易受攻击的应用程序本身或应用程序与之通信的其他后端系统执行未授权(恶意)操作,和对组织内数据的访问。特殊情况下,SSRF漏洞可能允许攻击者执行任意命令。
  • SSRF可能的攻击方式和危害如下:
    1. 让服务端去访问内网的一些WEB应用指纹文件来判断是否存在相应的CMS,从而收集内网CMS信息
    2. 可以使用file、dict、gopher、ftp协议进行请求访问相应的文件,可能造成文件任意读取,导致敏感信息泄漏
    3. 攻击内网web应用,可以向内部任意主机的任意端口发送精心构造的数据包,如果应用本身存在漏洞,可能造成远程命令执行
    4. 攻击内网应用程序(利用跨协议通信技术)
    5. 内网端口扫描,通过访问看是否有端口开放,从而获取内网端口开放信息
    6. 拒绝服务攻击,请求大文件,始终保持链接keep-alive alway,导致拒绝服务

3.2 防范

  • 禁止服务端跳转,防止以跳转方式绕过HTTP协议限制
  • 对于SSRF,回显是能够成功利用的重要条件,所以过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。如果WEB应用是去获取某一种类型的文件,那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。
  • 禁用不需要的协议,仅仅允许HTTP和HTTPS请求。可以防止类似于file://gopher://ftp://等引起的问题
  • 设置URL白名单或者限制内网IP,避免应用被用来获取内网数据,攻击内网
  • 限制请求的端口为HTTP常用的端口,例如80、443、8080、8090
  • 统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态

SSRF的原理和防范的更多相关文章

  1. Atitit.图片木马的原理与防范 attilax 总结

    Atitit.图片木马的原理与防范 attilax 总结 1.1. 像图片的木马桌面程序1 1.2. Web 服务端图片木马1 1.3. 利用了Windows的漏洞1 1.4. 这些漏洞不止Windo ...

  2. UDP反射DDoS攻击原理和防范

    东南大学:UDP反射DDoS攻击原理和防范 2015-04-17 中国教育网络 李刚 丁伟 反射攻击的防范措施 上述协议安装后由于有关服务默认处于开启状态,是其被利用的一个重要因素.因此,防范可以从配 ...

  3. 网络XSS攻击和CSRF攻击原理及防范

    网络XSS攻击和CSRF攻击原理及防范 原文地址:http://www.freebuf.com/articles/web/39234.html 随着Web2.0.社交网络.微博等等一系列新型的互联网产 ...

  4. 分布式拒绝服务攻击(DDoS)原理及防范【转】

    DDoS攻击概念 DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应. DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击 ...

  5. CC攻击原理及防范方法和如何防范CC攻击

    一. CC攻击的原理: CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃.CC主要是用来消耗服务器资源的,每个人都有这样的体验:当一个网页访问的人数 ...

  6. CC攻击原理及防范方法

    一. CC攻击的原理: CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃.CC主要是用来消耗服务器资源的,每个人都有这样的体验:当一个网页访问的人数 ...

  7. web安全防范之SQL注入攻击、攻击原理和防范措施

    SQL注入 攻击原理 在编写SQL语句时,如果直接将用户传入的数据作为参数使用字符串拼接的方式插入到SQL查询中,那么攻击者可以通过注入其他语句来执行攻击操作,这些攻击包括可以通过SQL语句做的任何事 ...

  8. CSRF的原理和防范措施

    a)攻击原理: i.用户C访问正常网站A时进行登录,浏览器保存A的cookie ii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参 ...

  9. Sync 攻击原理及防范技术

    据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法.相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SY ...

随机推荐

  1. 【UE4 C++】DateTime、Timespan 相关函数

    基于UKismetMathLibrary DateTime 相关函数 Timespan 运算操作相关函数见尾部附录 /** Returns the date component of A */ UFU ...

  2. python查询对像所有方法

    鉴于学习时好多参数对像都不知道是什么玩意有什么方法,搜了半天一个 """arg为一个对像,下面是打印所有对像方法"""for i, func ...

  3. “介绍一下自己吧”——记2020BUAA软工团队介绍和采访

    写在前面 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 团队作业-团队介绍和采访 团队介绍 团队名称 我们是 BUAA软软软件工程小队 ,简称 ...

  4. 单源最短路径算法:迪杰斯特拉 (Dijkstra) 算法(二)

    一.基于邻接表的Dijkstra算法 如前一篇文章所述,在 Dijkstra 的算法中,维护了两组,一组包含已经包含在最短路径树中的顶点列表,另一组包含尚未包含的顶点.使用邻接表表示,可以使用 BFS ...

  5. 利用Microsoft Graph开发微软的Exchange Calendar会议、Team

    Microsoft Graph是什么? Microsoft Graph 是 Microsoft 365 中通往数据和智能的网关. 它提供统一的可编程模型,可用于访问 Microsoft 365.Win ...

  6. 笔记本加装SSD并装系统

    1,首先了解笔记本配置信息 一般加装SSD都是120~256左右,并使用原有的机械硬盘:首先确定加装位置:1,是否支持M.2接口:假如支持,可以直接购买,拆机装上:我的笔记本不支持:所以考虑2,光驱的 ...

  7. 把字符串转换成整数 牛客网 剑指Offer

    把字符串转换成整数 牛客网 剑指Offer 题目描述 将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串 ...

  8. Python matplotlib pylab 画张图

    from pylab import * w1 = 1 w2 = 25 fs = 18 y = np.arange(-2,2,0.001) x = w1*y*log(y)-1.0/w2*exp(-(w2 ...

  9. vivo 全球商城:商品系统架构设计与实践

    一.前言 随着用户量级的快速增长,vivo官方商城v1.0的单体架构逐渐暴露出弊端:模块愈发臃肿.开发效率低下.性能出现瓶颈.系统维护困难. 从2017年开始启动的v2.0架构升级,基于业务模块进行垂 ...

  10. Redis 专栏(使用介绍、源码分析、常见问题...)

    一.介绍相关 说Redis : 介绍Redis特性,使用场景,使用Jedis操作Redis等. 二.源码分析 1. 数据结构 Redis源码分析(sds):Redis自己封装的C语言字符串类型. Re ...