fedify-fedify

Ecosystem: npm

Downloads:

Vulnerabilities from the last (months)
  • 0CriticalAffects 0 versions
  • 5HighAffects 24 versions
  • 0MediumAffects 0 versions
  • 2ModerateAffects 7 versions
  • 0LowAffects 0 versions
Severity distribution (all time)
7vulnerabilities
  • Critical0 (0.0%)
  • High5 (71.4%)
  • Medium0 (0.0%)
  • Moderate2 (28.6%)
  • Low0 (0.0%)

Monthly breakdown

  • Critical
  • High
  • Medium
  • Moderate
  • Low
  • 1 vulnerabilities
    • Critical: 0
    • High: 1
    • Medium: 0
    • Moderate: 0
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 1
    • Medium: 0
    • Moderate: 0
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 1
    • Medium: 0
    • Moderate: 0
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 1
    • Medium: 0
    • Moderate: 0
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 1
    • Medium: 0
    • Moderate: 0
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 0
    • Medium: 0
    • Moderate: 1
    • Low: 0
  • 1 vulnerabilities
    • Critical: 0
    • High: 0
    • Medium: 0
    • Moderate: 1
    • Low: 0

Vulnerabilities (7)

Known vulnerabilities affecting fedify-fedify, based on data from OSV.

Vulnerabilities affecting fedify-fedify
IDSeveritySummaryAffected versionsPublishedSource
GHSA-xw9q-2mv6-9fr8HighFedify has an incomplete SSRF mitigation after GHSA-p9cg-vqcc-grcx: validatePublicUrl allows special-use IPv4 ranges### Summary Fedify previously addressed SSRF/internal network access in GHSA-p9cg-vqcc-grcx by adding public URL validation before runtime document and media fetching. However, the current IPv4 validation logic appears incomplete. The `validatePublicUrl()` protection relies on `isValidPublicIPv4Address()` to reject non-public IPv4 destinations. The function blocks common private and local ranges such as `10.0.0.0/8`, `127.0.0.0/8`, `169.254.0.0/16`, `172.16.0.0/12`, and `192.168.0.0/16`, but it still treats several special-use, reserved, multicast, benchmarking, and carrier-grade NAT IPv4 ra
  • >= 0.11.2, < 1.9.12
  • >= 1.10.0, < 1.10.11
  • >= 2.0.0, < 2.0.19
  • >= 2.1.0, < 2.1.15
  • >= 2.2.0, < 2.2.4
GitHub (opens in a new tab)
GHSA-9rfg-v8g9-9367HighFedify has an LD-Signature Bypass via JSON-LD Named-Graph RestructuringAs told on Discord earlier, multiple projects are affected, and we would like to coordinate. For now, we are aiming at a May 6th release date, but this is not set in stone yet. ### Summary An attacker can make use of JSON-LD features to restructure a JSON-LD document that would change how Fedify interprets it without changing its Linked Data Signature, allowing them to alter a third-party signed activity they have received. ### Details The vulnerability essentially boils down to the signature being on the canonical RDF graph representation of the JSON-LD document, and JSON-LD offering many
  • >= 2.2.0, < 2.2.3
  • >= 2.1.0, < 2.1.14
  • >= 2.0.0, < 2.0.18
  • >= 1.10.0, < 1.10.10
  • < 1.9.11
GitHub (opens in a new tab)
GHSA-gm9m-gwc4-hwgpHighFedify affected by resource exhaustion caused by unbounded redirect following during remote key/document resolution### Summary `@fedify/fedify` follows HTTP redirects recursively in its remote document loader and authenticated document loader without enforcing a maximum redirect count or visited-URL loop detection. An attacker who controls a remote ActivityPub key or actor URL can force a server using Fedify to make repeated outbound requests from a single inbound request, leading to resource consumption and denial of service. ### Details Fedify verifies ActivityPub HTTP signatures by fetching the remote `keyId` during request processing. The relevant flow is `handleInboxInternal()` -> `verifyRequest()`
  • < 1.9.6
  • >= 1.10.0, < 1.10.5
  • >= 2.0.0, < 2.0.8
  • >= 2.1.0, < 2.1.1
GitHub (opens in a new tab)
GHSA-rchf-xwx2-hm93HighFedify has ReDoS Vulnerability in HTML Parsing RegexHi Fedify team! 👋 Thank you for your work on Fedify—it's a fantastic library for building federated applications. While reviewing the codebase, I discovered a Regular Expression Denial of Service (ReDoS) vulnerability that I'd like to report. I hope this helps improve the project's security. --- ## Summary A Regular Expression Denial of Service (ReDoS) vulnerability exists in Fedify's document loader. The HTML parsing regex at `packages/fedify/src/runtime/docloader.ts:259` contains nested quantifiers that cause catastrophic backtracking when processing maliciously crafted HTML responses.
  • < 1.6.13
  • >= 1.7.0, < 1.7.14
  • >= 1.8.0, < 1.8.15
  • >= 1.9.0, < 1.9.2
