Critical

Default keys on a public voice-AI media server

Sector
Healthcare-adjacent voice / contact-center AI
Test type
Public program research on related infrastructure
Severity
Critical
Year
2026

A LiveKit server on a public address still used the image's default API key and secret. The matching dashboard accepted a default basic-auth pair. With that keypair a caller who had no account could:

  • List on the order of a hundred rooms, with a TURN password on every room.
  • List participants in rooms they did not create.
  • Mint subscribe tokens that the RTC validator accepted.
  • Join a pre-existing foreign room and receive audio frames.
  • List SIP outbound trunks. Credentials were present in the API where the dashboard HTML masked them.

Negative controls: no token was 401, a wrong secret was 401, a token with subscribe turned off received no audio frames. Positive: our own room and a foreign room both returned on the order of a thousand audio frames.

We listed trunks. We did not modify them. A recording call answered success. We did not start a new recording job. Some control calls (mute, kick, delete) answered 404 or 503 that day: reachable and authorized, not a torn-down call.

What we proved

An established RTC session on a room we did not create, with audio frames, from the default keypair. Reproduced from a clean state by a second pass.

What this is not

We do not claim a bounty was paid, and we do not name the parent organization. The fact is the default key on a public media server.

Why a scanner misses it

A default-credential check that stops at "dashboard returned 200" never joins a room and never counts audio frames. The first pass stopped at a WebSocket handshake that closed. The second pass finished the join.

Buyer takeaway: The RTC port is production. Image defaults on that port are a wiretap.

Want This Level of Testing on Your Application?

Tell us about your website, API or AI-built app. We start with a free initial security review.

Live Chat Support
Our website uses cookies, which help us to improve our site and enables us to deliver the best possible service and customer experience. See our policy Accept