Description
Discourse ActivityPub adds ActivityPub support to Discourse. Prior to commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5, inbound ActivityPub processing does not sufficiently verify that the actor authenticated by the signed request matches the Activity actor and owns the referenced federated post. A remote attacker can exploit these missing identity and ownership checks to edit, delete, or reply to federated posts without the required permissions. This vulnerability is fixed with commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5.
Published: 2026-10-15
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: Privilege Escalation for Federated Content
Action: Apply Patch
AI Analysis

Impact

The vulnerability arises from insufficient verification that the actor authenticated in a signed ActivityPub request matches the activity actor and owns the referenced federated post. This oversight allows an attacker to edit, delete, or reply to federated posts in the target instance without having the necessary permissions. The weakness violates proper identity and ownership checks, leading to unauthorized content modification and potential integrity compromise. The fact that it is a distant inbound request means the attacker need not access the local system directly, but must be able to forge a valid signed request.

Affected Systems

The issue affects the Discourse ActivityPub plugin used to enable ActivityPub support in Discourse. All installations running a version of the plugin earlier than commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5 are vulnerable. Any Discourse instance that has enabled inbound ActivityPub processing with this plugin is at risk.

Risk and Exploitability

The CVSS score of 8.6 indicates a high severity level, and the EPSS score of less than 1 percent signals that, at present, exploitation is unlikely to be widespread. Because the vulnerability is not listed in the CISA KEV catalog, there is no current evidence of active exploitation. Exploitation requires the attacker to craft a signed ActivityPub request that satisfies the authentication mechanism but references a different actor or post. If successful, the attacker can alter content without authorization. The attack vector is remote, leveraging the federated protocol used between Discourse instances.

Generated by OpenCVE AI on October 16, 2026 at 20:07 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Discourse ActivityPub plugin to the patched version that includes commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5.
  • If upgrading immediately is not feasible, temporarily disable inbound ActivityPub processing or block federated post modifications from external actors to reduce the risk of unauthorized edits.
  • Configure monitoring or alerts for mismatched actor authentication attempts or unexpected content modifications to quickly detect potential exploitation.

Generated by OpenCVE AI on October 16, 2026 at 20:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 22:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Mon, 19 Oct 2026 13:30:00 +0000

Type Values Removed Values Added
First Time appeared Discourse
Discourse discourse-activity-pub
Vendors & Products Discourse
Discourse discourse-activity-pub

Thu, 15 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Description Discourse ActivityPub adds ActivityPub support to Discourse. Prior to commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5, inbound ActivityPub processing does not sufficiently verify that the actor authenticated by the signed request matches the Activity actor and owns the referenced federated post. A remote attacker can exploit these missing identity and ownership checks to edit, delete, or reply to federated posts without the required permissions. This vulnerability is fixed with commit 1c8518b0f2abdf31cbea3e0b242f74d8994a9ba5.
Title Discourse ActivityPub: Fix inbound actor validation and apply outbound request SSRF hardening
Weaknesses CWE-345
CWE-863
References
Metrics cvssV3_1

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


Subscriptions

Discourse Discourse-activity-pub
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-28T20:15:11.416Z

Reserved: 2026-06-16T14:41:54.579Z

Link: CVE-2026-55103

cve-icon Vulnrichment

Updated: 2026-10-28T20:15:07.235Z

cve-icon NVD

Status : Deferred

Published: 2026-10-15T18:17:27.163

Modified: 2026-10-28T21:16:57.890

Link: CVE-2026-55103

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-19T13:06:28Z

Weaknesses
  • CWE-345

    Insufficient Verification of Data Authenticity

  • CWE-863

    Incorrect Authorization