Linkdave Missing Authentication on REST and WebSocket endpoints
The linkdave server does not enforce authentication on its REST and WebSocket routes in versions prior to 0.1.5.
An attacker with network access to the server port can:
/ws) and receive a valid session_id in the OpReady response./stats endpoint (still public after the fix).[1] If on [>=0.1.0](https://github.com/shi-gg/linkdave/releases/tag/v0.1.0), attackers are restricted to creating, controlling and deleting players created within their own session ID.
The following routes were entirely unauthenticated in >= 0.0.1, < 0.1.5:
| Method | Path | Description |
|--------|------|-------------|
| POST | /sessions/{session_id}/players/{guild_id}/play | Start audio playback |
| POST | /sessions/{session_id}/players/{guild_id}/pause | Pause playback |
| POST | /sessions/{session_id}/players/{guild_id}/resume | Resume playback |
| POST | /sessions/{session_id}/players/{guild_id}/stop | Stop playback |
| POST | /sessions/{session_id}/players/{guild_id}/seek | Seek to position |
| PATCH | /sessions/{session_id}/players/{guild_id}/volume | Set volume |
| DELETE | /sessions/{session_id}/players/{guild_id} | Disconnect from voice channel |
| GET | /ws | WebSocket event stream |
Update to [0.1.5](https://github.com/shi-gg/linkdave/commit/0f9a00d9d549b16278db81fce6dfec350c2abc01).
```diff
+ image: ghcr.io/shi-gg/linkdave:latest
```
or
```sh
docker pull ghcr.io/shi-gg/linkdave:latest
```
After upgrading, set the LINKDAVE_PASSWORD environment variable to a strong secret value. If this variable is left unset, the server will still accept all connections without authentication even on >= 0.1.5.
Server configuration (e.g. compose.yml):
```sh
environment:
LINKDAVE_PASSWORD: ${LINKDAVE_PASSWORD}
```
```sh
echo "LINKDAVE_PASSWORD=$(openssl rand -hex 16)" >> .env
```
To restart the stack, run
```sh
docker compose up -d
```
TypeScript client (0.1.5+):
The client automatically handles authentication. Pass the password when constructing the client:
```ts
const linkdave = new LinkDaveClient({
nodes: [
{
name: "main",
url: process.env.LINKDAVE_URI,
password: process.env.LINKDAVE_PASSWORD
}
]
});
```
If upgrading is not immediately possible, restrict network access to the server's port using a firewall so it is only accessible from trusted internal IP addresses.
This issue can be reached over the network, attack complexity is low, an attacker needs no privileges on the target. No user interaction is required. Rated impact: confidentiality high, integrity high, availability high.
GHSA-xv8g-fj9h-6gmv is classified as CWE-306: Missing Authentication for Critical Function. A sensitive function can be reached without authenticating at all.
GHSA-xv8g-fj9h-6gmv is recorded against 1 package.
Published on 10 March 2026 and last revised on 23 March 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.
Details
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Affected Packages
| Software | From version | Fixed in |
|---|---|---|
| github.com/shi-gg/linkdave | — | — |
References
Similar Threats
Exploit Protection
GHSA-xv8g-fj9h-6gmv carries CVSS 9.5 Critical rating. BotEraser checks your installation against this and other known CVE records, and blocks IPs associated with exploit activity.
Check My Site For GHSA-xv8g-fj9h-6gmv →No credit card required · Results in minutes
ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.
Stay up to date with the latest from Boteraser.
We use cookies to improve your experience on our site. By using our site, you consent to cookies.
Manage your cookie preferences below:
Essential cookies enable basic functions and are necessary for the proper function of the website.
CloudFlare provides web performance and security solutions, enhancing site speed and protecting against threats.
Service URL: developers.cloudflare.com (opens in a new window)
These cookies are needed for adding comments on this website.
These cookies are used for managing login functionality on this website.
Statistics cookies collect information anonymously. This information helps us understand how visitors use our website.
Google Analytics is a powerful tool that tracks and analyzes website traffic for informed marketing decisions.
Service URL: policies.google.com (opens in a new window)
You can find more information in our Cookie Policy and Privacy Policy.