4.3 MEDIUM
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): Low (L)
- User Interaction (UI): None (N)
- Scope (S): Unchanged (U)
- Confidentiality (C): None (N)
- Integrity (I): Low (L)
- Availability (A): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): Low (L)
- Modified User Interaction (MUI): None (N)
- Modified Confidentiality (MC): None (N)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): Low (L)
- Modified Availability (MA): None (N)
Activity log
- Created suggestion
Forgejo 13.0.0 through 16.0.4, when "[federation] ENABLED = true" is …
Forgejo 13.0.0 through 16.0.4, when "[federation] ENABLED = true" is set, has a spoofing issue that affects identity integrity but does not allow account takeover or content modification. It does not verify that the HTTP Signature on an incoming ActivityPub activity was produced by the key belonging to the actor named in the activity body. The signature verification in routers/api/v1/activitypub/reqsignature.go validates the request signature, but the inbox activity handlers subsequently read the acting identity from the attacker-controlled JSON body without binding it to the verified signing key. Additionally, the signed Digest header is not recomputed against the received request body. A remote attacker who hosts a single valid ActivityPub actor and keypair can therefore submit signature-valid activities attributed to any actor identity they name.
Affected products
- =<16.0.4
Matching in nixpkgs
pkgs.forgejo
Self-hosted lightweight software forge
pkgs.forgejo-cli
CLI application for interacting with Forgejo
pkgs.forgejo-lts
Self-hosted lightweight software forge
pkgs.forgejo-mcp
Model Context Protocol (MCP) server for interacting with the Forgejo REST API
pkgs.forgejo-runner
Runner for Forgejo based on act
Package maintainers
-
@nycodeghg Marie Ramlow <tabmeier12+nix@gmail.com>
-
@bendlas Herwig Hochleitner <herwig@bendlas.net>
-
@pyrox0 Pyrox <pyrox@pyrox.dev>
-
@christoph-heiss Christoph Heiss <christoph@c8h4.io>
-
@adamcstephens Adam C. Stephens <happy.plan4249@valkor.net>
-
@tebriel tebriel <tebriel@frodux.in>
-
@emilylange Emily Lange <nix@emilylange.de>
-
@0xda157 0xda157 <da157@voidq.com>
-
@isabelroses Isabel Roses <isabel@isabelroses.com>
-
@nrabulinski Nikodem Rabuliński <1337-nix@nrab.lol>