Skip to content
Threat Feed
low advisory

Apache Gravitino Authenticated Server-Side Request Forgery

Apache Gravitino versions 1.0.0 through 1.2.1 contain an authenticated SSRF vulnerability (CVE-2026-49876) allowing attackers to perform internal network reconnaissance or access metadata services.

CVE search metadata

CVE search record: CVE-2026-49876. Severity: medium. CVSS: 6.5. EPSS: 0.40%. KEV: no. Product: Gravitino. Brief: Apache Gravitino Authenticated Server-Side Request Forgery. Brief link: https://feed.craftedsignal.io/briefs/2026-08-apache-gravitino-ssrf/

Apache Gravitino versions 1.0.0 through 1.2.1 are susceptible to a Server-Side Request Forgery (SSRF) vulnerability identified as CVE-2026-49876. The vulnerability resides within the fetchFileFromUri() method in JobManager.java, which processes job template fields such as executable scripts, jars, and archives. The application fails to validate the destination URI provided by users, permitting the use of http, https, and ftp schemes. By registering a malicious job template, an authenticated attacker can force the server to fetch content from internal network resources or cloud metadata services. The downloaded content is subsequently written to the server's staging directory. This impact is significant for environments leveraging Gravitino in cloud deployments, where the application may be used to exfiltrate cloud instance identity tokens via the metadata service.

Attack Chain

  1. Attacker authenticates to the Apache Gravitino REST API using valid user credentials.
  2. Attacker interacts with the /api/metalakes/{metalake}/jobs/templates endpoint to register a new job template.
  3. Attacker specifies a crafted URI in the executable field of the job template, pointing to an internal resource (e.g., http://169.254.169.254/latest/meta-data/).
  4. Attacker triggers the job execution via the /api/metalakes/{metalake}/jobs/runs endpoint.
  5. The application's fetchFileFromUri() method processes the job template and initiates an outbound request to the attacker-supplied URI.
  6. The server fetches the remote resource and saves it to the local staging directory via FileUtils.copyURLToFile().
  7. Attacker retrieves the content from the staging directory or observes interactions via an OOB callback server if blind SSRF techniques are employed.

Impact

Successful exploitation allows an authenticated attacker to perform unauthorized internal reconnaissance, access sensitive configuration files, or exfiltrate cloud environment metadata (such as IAM role credentials). The scope affects all Gravitino instances between versions 1.0.0 and 1.2.1, with Ubuntu 22.04 environments explicitly confirmed as a target platform.

Recommendation

  • Upgrade Apache Gravitino to the latest version that includes the patch for CVE-2026-49876.
  • Restrict access to the Gravitino REST API to trusted users and IP ranges.
  • Enable egress filtering on the application server hosting Gravitino to prevent unauthorized connections to sensitive internal subnets and cloud metadata endpoints (e.g., 169.254.169.254).
  • Deploy the provided Sigma rule to monitor for suspicious job template registration patterns via web server logs.

Immediate actions

Patch all instances of Apache Gravitino to version 1.3.0 or later

IT Operations 48h

Threat Hunt

Search logs for unauthorized attempts to access 169.254.169.254 from web servers

T1190 high high confidence hunt now

Data: webserver_logs

Enrichment needed

  • CVE-2026-49876 (CTI) Confirm availability of vendor fix

Mitigations

Egress filtering for Gravitino server

immediate Network Security

CVE-2026-49876

Gaps

  • None

Detection coverage 1

Detect CVE-2026-49876 Exploitation - Gravitino Job Template SSRF

high

Detects exploitation of CVE-2026-49876 by monitoring for POST requests to the Gravitino job template API containing potential SSRF target URI patterns in the job template body.

sigma tactics: initial_access techniques: T1190 sources: webserver

Detection queries are available on the platform. Get full rules →