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

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 网络安全-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绕过总结

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

相关文章
|
1天前
|
安全 网络安全 数据安全/隐私保护
社会工程学攻击:了解并预防心理操控的网络欺诈
社会工程学攻击:了解并预防心理操控的网络欺诈
14 7
|
3天前
|
存储 安全 算法
网络安全的屏障与钥匙:漏洞防御、加密技术与安全意识
【10月更文挑战第31天】在数字时代的海洋中,网络安全犹如灯塔指引着信息的安全航行。本文将探讨网络安全的三大支柱:网络漏洞的防御策略、加密技术的应用以及提高个人和组织的安全意识。通过深入浅出的分析,我们将了解如何构建坚固的网络防线,保护数据不受威胁,并提升整个社会对信息安全的认识和重视。
|
2天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第33天】在数字化时代,网络安全和信息安全已经成为了我们生活中不可或缺的一部分。然而,随着技术的发展,网络安全问题也日益严重。本文将从网络安全漏洞、加密技术、安全意识等方面进行探讨,以期提高大家的网络安全意识和技能。
|
2天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:漏洞、加密技术与安全意识的重要性
【10月更文挑战第33天】在数字时代,网络安全和信息安全是保护个人隐私和企业资产的关键。本文深入探讨了网络安全的漏洞、加密技术的应用以及提升安全意识的必要性。通过分析最新的网络攻击案例,本文提供了实用的防护措施和建议,旨在帮助读者构建更安全的网络环境。
9 0
|
3天前
|
安全 网络协议 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第32天】在数字时代,网络安全和信息安全已成为我们日常生活中不可或缺的一部分。本文将探讨网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的建议来保护您的个人信息和设备。无论您是个人用户还是企业,了解这些知识都是非常重要的。通过阅读本文,您将了解到网络安全的基本原理、常见的网络攻击方式以及如何防范它们。此外,我们还将介绍一些加密技术和安全工具,以帮助您更好地保护自己的数据和隐私。最后,我们将强调安全意识的重要性,并提供一些实用的技巧来提高您的安全意识。让我们一起努力,共同构建一个更加安全的网络环境!
8 0
|
3天前
|
SQL 安全 网络安全
网络安全漏洞与防护:加密技术与安全意识的重要性
【10月更文挑战第32天】在数字化时代,网络安全漏洞的发现和利用成为了信息安全领域的一大挑战。本文将探讨网络安全漏洞的类型、成因,以及如何通过加密技术和提高安全意识来防范这些风险。我们将分析常见的网络攻击手段,如SQL注入、跨站脚本攻击(XSS)和分布式拒绝服务(DDoS),并讨论如何使用加密算法和安全协议来保护数据。此外,文章还将强调用户在维护网络安全中的作用,包括识别钓鱼邮件、使用强密码和定期更新软件等实践。通过结合技术措施和人为因素,我们可以构建一个更加安全的网络环境。
|
6天前
|
存储 安全 算法
网络安全与信息安全:漏洞、加密技术及安全意识的重要性
如今的网络环境中,网络安全威胁日益严峻,面对此类问题,除了提升相关硬件的安全性、树立法律法规及行业准则,增强网民的网络安全意识的重要性也逐渐凸显。本文梳理了2000年以来有关网络安全意识的研究,综述范围为中国知网中篇名为“网络安全意识”的期刊、硕博论文、会议论文、报纸。网络安全意识的内涵是在“网络安全”“网络安全风险”等相关概念的发展中逐渐明确并丰富起来的,但到目前为止并未出现清晰的概念界定。此领域内的实证研究主要针对网络安全意识现状与问题,其研究对象主要是青少年。网络安全意识教育方面,很多学者总结了国外的成熟经验,但在具体运用上仍缺乏考虑我国的实际状况。 内容目录: 1 网络安全意识的相关
|
1天前
|
监控 安全 网络安全
企业网络安全:构建高效的信息安全管理体系
企业网络安全:构建高效的信息安全管理体系
12 5
|
2天前
|
存储 安全 网络安全
云计算与网络安全:探索云服务中的信息安全挑战与解决方案
【10月更文挑战第33天】在数字化时代的浪潮中,云计算以其灵活性、可扩展性和成本效益成为企业数字化转型的核心动力。然而,随之而来的网络安全问题也日益突出,成为制约云计算发展的关键因素。本文将深入探讨云计算环境中的网络安全挑战,分析云服务的脆弱性,并提出相应的信息安全策略和最佳实践。通过案例分析和代码示例,我们将展示如何在云计算架构中实现数据保护、访问控制和威胁检测,以确保企业在享受云计算带来的便利的同时,也能够维护其信息系统的安全和完整。
|
3天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第31天】本文将探讨网络安全和信息安全的重要性,以及如何通过理解和应用相关的技术和策略来保护我们的信息。我们将讨论网络安全漏洞、加密技术以及如何提高安全意识等主题。无论你是IT专业人士,还是对网络安全感兴趣的普通用户,都可以从中获得有用的信息和建议。
14 1