网络安全-SSRF漏洞原理、攻击与防御

简介: 网络安全-SSRF漏洞原理、攻击与防御

概述

SSRF(Server-Side Request Forgery,服务器端请求伪造) 是一种由攻击者构造请求,由服务端发起请求的一个安全漏洞。一般情况下,SSRF 攻击的目标是从外网无法访问的内部系统,因为服务器请求天然的可以穿越防火墙。漏洞形成的原因大多是因为服务端提供了从其他服务器应用获取数据的功能且没有对目标地址作正确的过滤和限制。

原理

SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,文档等等。SSRF漏洞通过篡改获取资源的请求发送给服务器(服务器并没有检测这个请求是否合法的),然后服务器以他的身份来访问服务器的其他资源。SSRF利用存在缺陷的Web应用作为代理攻击远程和本地的服务器。

PHP中下面函数的使用不当会导致SSRF:

  • file_get_contents()
  • fsockopen()
  • curl_exec()      

伪协议

  • file://:从文件系统中获取文件内容,如,file:///etc/passwd
  • dict://:字典服务器协议,访问字典资源,如,dict:///ip:6739/info
  • gopher://:分布式文档传递服务,可使用gopherus生成payload。

挖掘SSRF漏洞

能够对外发起网络请求的地方,就可能存在SSRF漏洞。

  • 从远程服务器请求资源(Upload from URL,Import &Export RSS feed)
  • 数据库内置功能(Oracle[UTL_HTTP]、MongoDB、MSSQL、Postgres、CouchDB)
  • 数据库内置功能(Oracle[UTL_HTTP]、MongoDB、MSSQL、Postgres、CouchDB)
  • Webmail 收取其它邮箱邮件(POP3/IMAP/SMTP)
  • 文件处理,编码处理,属性信息处理(ffpmg,ImageMaic,DOCX,PDF,XML处理器)

利用技巧

利用条件:被攻击的服务等没有开启加密传输与鉴权。

  • 端口扫描(扫描内网)
  • 攻击内网存在漏洞的服务
  • 攻击Web应用进行指纹识别及其中的漏洞
  • 如果PHP安装了expect扩展,可以通过expect协议执行系统命令
  • dos攻击
  • file 协议暴力枚举敏感文件

Redis未授权漏洞的6种利用方法

  1. 保存文件到www目录,形成webshell
  2. 创建authorized_keys文件,利用ssh 私钥登录服务器
  3. 写计划任务(/var/spool/cron/ & /etc/cron.d/)
  4. slave of 8.8.8.8 主从模式利用
  5. 写入到/etc/profile.d/ 用户环境变量修改
  6. 开启AOF持久化纯文本记录 appendfilename

攻击举例

使用靶机:pikachu

2020062310470442.png

                                                   curl

我们可以看到一个url参数。

我们修改一下

url=file:///C:/Windows/win.ini

2020062310470442.png

                                          查看到win.ini文件

我们进行了SSRF攻击,成功查看到服务器的敏感文件内容。关于Windows和Linux的敏感文件路径,可以百度一下。

2020062310470442.png

                                                  同样

绕过

正则绕过

http://xample.com@evil.com

配置域名

手上有可控域名,可将域名指向想要请求的IP

进制、特殊ip绕过

IP地址转为八、十、十六进制及IP地址省略写法(以下均代表127.0.0.1)

  • 0177.00.00.01
  •         2130706433
  •         0x7f.0x0.0x0.0x1
  •         127.1

库绕过

利用检测时使用的URL parse库与请求时使用的parse库的差异绕过,如 http://1.1.1.1 &@2.2.2.2# @3.3.3.3/ 不同的parse库的解析结果不一样

urllib2 : 1.1.1.1

requests + browsers : 2.2.2.2

urllib : 3.3.3.3

dns重定向绕过

设置两条A记录,利用dns重绑定绕过检测,第一次解析返回正常ip,第二次返回内网地址(dns解析记录缓存存活的时间为0,相当于每次解析都要去重新请求dns服务器,无法在本地缓存)

xip.io

