Home

Description

Oceanic is a NodeJS library for interfacing with Discord. Prior to version 1.10.4, input to functions such as `Client.rest.channels.removeBan` is not url-encoded, resulting in specially crafted input such as `../../../channels/{id}` being normalized into the url `/api/v10/channels/{id}`, and deleting a channel rather than removing a ban. Version 1.10.4 fixes this issue. Some workarounds are available. One may sanitize user input, ensuring strings are valid for the purpose they are being used for. One may also encode input with `encodeURIComponent` before providing it to the library.

PUBLISHED Reserved 2024-05-07 | Published 2024-05-14 | Updated 2024-08-02 | Assigner GitHub_M




MEDIUM: 6.5CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N

Problem types

CWE-23: Relative Path Traversal

CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Product status

< 1.10.4
affected

References

github.com/...ceanic/security/advisories/GHSA-5h5v-hw44-f6gg

github.com/...ommit/8bf8ee8373b8c565fbdbf70a609aba4fbc1a1ffe

cve.org (CVE-2024-34712)

nvd.nist.gov (CVE-2024-34712)

Download JSON