AVideo-Encoder: unauthenticated command execution through streamer login trust
- Published
- Last modified
- Status
- published
- Known exploitation
- Not listed in CISA KEV
- Fix
- Fixed in 8.1.0
- Public exploit
- None on Exploit-DB
Summary
AVideo, an open-source video-sharing platform, is affected before version 8.1.0, specifically its live-streaming encoder component. An unauthenticated remote attacker could run arbitrary operating-system commands on the server as the web-server user, which could expose database and stored credentials, modify files, establish persistence, and disrupt the encoder service.
Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.
Read the original description
AVideo is a video-sharing Platform. Prior to 8.1.0, the live-streaming endpoint `view/videosListToLive.php` accepts an attacker-named streamer in `webSiteRootURL`, calls `Login::run` in `objects/Login.php`, and trusts the returned JSON as session state. An unauthenticated remote attacker who can host an HTTP service reachable by the encoder can self-grant `isLogged` and `canStream` without legitimate credentials. The endpoint requires only nonempty `playlists_id` and `APISecret` values; `APISecret` is forwarded rather than checked against a stored secret. This path never calls `Streamer::isURLAllowed` and therefore works regardless of the operator's streamer allowlist. It fetches a second attacker-controlled video-list response and interpolates `videos[].path` without shell argument escaping into `ffprobe` and `ffmpeg` commands passed to `exec`; `isAudio` calls `isVideo` to reach the `ffprobe` command. Paths containing shell delimiters execute arbitrary operating-system commands as the web-server user. The request filter does not inspect the video-list JSON. This can disclose database and stored streamer credentials, compromise the upstream platform using those credentials, modify files owned by the web-server user, establish persistence, and deny encoder service. This issue is fixed in version 8.1.0.
Affected versions
- WWBN AVideo-Encoder
fixed in 8.1.0