一个很有趣的网站,域名解析为ip,例子如下:

  10.0.0.1.xip.io        resolves to   10.0.0.1

     www.10.0.0.1.xip.io   resolves to   10.0.0.1

  mysite.10.0.0.1.xip.io   resolves to   10.0.0.1

 foo.bar.10.0.0.1.xip.io   resolves to   10.0.0.1

    192.168.20.46.xip.io   resolves to   192.168.20.4

30x重定向

利用30x重定向去访问内网

使用 xray 反连平台挖掘和验证 SSRF

CRLF 编码绕过

%0d->0x0d->\r回车

%0a->0x0a->\n换行

进行HTTP头部注入

example.com/?url=http://eval.com%0d%0aHOST:fuzz.com%0d%0a 

防御

限制请求的端口只能为Web端口,只允许访问HTTP和HTTPS的请求。

限制不能访问内网的IP,以防止对内网进行攻击

屏蔽返回的详细信息

更多内容查看:网络安全-自学笔记

工具

gopherus

利用gopher协议,可以攻击

  • MySQL (Port-3306)
  • FastCGI (Port-9000)
  • Memcached (Port-11211)
  • Redis (Port-6379)
  • Zabbix (Port-10050)
  • SMTP (Port-25)

参考

安全脉搏-SSRF绕过总结

喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。

相关文章
|
30天前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
30天前
|
监控 负载均衡 安全
WebSocket网络编程深度实践:从协议原理到生产级应用
蒋星熠Jaxonic,技术宇宙中的星际旅人,以代码为舟、算法为帆,探索实时通信的无限可能。本文深入解析WebSocket协议原理、工程实践与架构设计,涵盖握手机制、心跳保活、集群部署、安全防护等核心内容,结合代码示例与架构图,助你构建稳定高效的实时应用,在二进制星河中谱写极客诗篇。
WebSocket网络编程深度实践:从协议原理到生产级应用
|
2月前
|
人工智能 运维 安全
从被动防御到主动免疫进化!迈格网络 “天机” AI 安全防护平台,助推全端防护性能提升
迈格网络推出“天机”新版本,以AI自学习、全端防护、主动安全三大核心能力,重构网络安全防线。融合AI引擎与DeepSeek-R1模型,实现威胁预测、零日防御、自动化响应,覆盖Web、APP、小程序全场景,助力企业从被动防御迈向主动免疫,护航数字化转型。
从被动防御到主动免疫进化!迈格网络 “天机” AI 安全防护平台,助推全端防护性能提升
|
2月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
308 11
|
2月前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
67 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
2月前
|
监控 安全 Devops
DevOps 流水线的网络安全盲区与防御策略
在软件研发中,DevOps流水线加速了开发与交付,但也带来严重安全风险。自动化节点和第三方集成成为攻击入口,凭证泄露、供应链渗透、配置错误和依赖混乱等问题频发。企业需构建全流程安全体系,嵌入自动化安全策略,强化访问控制与监控,提升全员安全意识,实现效率与安全的协同发展。
354 1
|
2月前
|
机器学习/深度学习 算法 搜索推荐
从零开始构建图注意力网络:GAT算法原理与数值实现详解
本文详细解析了图注意力网络(GAT)的算法原理和实现过程。GAT通过引入注意力机制解决了图卷积网络(GCN)中所有邻居节点贡献相等的局限性,让模型能够自动学习不同邻居的重要性权重。
266 0
从零开始构建图注意力网络:GAT算法原理与数值实现详解
|
2月前
|
安全 测试技术 虚拟化
VMware-三种网络模式原理
本文介绍了虚拟机三种常见网络模式(桥接模式、NAT模式、仅主机模式)的工作原理与适用场景。桥接模式让虚拟机如同独立设备接入局域网;NAT模式共享主机IP,适合大多数WiFi环境;仅主机模式则构建封闭的内部网络,适用于测试环境。内容简明易懂,便于理解不同模式的优缺点与应用场景。
306 0
|
11月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
239 17
|
11月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
198 10
下一篇
开通oss服务