GitHub (opens in a new tab)
GHSA-6jcc-xgcr-q3h4High@fedify/fedify has Improper Authentication and Incorrect Authorization### Summary An authentication bypass vulnerability allows any unauthenticated attacker to impersonate any ActivityPub actor by sending forged activities signed with their own keys. Activities are processed before verifying the signing key belongs to the claimed actor, enabling complete actor impersonation across all Fedify instances ### Details The vulnerability exists in handleInboxInternal function in fedify/federation/handler.ts. The critical flaw is in the order of operations: 1. Line 1712: routeActivity() is called first, which processes the activity (either immediately or by adding
  • < 1.3.20
  • >= 1.4.0-dev.585, < 1.4.13
  • >= 1.5.0-dev.636, < 1.5.5
  • >= 1.6.0-dev.754, < 1.6.8
  • >= 1.7.0-pr.251.885, < 1.7.9
  • >= 1.8.0-dev.909, < 1.8.5
GitHub (opens in a new tab)
GHSA-c59p-wq67-24wxModerateInfinite loop and Blind SSRF found inside the Webfinger mechanism in @fedify/fedify### Summary This vulnerability allows a user to maneuver the Webfinger mechanism to perform a GET request to any internal resource on any Host, Port, URL combination regardless of present security mechanisms, and forcing the victim’s server into an infinite loop causing Denial of Service. Moreover, this issue can also be maneuvered into performing a Blind SSRF attack. ### Details The Webfinger endpoint takes a remote domain for checking accounts as a feature, however, as per the ActivityPub spec (https://www.w3.org/TR/activitypub/#security-considerations), on the security considerations secti
  • >= 1.0.13, < 1.0.14
  • >= 1.1.10, < 1.1.11
  • >= 1.2.10, < 1.2.11
  • >= 1.3.3, < 1.3.4
GitHub (opens in a new tab)
GHSA-p9cg-vqcc-grcxModerateServer Side Request Forgery (SSRF) attack in Fedify### Summary At present, when Fedify needs to retrieve an object or activity from a remote activitypub server, it makes a HTTP request to the `@id` or other resources present within the activity it has received from the web. This activity could reference an `@id` that points to an internal IP address, allowing an attacker to send request to resources internal to the fedify server's network. This applies to not just resolution of documents containing activities or objects, but also to media URLs as well. Specifically this is a [Server Side Request Forgery attack](https://owasp.org/www-commun
  • < 0.9.2
  • >= 0.10.0, < 0.10.2
  • >= 0.11.0, < 0.11.2
