Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
🐹
🐹 Go
Not in CISA KEV
CRITICAL severity

CVE-2025-20051

CRITICAL

CVE-2025-20051 is a critical-severity (CVSS 9.9) Path Traversal vulnerability in github.com/mattermost/mattermost/server/v8. O3 Security confirms whether CVE-2025-20051 is actually reachable in your code before you act, and blocks exploitation at runtime until you patch.

Arbitrary file read via block duplication in Mattermost Boards

Also known asGHSA-v469-7wp6-7cvpGO-2025-3483
Published
Feb 24, 2025
Updated
Jul 15, 2026
Affected
5 pkgs
Patched
5 / 5
Exploits
None indexed
Exploitation data as of Jul 15, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

Real-World Exposure

5 pkgs affected
🐹github.com/mattermost/mattermost/server/v8🐹github.com/mattermost/mattermost/server/v8🐹github.com/mattermost/mattermost/server/v8🐹github.com/mattermost/mattermost/server/v8🐹github.com/mattermost/mattermost/server/v8

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.

Description

Mattermost versions 10.4.x <= 10.4.1, 9.11.x <= 9.11.7, 10.3.x <= 10.3.2, 10.2.x <= 10.2.2 fail to properly validate input when patching and duplicating a board, which allows a user to read any arbitrary file on the system via duplicating a specially crafted block in Boards.

Affected Packages

5 total 5 fixed
EcosystemPackageVulnerable rangeFix
🐹Gogithub.com/mattermost/mattermost/server/v8all versions8.0.0-20250122165010-4ed702ccff4e
🐹Gogithub.com/mattermost/mattermost/server/v89.11.0-rc1&&< 9.11.89.11.8
🐹Gogithub.com/mattermost/mattermost/server/v810.2.0-rc1&&< 10.2.310.2.3
🐹Gogithub.com/mattermost/mattermost/server/v810.3.0-rc1&&< 10.3.310.3.3
🐹Gogithub.com/mattermost/mattermost/server/v810.4.0-rc1&&< 10.4.210.4.2

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for github.com/mattermost/mattermost/server/v8. O3's reachability analysis confirms whether the vulnerable code path is actually invoked in your application, so you act on real exposure instead of every transitive match.

  2. Fix

    Update github.com/mattermost/mattermost/server/v8 to 8.0.0-20250122165010-4ed702ccff4e or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2025-20051 is resolved across your whole dependency graph.

  3. Workarounds

    If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.

  4. How O3 protects you

    O3 pinpoints whether CVE-2025-20051 is reachable in your code and exactly where to fix it, then blocks exploitation in production at runtime until the patched version is deployed.

Tailored to CVE-2025-20051. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.

Frequently Asked Questions

Mattermost versions 10.4.x <= 10.4.1, 9.11.x <= 9.11.7, 10.3.x <= 10.3.2, 10.2.x <= 10.2.2 fail to properly validate input when patching and duplicating a board, which allows a user to read any arbitrary file on the system via duplicating a specially crafted block in Boards.
O3 Security · Impact-Aware SCA

Is CVE-2025-20051 in your dependencies?

O3 detects CVE-2025-20051 across Go dependencies and uses function-level reachability to confirm whether the vulnerable code path is actually reachable — not just present. No false positives.

CVE-2025-20051: v8 (Critical 9.9) | O3 Security