Oceanic allows unsanitized user input to lead to path traversal in URLs
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| OceanicJS | Oceanic | before 1.10.4 | 1.10.4 | Patch available | CNA |
| — | oceanic.js (npm) | before 1.10.4 | 1.10.4 | Patch available | GHSA-5h5v-hw44-f6gg |
- Oceanic VendorOceanicJS Affected before 1.10.4 Fixed in 1.10.4 Patch available CNA
- oceanic.js (npm) Vendor— Affected before 1.10.4 Fixed in 1.10.4 Patch available GHSA-5h5v-hw44-f6gg
Remediation
- Fix · CNA Oceanic (OceanicJS) Fixed in 1.10.4
- Fix · GHSA-5h5v-hw44-f6gg oceanic.js (npm) Fixed in 1.10.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-34712
- 2026-10-03 Alias added: GHSA-5h5v-hw44-f6gg
References
Sources
- CVE-2024-34712 · CVE Program
- CVE-2024-34712 · NVD
- FIRST EPSS
- GHSA-5h5v-hw44-f6gg · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences