CVE-2023-46729
Executive Summary
CVE-2023-46729 is an SSRF vulnerability in the Sentry Next.js SDK that stems from unsanitized input to the tunnel endpoint. It affects organizations using the Next.js SDK tunneling feature prior to version 7.77.0. Successful exploitation allows an attacker to force the server to issue HTTP requests to arbitrary internal or external URLs and reflect responses back to the requester, resulting in a CVSS 9.3 impact that includes potential internal network reconnaissance and data exfiltration.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
The vulnerability arises because the Next.js SDK tunnel endpoint accepts user-supplied input without adequate validation or sanitization. When the tunneling feature is enabled, requests containing arbitrary destination URLs are forwarded by the SDK, and the resulting HTTP responses are returned to the client. This matches the SSRF vulnerability class, where an attacker controls the target of an outbound HTTP request initiated by the application. No additional function names, class names, or internal paths are specified in the available description beyond the tunnel endpoint itself. The issue is isolated to deployments that have explicitly activated the tunneling capability.
Exploitation Scenarios
No public PoC available; attack chain is inferred from vulnerability class.
Steps: 1) Reconnaissance/target identification involves locating publicly reachable Next.js applications that expose the Sentry SDK tunnel endpoint. 2) The specific flaw class is triggered by supplying a crafted URL parameter to the tunnel endpoint. 3) Payload/execution method at the vulnerability-class level consists of embedding an attacker-chosen destination (internal IP, localhost service, or metadata endpoint) in the request, causing the server to issue the outbound connection. 4) Post-exploitation impact includes receiving reflected responses that may disclose internal service banners, cloud metadata, or other sensitive data reachable from the application server.
Impact Assessment
Business impact centers on loss of confidentiality for internal resources and potential pivot points into cloud provider metadata services. Affected systems are Next.js deployments with Sentry SDK tunneling enabled. Blast radius is limited to environments using the vulnerable tunneling feature but can extend to full internal network visibility when the application runs with broad egress permissions. The CVSS 9.3 score reflects high confidentiality impact with network attack vector and no required authentication or user interaction.
Detection Guidance
Sigma Rule
title: Sentry Next.js SSRF via Tunnel Endpoint
id: 4f8e2c1a-9b7d-4e3f-8c2a-1d5e6f7a8b9c
status: experimental
description: Detects potential SSRF attempts against Sentry tunnel endpoint
logsource:
category: webserver
product: nginx
detection:
selection:
http.request.uri|contains: "/tunnel"
http.request.method: POST
condition: selection
fields:
- client_ip
- http.request.uri
level: high
YARA Rule
rule Sentry_NextJS_SSRF_Tunnel {
meta:
description = "Detects patterns associated with CVE-2023-46729 SSRF via tunnel endpoint"
author = "valtersit.com"
strings:
$tunnel = "/tunnel" ascii wide
$sentry = "sentry-javascript" ascii wide
condition:
$tunnel and $sentry
}
Suricata IDS Rule
alert http any any -> $HOME_NET any (msg:"Possible Sentry Next.js Tunnel SSRF Attempt"; flow:established,to_server; http.uri; content:"/tunnel"; http.method; content:"POST"; classtype:web-application-attack; sid:202346729; rev:1;)
Elastic Detection
sequence by source.ip
[http_request where url.path like "*tunnel*" and http.request.method == "POST"]
Splunk SPL Query
index=web sourcetype=nginx_access uri_path="*tunnel*" method=POST
| stats count by clientip, uri_path, status
Wazuh OSSEC Rule
<group name="sentry,ssrf,">
<rule id="100329" level="12">
<if_sid>31100</if_sid>
<url>/tunnel</url>
<description>Possible SSRF to Sentry tunnel endpoint</description>
<group>attack,web</group>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source).
- Immediate mitigations include disabling the Next.js SDK tunneling feature until a verified fix is deployed and restricting egress traffic from the application server to only required external domains. 2) Patch/upgrade steps require updating to version 7.77.0 or later once available through official channels. 3) Long-term hardening involves implementing strict URL allow-lists for any proxy or tunnel functionality and monitoring outbound connections from web application servers.
References
https://nvd.nist.gov/vuln/detail/CVE-2023-46729 https://github.com/getsentry/sentry-javascript No known threat actor campaigns or exploit-in-the-wild evidence recorded in CISA KEV.
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.