VYPR
High severityNVD Advisory· Published Mar 12, 2024· Updated Feb 13, 2025

Apache Pulsar: Pulsar Functions Worker Allows Unauthorized File Access and Unauthorized HTTP/HTTPS Proxying

CVE-2024-27894

Description

The Pulsar Functions Worker includes a capability that permits authenticated users to create functions where the function's implementation is referenced by a URL. The supported URL schemes include "file", "http", and "https". When a function is created using this method, the Functions Worker will retrieve the implementation from the URL provided by the user. However, this feature introduces a vulnerability that can be exploited by an attacker to gain unauthorized access to any file that the Pulsar Functions Worker process has permissions to read. This includes reading the process environment which potentially includes sensitive information, such as secrets. Furthermore, an attacker could leverage this vulnerability to use the Pulsar Functions Worker as a proxy to access the content of remote HTTP and HTTPS endpoint URLs. This could also be used to carry out denial of service attacks. This vulnerability also applies to the Pulsar Broker when it is configured with "functionsWorkerEnabled=true".

This issue affects Apache Pulsar versions from 2.4.0 to 2.10.5, from 2.11.0 to 2.11.3, from 3.0.0 to 3.0.2, from 3.1.0 to 3.1.2, and 3.2.0.

2.10 Pulsar Function Worker users should upgrade to at least 2.10.6. 2.11 Pulsar Function Worker users should upgrade to at least 2.11.4. 3.0 Pulsar Function Worker users should upgrade to at least 3.0.3. 3.1 Pulsar Function Worker users should upgrade to at least 3.1.3. 3.2 Pulsar Function Worker users should upgrade to at least 3.2.1.

Users operating versions prior to those listed above should upgrade to the aforementioned patched versions or newer versions.

The updated versions of Pulsar Functions Worker will, by default, impose restrictions on the creation of functions using URLs. For users who rely on this functionality, the Function Worker configuration provides two configuration keys: "additionalEnabledConnectorUrlPatterns" and "additionalEnabledFunctionsUrlPatterns". These keys allow users to specify a set of URL patterns that are permitted, enabling the creation of functions using URLs that match the defined patterns. This approach ensures that the feature remains available to those who require it, while limiting the potential for unauthorized access and exploitation.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Apache Pulsar Functions Worker URL-based function creation allows authenticated attackers to read arbitrary files and proxy HTTP/HTTPS requests, including access to environment secrets.

Vulnerability

Description

The Pulsar Functions Worker supports creating functions by supplying a URL to the function implementation, supporting file, http, and https schemes. This feature is designed for flexibility but lacks sufficient validation, allowing an authenticated user to point the worker to arbitrary local files or external URLs. The vulnerability (CVE-2024-27894) affects Pulsar versions 2.4.0 to 2.10.5, 2.11.0 to 2.11.3, 3.0.0 to 3.0.2, 3.1.0 to 3.1.2, and 3.2.0. It also extends to the Pulsar Broker when functionsWorkerEnabled=true [1][3][4].

Exploitation

Method

An attacker with authentication to the Pulsar Functions Worker can craft a function that references a file:// URL pointing to a sensitive file on the worker's filesystem, such as /proc/self/environ, which may contain secrets or configuration data. Additionally, the attacker can use http:// or https:// URLs to force the worker to fetch content from remote endpoints, effectively using the worker as a proxy. This capability can also be abused to perform denial-of-service attacks by requesting large or slow-to-respond resources [1][3][4].

Potential

Impact

The most severe impact is unauthorized reading of the worker process environment, which often includes sensitive data like passwords, API keys, and other secrets. Combined with the proxying capability, an attacker can exfiltrate data or scan internal networks reachable by the worker. The file read access may also expose configuration files and other sensitive documents. The denial-of-service vector could disrupt Pulsar service availability [1][3][4].

Mitigation and

Patches

Apache has released patched versions: 2.10.6, 2.11.4, 3.0.3, 3.1.3, and 3.2.1. These updates disable URL-based function creation by default. Administrators who require this functionality can re-enable it via the additionalEnabledConnectorUrlPatterns and additionalEnabledFunctionsUrlPatterns configuration keys to restrict allowed URL patterns. Users are strongly advised to upgrade to the fixed versions as soon as possible [1][4].

AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
org.apache.pulsar:pulsar-functions-workerMaven
>= 2.4.0, < 2.10.62.10.6
org.apache.pulsar:pulsar-functions-workerMaven
>= 2.11.0, < 2.11.42.11.4
org.apache.pulsar:pulsar-functions-workerMaven
>= 3.0.0, < 3.0.33.0.3
org.apache.pulsar:pulsar-functions-workerMaven
>= 3.1.0, < 3.1.33.1.3
org.apache.pulsar:pulsar-functions-workerMaven
>= 3.2.0, < 3.2.13.2.1

Affected products

3

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

6

News mentions

0

No linked articles in our index yet.