[渗透测试] SSRF 服务端请求伪造

SSRF 服务端请求伪造

1. SSRF 简介

SSRF 是一种 Web 安全漏洞,允许攻击者通过服务器端发送 HTTP 请求。利用 SSRF,攻击者可以访问服务器内部的资源,比如内部网络中的服务或敏感数据。

2. SSRF 的工作原理

SSRF 攻击通常发生在服务器接受了用户输入,并将其用来生成一个请求。在没有对输入进行适当的校验和过滤的情况下,攻击者可以控制请求目标,发送恶意请求。

示例代码:
python 复制代码
import requests

def fetch_url(url):
    response = requests.get(url)
    return response.text

# 用户输入的 URL
user_input = "http://example.com"

# 直接使用用户输入生成请求
data = fetch_url(user_input)
print(data)

在上面的例子中,user_input 可以被攻击者控制,如果输入一个恶意 URL,比如内部 IP 地址或某个敏感资源的地址,服务器将会向该地址发送请求。

3. SSRF 攻击的类型

SSRF 攻击可以分为两类:

  • 普通 SSRF:攻击者直接发送 HTTP 请求到内部资源。
  • 盲 SSRF(Blind SSRF):攻击者无法直接看到响应结果,但可以通过一些侧信道获取信息。

4. SSRF 攻击的利用场景

  • 访问内部网络中的敏感服务(如数据库、Redis、内网管理后台等)。
  • 进行端口扫描,发现内部网络中的开放端口。
  • 通过读取元数据服务,获取云服务中的凭证和配置信息(如 AWS 的 EC2 元数据服务)。
  • 读取本地文件

内网应用指纹识别(httpd.conf 部署)

plain 复制代码
<Directory "c:\www\phpMyAdmin">
	#Order allow,deny
	Order deny,allow
	deny from all
	allow from 127.0.0.1
	
<Directory>

可以利用ssrf来进行攻击

http 复制代码
http://192.168.109.100/ssrf/ssrf_curl.php?url=http://127.0.0.1/phpmyadmin

5. 防御 SSRF 攻击的方法

  • 输入验证和过滤:严格限制和验证用户输入,确保只能访问允许的资源。

  • 使用白名单:仅允许访问特定的、安全的 URL 或 IP 地址。

  • 网络隔离:将内部服务与外部访问隔离,避免外部请求直接访问内部网络。

  • 最小权限原则:限制服务器和服务的访问权限,避免不必要的网络访问权限。

  • 监控和检测:实时监控服务器请求行为,检测异常请求和潜在的 SSRF 攻击。

6. 学习资源

7. 实战演练

通过一些在线的练习平台,如 Hack The Box 或者 DVWA(Damn Vulnerable Web Application),可以进行 SSRF 漏洞的实战演练,进一步加深理解和掌握防御技术。

8. SSRF挖掘

Web功能 URL关键字
分享 转码服务 在线翻译 图片加载与下载 图片、文章收藏功能 未公开的API实现 . . . share wap url link src source target u 3g display sourceURL imageURL domain . . .
相关推荐
黎阳之光1 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
上海云盾-高防顾问1 小时前
网络安全防护发展趋势:从被动防御到主动赋能
安全·web安全
CCTI_Curran1 小时前
UL4200A是美国针对纽扣电池安全标准
安全·纽扣电池·ul4200a·纽扣电池gcc认证·美国亚马逊
做个文艺程序员1 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
是罐装可乐2 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全
Figo_Cheung2 小时前
Figo义商本体约束推理引擎 (CRE):基于已部署CRE本地模型的技术实践研究——迈向AGI时代的AI伦理安全框架
人工智能·安全
信创DevOps先锋3 小时前
DevOps工具链选型新趋势:本土化适配与安全可控成企业核心诉求
运维·安全·devops
ayt0073 小时前
Netty AbstractNioChannel源码深度剖析:NIO Channel的抽象实现
java·数据库·网络协议·安全·nio
三七吃山漆4 小时前
BUUCTF-[BJDCTF2020]Mark loves cat
web安全·网络安全·buuctf
网络安全许木5 小时前
自学渗透测试第13天(DVWA配置与信息收集命令)
网络安全·渗透测试·信息收集·kali linux