[渗透测试] 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 . . .
相关推荐
Guheyunyi2 小时前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
IT科技那点事儿3 小时前
引领AI安全新时代 Accelerate 2025北亚巡展·北京站成功举办
人工智能·安全
痴人说梦梦中人5 小时前
SwaggerFuzzer:一款自动化 OpenAPI/Swagger 接口未授权访问测试工具
网络安全·渗透测试·自动化·api测试·漏洞利用·信息搜集
lubiii_6 小时前
SQL手工测试(MySQL数据库)
数据库·mysql·web安全·网络安全
恰薯条的屑海鸥8 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十四期-XXE模块)
网络·学习·安全·web安全·渗透测试
20242817李臻8 小时前
20242817李臻-安全文件传输系统-项目验收
数据库·安全
网安INF11 小时前
ElGamal加密算法:离散对数难题的安全基石
java·网络安全·密码学
DevSecOps选型指南17 小时前
2025软件供应链安全最佳实践︱证券DevSecOps下供应链与开源治理实践
网络·安全·web安全·开源·代码审计·软件供应链安全
ABB自动化17 小时前
for AC500 PLCs 3ADR025003M9903的安全说明
服务器·安全·机器人
恰薯条的屑海鸥17 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十六期-SSRF模块)
数据库·学习·安全·web安全·渗透测试·网络安全学习