What’s Vulnerable › Vulnerabilities
CVE-2023-28102: Command injection in discordrb
- Severity: critical (CVSS 9.6 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 2.6% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2023-03-27 · updated 2026-06-17
- Weakness: CWE-78
Description
discordrb is an implementation of the Discord API using Ruby. In discordrb before commit `91e13043ffa` the `encoder.rb` file unsafely constructs a shell string using the file parameter, which can potentially leave clients of discordrb vulnerable to command injection. The library is not directly exploitable: the exploit requires that some client of the library calls the vulnerable method with user input. However, if unsafe input reaches the library method, then an attacker can execute arbitrary shell commands on the host machine. Full impact will depend on the permissions of the process running the `discordrb` library and will likely not be total system access. This issue has been addressed in code, but a new release of the `discordrb` gem has not been uploaded to rubygems. This issue is also tracked as `GHSL-2022-094`.
Affected products
- shardlab discordrb: before 2023-03-08 — fixed in 2023-03-08
How to fix
Upgrade to a fixed version: shardlab discordrb 2023-03-08. Check the vendor advisory for mitigations.
References
- https://github.com/shardlab/discordrb/commit/91e13043ffa89227c3fcdc3408f06da237d28c95
- https://securitylab.github.com/advisories/GHSL-2022-094_discordrb/
- https://github.com/shardlab/discordrb/commit/91e13043ffa89227c3fcdc3408f06da237d28c95
- https://securitylab.github.com/advisories/GHSL-2022-094_discordrb/
Get alerted when CVE-2023-28102 or the next vulnerability affects your stack