Description
Pixelfed's SearchController (behind the auth middleware) accepts a URL via its remote-search parameters and fetches it server-side through ActivityPubFetchService, whose validateUrl() only blocks the literal hosts 127.0.0.1, localhost, and ::1 and requires https, without checking the resolved IP against private, internal, or link-local ranges (e.g. 169.254.169.254). Optional DNS validation is disabled by default and, when enabled, only confirms a DNS record exists without filtering by IP range. The fetch response body is returned to the requester only when the Content-Type matches an ActivityPub content type, making this a semi-blind but authenticated SSRF primitive reachable by any logged-in user.
Published: 2026-08-05
Score: 4.3 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Pixelfed’s SearchController, protected by authentication, accepts a remote URL as a search parameter and retrieves the content server‑side using ActivityPubFetchService. The URL validation logic only rejects the literal loopback hosts 127.0.0.1, localhost, and ::1, demands HTTPS, and does not check whether the resolved IP belongs to a private, internal, or link‑local range. Consequently, a logged‑in user can cause the server to issue outbound requests to arbitrary destinations, including internal services such as instance metadata endpoints or other private networks. Because the fetch response body is returned only when the Content‑Type matches an ActivityPub content type, the vulnerability behaves like a semi‑blind SSRF that can still exfiltrate data hidden behind specific content types.

Affected Systems

Any Pixelfed deployment built with the pixelfed:pixelfed package that includes the SearchController and ActivityPubFetchService without a patched URL validator is affected. No specific version range is documented in the advisory, so all current releases should be examined for the same code paths.

Risk and Exploitability

The CVSS score of 5.7 indicates moderate severity; the EPSS score is not listed, and the vulnerability is not featured in the CISA KEV catalog. Exploitation requires authentication, so the attack surface is limited to any active user of the application. While the SSRF is not fully blind, the restriction to ActivityPub content types limits the ease of data extraction, yet the ability to reach internal systems still poses a notable risk to confidentiality and availability.

Generated by OpenCVE AI on August 5, 2026 at 12:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a version of Pixelfed that contains the secure URL validation patch for ActivityPubFetchService.
  • If an upgrade is not immediately possible, disable the remote-search feature in the SearchController or configure it to reject external URLs entirely.
  • Modify the link‑host validation logic to reject any resolved IP that falls within private, internal, or link‑local ranges, ensuring only public IP addresses are reachable.

Generated by OpenCVE AI on August 5, 2026 at 12:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

References
History

Wed, 05 Aug 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 05 Aug 2026 13:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 5.7, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}

cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}


Wed, 05 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
First Time appeared Pixelfed
Pixelfed pixelfed
Vendors & Products Pixelfed
Pixelfed pixelfed

Wed, 05 Aug 2026 11:15:00 +0000

Type Values Removed Values Added
Description Pixelfed's SearchController (behind the auth middleware) accepts a URL via its remote-search parameters and fetches it server-side through ActivityPubFetchService, whose validateUrl() only blocks the literal hosts 127.0.0.1, localhost, and ::1 and requires https, without checking the resolved IP against private, internal, or link-local ranges (e.g. 169.254.169.254). Optional DNS validation is disabled by default and, when enabled, only confirms a DNS record exists without filtering by IP range. The fetch response body is returned to the requester only when the Content-Type matches an ActivityPub content type, making this a semi-blind but authenticated SSRF primitive reachable by any logged-in user.
Title Pixelfed: Authenticated SSRF via Remote URL Search
Weaknesses CWE-918
References
Metrics cvssV3_1

{'score': 5.7, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

Pixelfed Pixelfed
cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-05T12:52:19.731Z

Reserved: 2026-08-05T10:53:53.176Z

Link: CVE-2026-71246

cve-icon Vulnrichment

Updated: 2026-08-05T12:33:05.248Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T13:00:16Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)