Miggo Logo

CVE-2025-32093: Mattermost Fails to Restrict Certain Operations on System Admins

4.7

CVSS Score
3.1

Basic Information

EPSS Score
0.12581%
Published
4/14/2025
Updated
4/23/2025
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/mattermost/mattermost-servergo>= 10.5.0, < 10.5.210.5.2
github.com/mattermost/mattermost-servergo>= 10.4.0, < 10.4.410.4.4
github.com/mattermost/mattermost-servergo>= 9.11.0, < 9.11.109.11.10
github.com/mattermost/mattermost/server/v8go>= 10.5.0, < 10.5.210.5.2
github.com/mattermost/mattermost/server/v8go>= 10.4.0, < 10.4.410.4.4
github.com/mattermost/mattermost/server/v8go>= 9.11.0, < 9.11.109.11.10
github.com/mattermost/mattermost/server/v8go< 8.0.0-20250227102013-aa4623a931998.0.0-20250227102013-aa4623a93199

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability describes an improper permission validation allowing users with "Edit Other Users" permission to modify system administrators. The provided commit aa4623a9319943d9f54383b22b55e7d06a324e20 directly addresses this by modifying the SessionHasPermissionToUser function in server/channels/app/authorization.go. The patch introduces logic to explicitly check if the target user (userID) is a system admin. If the target is a system admin, the function now returns false unless the session holder has model.PermissionManageSystem or is unrestricted. This directly fixes the described flaw where a user with only model.PermissionEditOtherUsers could previously modify a system admin. Therefore, app.SessionHasPermissionToUser is the function where the improper permission validation occurred.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

M*tt*rmost v*rsions **.*.x <= **.*.*, **.*.x <= **.*.*, *.**.x <= *.**.* **il to r*stri*t **rt*in op*r*tions on syst*m **mins to only ot**r syst*m **mins, w*i** *llows **l***t** *r*nul*r **ministr*tion us*rs wit* t** "**it Ot**r Us*rs" p*rmission to

Reasoning

T** vuln*r**ility **s*ri**s *n improp*r p*rmission v*li**tion *llowin* us*rs wit* "**it Ot**r Us*rs" p*rmission to mo*i*y syst*m **ministr*tors. T** provi*** *ommit `****************************************` *ir**tly ***r*ss*s t*is *y mo*i*yin* t** `