CVE-2024-29221: Github.com/mattermost/mattermost/server/v8 Mattermost Server Improper Access Control Vulnerability
MODERATECVE-2024-29221 is a MODERATE (CVSS 4.7) mattermost server improper access control vulnerability (CWE-284: Improper Access Control) affecting Github.com/mattermost/mattermost/server/v8 libraries in the Go ecosystem. The issue involves mattermost server improper access control. Remediation is available by upgrading affected packages to version 8.1.11, 9.5.2, 9.4.4, 9.3.3.
CVE-2024-29221 at a Glance
Security Impact
CVSS: 4.7
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L).
How to Fix CVE-2024-29221
To remediate this vulnerability, upgrade all affected Github.com/mattermost/mattermost/server/v8 dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade github.com/mattermost/mattermost/server/v8 to 8.1.11
Upgrade github.com/mattermost/mattermost/server/v8 to 9.5.2
Upgrade github.com/mattermost/mattermost/server/v8 to 9.4.4
Upgrade github.com/mattermost/mattermost/server/v8 to 9.3.3
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for github.com/mattermost/mattermost/server/v8
How to Check if You Are Affected
To determine whether your application is affected by CVE-2024-29221, inspect your project dependencies for Github.com/mattermost/mattermost/server/v8:
inspect dependencies for github.com/mattermost/mattermost/server/v8
Analyze the terminal output to locate any version of Github.com/mattermost/mattermost/server/v8 in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 8.1.11), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-284: Improper Access Control, where the product does not restrict or incorrectly restricts access to a resource from an unauthorized actor. In Github.com/mattermost/mattermost/server/v8, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2024-29221 Affected Github.com/mattermost/mattermost/server/v8 Versions
4 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
github.com/mattermost/mattermost/server/v8
|
Go |
≥ 8.1.0
< 8.1.11
|
8.1.11
|
|
github.com/mattermost/mattermost/server/v8
|
Go |
≥ 9.5.0
< 9.5.2
|
9.5.2
|
|
github.com/mattermost/mattermost/server/v8
|
Go |
≥ 9.4.0
< 9.4.4
|
9.4.4
|
|
github.com/mattermost/mattermost/server/v8
|
Go |
≥ 9.3.0
< 9.3.3
|
9.3.3
|
References
Frequently Asked Questions
What is CVE-2024-29221?
Which Github.com/mattermost/mattermost/server/v8 versions are affected?
What version fixes CVE-2024-29221?
Is github.com/mattermost/mattermost/server/v8 affected?
What is the CVSS score of CVE-2024-29221?
What CWE is associated with CVE-2024-29221?
How can I check Go dependencies for CVE-2024-29221?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-w67v-ph4x-f48q",
"modified" : "2024-12-13T20:31:24Z",
"published" : "2024-04-05T09:30:39Z",
"aliases" : [ "CVE-2024-29221" ],
"summary" : "Mattermost Server Improper Access Control ",
"details" : "Improper Access Control in Mattermost Server versions 9.5.x before 9.5.2, 9.4.x before 9.4.4, 9.3.x before 9.3.3, 8.1.x before 8.1.11 lacked proper access control in the `/api/v4/users/me/teams` endpoint allowing a team admin to get the invite ID of their team, thus allowing them to invite users, even if the \"Add Members\" permission was explicitly removed from team admins. \n\n",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L"
}, {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/mattermost/mattermost/server/v8"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "8.1.0"
}, {
"fixed" : "8.1.11"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/mattermost/mattermost/server/v8"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "9.5.0"
}, {
"fixed" : "9.5.2"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/mattermost/mattermost/server/v8"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "9.4.0"
}, {
"fixed" : "9.4.4"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/mattermost/mattermost/server/v8"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "9.3.0"
}, {
"fixed" : "9.3.3"
} ]
} ]
} ],
"references" : [ {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2024-29221"
}, {
"type" : "WEB",
"url" : "https://github.com/mattermost/mattermost/commit/0dc03fbc6e3c9afb14137e72ab3fa6f5a0125b9c"
}, {
"type" : "WEB",
"url" : "https://github.com/mattermost/mattermost/commit/5cce9fed7363386afebd81a58fb5fab7d2729c8f"
}, {
"type" : "WEB",
"url" : "https://github.com/mattermost/mattermost/commit/a5784f34ba6592c6454b8742f24af9d06279e347"
}, {
"type" : "WEB",
"url" : "https://github.com/mattermost/mattermost/commit/dd3fe2991a70a41790d6bef5d31afc5957525f3c"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/mattermost/mattermost"
}, {
"type" : "WEB",
"url" : "https://mattermost.com/security-updates"
}, {
"type" : "WEB",
"url" : "https://pkg.go.dev/vuln/GO-2024-2706"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-284" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2024-04-05T17:04:41Z",
"nvd_published_at" : "2024-04-05T09:15:09Z"
}
}