Skip to main content

AVideo-Encoder CVE-2026-61567

| EUVDEUVD-2026-112508 CRITICAL
OS Command Injection (CWE-78)
2026-10-28 GitHub_M
10.0
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Host attacker HTTP stub reachable by encoder
  2. Delivery
    Send anonymous videosListToLive.php request
  3. Exploit
    Encoder trusts attacker login JSON
  4. Install
    Fetch attacker video-list with shell payload in path
  5. C2
    Unescaped path injected into ffprobe/ffmpeg exec
  6. Execute
    Execute commands as web-server user
  7. Impact
    Steal credentials, plant web shell, deny service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No credentials, tokens, or operator configuration are required, and exploitation works against default configurations because this endpoint performs no authentication, no APISecret comparison against a stored secret, and never calls Streamer::isURLAllowed, so the operator's streamer allowlist does not limit it. The concrete prerequisites are: the encoder's view/videosListToLive.php endpoint (mapped via .htaccess to /videosListToLive) must be network-reachable by the attacker, and the attacker must be able to host an HTTP service that the encoder can resolve and reach outbound (the encoder makes server-side requests to the attacker-named webSiteRootURL with TLS verification disabled). The request needs only non-empty playlists_id and APISecret values plus user/pass/webSiteRootURL. The only real limiting factor is outbound reachability from the encoder to the attacker-controlled host; there is no user-interaction, authentication, or non-default-setting barrier.

Impact

All severity signals align toward maximum priority. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H = 10.0) describes unauthenticated, low-complexity, network-reachable remote code execution with a scope change and total confidentiality/integrity/availability impact, and the independent vuln.today decision label is 'act_now,' indicating no deferral. CWE-78 OS command injection is confirmed by both NVD and the vendor GHSA advisory (GHSA-rf63-6vwm-wv8p), and the advisory ships a complete step-by-step proof-of-concept (attacker HTTP stub plus a single curl request writing id to /tmp and firing an out-of-band callback), so the exploitation mechanism is fully documented rather than theoretical. No CISA KEV listing and no EPSS score were provided in the input, so there is no evidence of active in-the-wild exploitation and no modeled exploitation probability to cite - this is a priority driven by trivial exploitability and documented PoC, not by observed campaigns. The one caveat against indiscriminate mass exploitation is the real-world footprint: AVideo-Encoder is a niche open-source product, so widespread automated attacks are less likely than targeted hits against known deployments, but any reachable encoder should be treated as urgently exploitable.

Exploit ScenarioDerived

An attacker stands up a small HTTP server impersonating an AVideo platform, then sends one anonymous request to the encoder's view/videosListToLive.php naming that server in webSiteRootURL with any non-empty APISecret and numeric playlists_id. The encoder logs into the attacker site, trusts the returned JSON to self-grant isLogged/canStream, fetches an attacker-controlled video list, and interpolates a videos[].path value containing shell metacharacters unescaped into ffprobe/ffmpeg commands run via exec, executing arbitrary commands as the web-server user. A full working PoC with this exact flow is published in the vendor GHSA advisory.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Unauthenticated OS command injection in AVideo-Encoder before 8.1.0 gives remote attackers arbitrary command execution as the web-server user through the live-streaming endpoint view/videosListToLive.php. The endpoint requires only non-empty playlists_id and APISecret values, forwards APISecret without comparing it to any stored secret, and never applies the Streamer::isURLAllowed allowlist, so an attacker can point webSiteRootURL at an HTTP stub they control, have Login::run adopt the returned JSON as session state (self-granting isLogged and canStream), then return a video list whose videos[].path values are interpolated without escaping into ffprobe and ffmpeg commands run via exec. Successful exploitation discloses database and stored streamer credentials, permits upstream platform compromise, file modification and persistence as the web-server user, and can deny encoder service; the vendor fixed this in 8.1.0 and no public exploit code is confirmed in the supplied data, though the advisory includes a detailed working PoC recipe.

RemediationAI

Upgrade AVideo-Encoder to version 8.1.0 or later; the vendor-released patch (commit 99b8ad9b66fe5726cababbe29dce9d9695131caa, release https://github.com/WWBN/AVideo-Encoder/releases/tag/v8.1.0, advisory https://github.com/WWBN/AVideo-Encoder/security/advisories/GHSA-rf63-6vwm-wv8p) enforces Streamer::isURLAllowed plus a registered-streamer database check on webSiteRootURL and replaces every unescaped ffmpeg/ffprobe argument with escapeshellarg. Because exploitation requires no credentials or non-default configuration and is classified act_now with a CVSS base of 10.0, treat patching as urgent. If the upgrade cannot be applied immediately, the compensating control supported by the evidence is to restrict network access to the /videosListToLive path (block externally at the reverse proxy or WAF, allowing only trusted encoder callers) and to prevent the encoder host from making outbound HTTP requests to attacker-chosen hosts, since the attack depends on the encoder reaching an attacker-controlled webSiteRootURL; both controls have deployment side effects, the first may break legitimate live-list ingestion triggered over that path and the second may break legitimate access to the upstream AVideo platform. Rotate the database credentials and stored streamer credentials in videos/configuration.php after any suspected exposure, and hunt for files or processes created by the web-server user as indicators of the command execution primitive.

Affected VersionsENISA

AVideo-Encoder < 8.1.0

Affected Packages

euvd avideo_encoder fix: 8.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

AVideo-Encoder is a PHP companion service that pulls live streams from an AVideo platform and transcodes them with ffmpeg/ffprobe. The chain has three linked weaknesses: the endpoint trusts browser-supplied JSON as authentication state (CWE-345), lacks any authorization check (CWE-862), and makes server-side requests to attacker-named hosts with TLS verification disabled (CWE-918), all of which culminate in CWE-78 command injection. view/videosListToLive.php POSTs the supplied user/pass to the attacker-chosen webSiteRootURL via Login::run in objects/Login.php, then stores the decoded response in the session so Login::isLogged and Login::canStream read attacker-set booleans. Login::getStreamerURL echoes back that same webSiteRootURL, and the encoder fetches plugin/API/get.json.php from it, reading videos[].path. Those values are dropped unescaped into double-quoted ffmpeg -i arguments and into the isVideo ffprobe command built by objects/functions.php and executed with exec, so a path containing shell delimiters closes the quoted argument and runs arbitrary commands. Because the payload lives inside the fetched JSON rather than the request parameters, the endpoint's request filter never inspects it. The upstream fix adds a Streamer::isURLAllowed check plus a database lookup of registered streamer URLs, and applies escapeshellarg to both input paths and output file names.

Know when PHP gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 10.0 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
vuln.today AI 10.0 CRITICAL

Unauthenticated network request with only a trivially-hostable attacker HTTP service (AC:L, PR:N, UI:N); command execution breaks out of the PHP app to the OS and upstream platform, giving S:C and full C/I/A impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Oct 28, 2026 - 22:04 EUVD
CVE Published
Oct 28, 2026 - 21:43 cve.org
CRITICAL 10.0

DescriptionCVE.org

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.

Executive ViewAI

Why It Matters

CVE-2026-61567 is a critical vulnerability in AVideo-Encoder (versions before 8.1.0) that allows unauthenticated attackers to execute arbitrary commands on the web server. This could lead to full compromise of the streaming infrastructure, exposure of sensitive credentials, and potential disruption of live streaming services. Leadership should prioritize remediation due to the high impact on service availability and data confidentiality.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

Prevalence
Low
niche open-source video-platform encoder component, limited enterprise footprint
Social Media
3
Sightings
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

50
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +50
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy