GitHub Advisoryadvisory · Packagist

GHSA-gfhq-7499-f3f2 TSPortal: Any user can forge self-deletion requests for any account

HIGH Published 2026-03-27 Modified 2026-03-27 Official page ↗
Aliases
CVE-2026-29788
Ecosystem
Packagist
Packages
miraheze/ts-portal
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weaknesses
CWE-1287, CWE-283
Reviewed
2026-03-27

Affected packages

• Packagist miraheze/ts-portal: < 30 → fixed in 30

Description

Summary Conversion of empty strings to null allows disguising DPA reports as genuine self-deletion reports. Details Creating a DPA report about another user and leaving the evidence field empty causes that report to look like the reported user self-requested deletion of their data. Ingenuine report is not distinguishable from a genuine one. This can be prevented by disabling convertEmptyStringsToNull in the middleware, or by validating `evidence` in Http/Controllers/DPAController::store() to not be empty. PoC New DPA report -> Select "...someone who I suspect is under the age of 13" for the "The above username is..." field -> Add nothing to the "Evidence" field -> Submit Impact Potential unauthorized deletion of any arbitrary user's data both in the current system (TSPortal) and subsequent systems if actioned.

Related

Alias · CVE (1)

  • CVE-2026-29788 TSPortal is the WikiTide Foundation’s in-house platform used by the Trust and Safety team to manage reports, investigations, appeals, and… vulnerability

Weakness · CWE (2)

  • CWE-1287 Improper Validation of Specified Type of Input weakness
  • CWE-283 Unverified Ownership weakness

References