CVE-2020-15278: Red DiscordBot Unauthorized Privilege Escalation Vulnerability
MODERATECVE-2020-15278 is a MODERATE (CVSS 7.7) unauthorized privilege escalation vulnerability (CWE-285: Improper Authorization) affecting Red DiscordBot libraries in the PyPI ecosystem. The issue involves unauthorized privilege escalation in mod module. Remediation is available by upgrading affected packages to version 3.4.1.
CVE-2020-15278 at a Glance
Security Impact
CVSS: 7.7
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.0/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N).
How to Fix CVE-2020-15278
To remediate this vulnerability, upgrade all affected Red DiscordBot dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
pip install Red-DiscordBot>=3.4.1
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
pip show Red-DiscordBot
How to Check if You Are Affected
To determine whether your Python environment is affected by CVE-2020-15278, inspect your installed packages using pip:
pip show Red-DiscordBot
Analyze the terminal output to locate any version of Red DiscordBot in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 3.4.1), your application is affected.
Note: The pip show Red-DiscordBot command checks currently installed packages in your active Python environment.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-285: Improper Authorization, where the product does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action. In Red DiscordBot, 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-2020-15278 Affected Red DiscordBot Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
Red-DiscordBot
|
PyPI |
< 3.4.1
|
3.4.1
|
References
Frequently Asked Questions
What is CVE-2020-15278?
Which Red DiscordBot versions are affected?
What version fixes CVE-2020-15278?
Is Red-DiscordBot affected?
What is the CVSS score of CVE-2020-15278?
What CWE is associated with CVE-2020-15278?
How can I check PyPI dependencies for CVE-2020-15278?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-mp9m-g7qj-6vqr",
"modified" : "2024-10-25T21:47:34Z",
"published" : "2020-10-27T20:30:48Z",
"aliases" : [ "CVE-2020-15278" ],
"summary" : "Unauthorized privilege escalation in Mod module",
"details" : "### Impact\nAn unauthorized privilege escalation exploit has been discovered in the Mod module: this exploit allows Discord users with a high privilege level within the guild to bypass hierarchy checks when the application is in a specific condition that is beyond that user's control. By abusing this exploit, it's possible to perform destructive actions within the guild the user has high privileges in.\n\n### Patches\nThis exploit has been fixed on version & ``3.4.1``.\n\n### Workarounds\nUnloading the Mod module with ``unload mod`` __or__, disabling the ``massban`` command with ``command disable global massban`` can render this exploit not accessible. We still highly recommend updating to ``3.4.1`` to completely patch this issue.\n\n### References\n* https://github.com/Cog-Creators/Red-DiscordBot/commit/726bfd38adfdfaef760412a68e01447b470f438b\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [Cog-Creators/Red-DiscordBot](https://github.com/Cog-Creators/Red-DiscordBot)\n* Over on our [Discord server](https://discord.gg/red)",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.0/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N"
}, {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "PyPI",
"name" : "Red-DiscordBot"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "3.4.1"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/Cog-Creators/Red-DiscordBot/security/advisories/GHSA-mp9m-g7qj-6vqr"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2020-15278"
}, {
"type" : "WEB",
"url" : "https://github.com/Cog-Creators/Red-DiscordBot/commit/726bfd38adfdfaef760412a68e01447b470f438b"
}, {
"type" : "WEB",
"url" : "https://github.com/Cog-Creators/Red-DiscordBot"
}, {
"type" : "WEB",
"url" : "https://github.com/Cog-Creators/Red-DiscordBot/releases/tag/3.4.1"
}, {
"type" : "WEB",
"url" : "https://github.com/pypa/advisory-database/tree/main/vulns/red-discordbot/PYSEC-2020-267.yaml"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-285" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2020-10-27T20:26:42Z",
"nvd_published_at" : null
}
}