GitHub (opens in a new tab)
  • GHSA-xw9q-2mv6-9fr8High
    Fedify has an incomplete SSRF mitigation after GHSA-p9cg-vqcc-grcx: validatePublicUrl allows special-use IPv4 ranges
    • >= 0.11.2, < 1.9.12
    • >= 1.10.0, < 1.10.11
    • +3 more
    Affected versions:
    • >= 0.11.2, < 1.9.12
    • >= 1.10.0, < 1.10.11
    • >= 2.0.0, < 2.0.19
    • >= 2.1.0, < 2.1.15
    • >= 2.2.0, < 2.2.4

    ### Summary Fedify previously addressed SSRF/internal network access in GHSA-p9cg-vqcc-grcx by adding public URL validation before runtime document and media fetching. However, the current IPv4 validation logic appears incomplete. The `validatePublicUrl()` protection relies on `isValidPublicIPv4Address()` to reject non-public IPv4 destinations. The function blocks common private and local ranges such as `10.0.0.0/8`, `127.0.0.0/8`, `169.254.0.0/16`, `172.16.0.0/12`, and `192.168.0.0/16`, but it still treats several special-use, reserved, multicast, benchmarking, and carrier-grade NAT IPv4 ra

    CVE: CVE-2026-50131

  • GHSA-9rfg-v8g9-9367High
    Fedify has an LD-Signature Bypass via JSON-LD Named-Graph Restructuring
    • >= 2.2.0, < 2.2.3
    • >= 2.1.0, < 2.1.14
    • +3 more
    Affected versions:
    • >= 2.2.0, < 2.2.3
    • >= 2.1.0, < 2.1.14
    • >= 2.0.0, < 2.0.18
    • >= 1.10.0, < 1.10.10
    • < 1.9.11

    As told on Discord earlier, multiple projects are affected, and we would like to coordinate. For now, we are aiming at a May 6th release date, but this is not set in stone yet. ### Summary An attacker can make use of JSON-LD features to restructure a JSON-LD document that would change how Fedify interprets it without changing its Linked Data Signature, allowing them to alter a third-party signed activity they have received. ### Details The vulnerability essentially boils down to the signature being on the canonical RDF graph representation of the JSON-LD document, and JSON-LD offering many

    CVE: CVE-2026-42462

  • GHSA-gm9m-gwc4-hwgpHigh
    Fedify affected by resource exhaustion caused by unbounded redirect following during remote key/document resolution
    • < 1.9.6
    • >= 1.10.0, < 1.10.5
    • +2 more
    Affected versions:
    • < 1.9.6
    • >= 1.10.0, < 1.10.5
    • >= 2.0.0, < 2.0.8
    • >= 2.1.0, < 2.1.1

    ### Summary `@fedify/fedify` follows HTTP redirects recursively in its remote document loader and authenticated document loader without enforcing a maximum redirect count or visited-URL loop detection. An attacker who controls a remote ActivityPub key or actor URL can force a server using Fedify to make repeated outbound requests from a single inbound request, leading to resource consumption and denial of service. ### Details Fedify verifies ActivityPub HTTP signatures by fetching the remote `keyId` during request processing. The relevant flow is `handleInboxInternal()` -> `verifyRequest()`

    CVE: CVE-2026-34148

  • GHSA-rchf-xwx2-hm93High
    Fedify has ReDoS Vulnerability in HTML Parsing Regex
    • < 1.6.13
    • >= 1.7.0, < 1.7.14
    • +2 more
    Affected versions:
    • < 1.6.13
    • >= 1.7.0, < 1.7.14
    • >= 1.8.0, < 1.8.15
    • >= 1.9.0, < 1.9.2

    Hi Fedify team! 👋 Thank you for your work on Fedify—it's a fantastic library for building federated applications. While reviewing the codebase, I discovered a Regular Expression Denial of Service (ReDoS) vulnerability that I'd like to report. I hope this helps improve the project's security. --- ## Summary A Regular Expression Denial of Service (ReDoS) vulnerability exists in Fedify's document loader. The HTML parsing regex at `packages/fedify/src/runtime/docloader.ts:259` contains nested quantifiers that cause catastrophic backtracking when processing maliciously crafted HTML responses.

    CVE: CVE-2025-68475

  • GHSA-6jcc-xgcr-q3h4High
    @fedify/fedify has Improper Authentication and Incorrect Authorization
    • < 1.3.20
    • >= 1.4.0-dev.585, < 1.4.13
    • +4 more
    Affected versions:
    • < 1.3.20
    • >= 1.4.0-dev.585, < 1.4.13
    • >= 1.5.0-dev.636, < 1.5.5
    • >= 1.6.0-dev.754, < 1.6.8
    • >= 1.7.0-pr.251.885, < 1.7.9
    • >= 1.8.0-dev.909, < 1.8.5

    ### Summary An authentication bypass vulnerability allows any unauthenticated attacker to impersonate any ActivityPub actor by sending forged activities signed with their own keys. Activities are processed before verifying the signing key belongs to the claimed actor, enabling complete actor impersonation across all Fedify instances ### Details The vulnerability exists in handleInboxInternal function in fedify/federation/handler.ts. The critical flaw is in the order of operations: 1. Line 1712: routeActivity() is called first, which processes the activity (either immediately or by adding

    CVE: CVE-2025-54888

  • GHSA-c59p-wq67-24wxModerate
    Infinite loop and Blind SSRF found inside the Webfinger mechanism in @fedify/fedify
    • >= 1.0.13, < 1.0.14
    • >= 1.1.10, < 1.1.11
    • +2 more
    Affected versions:
    • >= 1.0.13, < 1.0.14
    • >= 1.1.10, < 1.1.11
    • >= 1.2.10, < 1.2.11
    • >= 1.3.3, < 1.3.4

    ### Summary This vulnerability allows a user to maneuver the Webfinger mechanism to perform a GET request to any internal resource on any Host, Port, URL combination regardless of present security mechanisms, and forcing the victim’s server into an infinite loop causing Denial of Service. Moreover, this issue can also be maneuvered into performing a Blind SSRF attack. ### Details The Webfinger endpoint takes a remote domain for checking accounts as a feature, however, as per the ActivityPub spec (https://www.w3.org/TR/activitypub/#security-considerations), on the security considerations secti

    CVE: CVE-2025-23221

  • GHSA-p9cg-vqcc-grcxModerate
    Server Side Request Forgery (SSRF) attack in Fedify
    • < 0.9.2
    • >= 0.10.0, < 0.10.2
    • +1 more
    Affected versions:
    • < 0.9.2
    • >= 0.10.0, < 0.10.2
    • >= 0.11.0, < 0.11.2

    ### Summary At present, when Fedify needs to retrieve an object or activity from a remote activitypub server, it makes a HTTP request to the `@id` or other resources present within the activity it has received from the web. This activity could reference an `@id` that points to an internal IP address, allowing an attacker to send request to resources internal to the fedify server's network. This applies to not just resolution of documents containing activities or objects, but also to media URLs as well. Specifically this is a [Server Side Request Forgery attack](https://owasp.org/www-commun

    CVE: CVE-2024-39687

Showing 1-7 of 7 vulnerabilities