Skip to main content

AVideo-Encoder EUVDEUVD-2026-112511

| CVE-2026-61573 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-28 GitHub_M
6.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious login link with XSS payload
  2. Delivery
    Deliver link to encoder operator
  3. Exploit
    Operator opens anonymous AVideo-Encoder login page
  4. Execution
    Injected JavaScript executes in encoder origin
  5. Persist
    Read inline PHPSESSID and capture operator credentials
  6. Impact
    Perform actions as operator against encoder and upstream AVideo platform

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

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

Exploitation Conditions

Exploitation requires an attacker to deliver a crafted AVideo-Encoder login URL and a victim operator to open it (UI:R). The concrete injection points are the webSiteRootURL parameter (returned verbatim by Streamer::getStreamerURL(), absent from every objects/security.php filter list, reflected into the navbar href, a form value, and a single-quoted inline JavaScript string in view/index.header.php), the user and pass POST fields (sanitized only by stripping single quotes, so double quotes and angle brackets still break out of their HTML attributes in view/index.php), and the lang POST field (stored in the session by locale/function.php and re-reflected in view/index.php). These affect the default anonymous login interface - no special configuration is needed because the login view renders for any unauthenticated visitor (the gate checks only Login::canUpload()). Limiting factors: the attack depends on social engineering of a victim, and the highest-value impact (reading the operator session identifier exposed in inline script and acting as the operator) requires the victim to be an authenticated operator whose session is rendered. Versions prior to 8.1.0 are affected.

Impact

This is a moderate-severity reflected XSS (CWE-79) with a self-consistent set of signals rather than conflicting ones. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N, base 6.1) describes a network-reachable, unauthenticated, low-complexity flaw that nonetheless requires victim interaction (UI:R) - the attacker cannot act alone, they must persuade an operator to open a crafted login link. The scope change (S:C) is appropriate because injected script executes in the encoder's origin and can reach the upstream AVideo platform. No EPSS score and no SSVC automatable/technical-impact breakdown were supplied, so probabilistic and decision-tree signals are absent; the only priority signal is the vuln.today Decision label 'this_month', which is below act_now/emergency and consistent with a UI-gated XSS rather than a wormable server flaw. The CVE is NOT in CISA KEV, so there is no evidence of active exploitation. A detailed public PoC is present in the GitHub Security Advisory. Overall this is a genuine but not emergency issue: real impact (operator session/credential theft) is possible, but exploitation depends on social engineering of a privileged user, and the product footprint is small. Prioritize patching within the vendor-suggested window rather than treating it as an actively exploited emergency.

Exploit ScenarioDerived

An attacker crafts a login URL for a target AVideo-Encoder instance with a malicious payload in the webSiteRootURL, user, pass, or lang parameter and sends it to an operator (e.g. via email or chat). Because AC:L and the anonymous login page renders for any visitor, the only barrier is UI:R - the operator must open the link. The GHSA advisory includes working curl reproduction steps and a headless-Chromium confirmation, so a public PoC exists; when the operator loads the link, injected JavaScript runs in the encoder origin and can exfiltrate the inline-rendered PHPSESSID and typed credentials.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 28, 2026

Reflected cross-site scripting in the AVideo-Encoder login interface (WWBN/AVideo project) affects all versions prior to 8.1.0 and is reachable by unauthenticated remote attackers because the login view renders for any anonymous visitor - the gate in view/index.php only checks Login::canUpload(). By persuading a victim operator to open a crafted login URL, an attacker can execute arbitrary JavaScript in the encoder's origin, read the operator session identifier exposed in inline script, capture credentials typed into the login form, and act as the operator against the encoder and its upstream AVideo platform. The vendor has released 8.1.0, the GitHub advisory includes reproduction payloads for the affected parameters, and no confirmed active exploitation is reported; the CVSS 3.1 vector is AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N (6.1), requiring victim interaction for scope-changed, low-confidentiality/low-integrity impact.

RemediationAI

Vendor-released patch: upgrade AVideo-Encoder to 8.1.0, which is the release referenced by https://github.com/WWBN/AVideo-Encoder/releases/tag/v8.1.0 and contains the fix commit 789d75681cc9377e1cc8950ffcc0cfc9b2032b9e; the advisory at https://github.com/WWBN/AVideo-Encoder/security/advisories/GHSA-p9x3-679g-pwf5 should be tracked for updates. The patch makes three concrete changes that indicate what a manual backport would need to cover if upgrading immediately is not possible: HTML-escape the streamer URL with htmlspecialchars(..., ENT_QUOTES, 'UTF-8') everywhere it is echoed in view/index.header.php and view/index.php, replace the raw inline JavaScript interpolation of webSiteRootPath, webSiteRootURL and PHPSESSID with json_encode using JSON_HEX_TAG|JSON_HEX_APOS|JSON_HEX_QUOT|JSON_HEX_AMP, and restrict the POST/SESSION lang value in locale/function.php to a sanitized value that corresponds to an existing locale file, defaulting to en_US otherwise. Apply the same encoding to the user and pass fields, since the existing sanitizer in objects/security.php strips only single quotes. No workaround is described in the available sources; the vendor fix is the complete remediation, and priority per the vuln.today decision label is to schedule the update within the current month, with urgency driven by the fact that the injection is reachable without authentication.

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

This is CWE-79 reflected XSS in a PHP application (CPE cpe:2.3:a:wwbn:avideo-encoder, all versions before 8.1.0). Its root cause class is missing output encoding at multiple sinks reachable from the anonymous login flow. The webSiteRootURL request value is returned verbatim by Streamer::getStreamerURL() in objects/Streamer.php and is absent from every filter list in objects/security.php, so it reaches a navbar href, a form value in view/index.php and a single-quoted inline JavaScript string in view/index.header.php unfiltered - that JavaScript context sits immediately adjacent to the rendered PHPSESSID variable, which is why the defect escalates from page defacement to session-identifier disclosure. The user and pass fields pass through the only sanitizer on that path, a closure in objects/security.php that strips single quotes alone, leaving double quotes and angle brackets free to break out of double-quoted HTML attributes. Two further sinks compound the problem: view/index.header.php reflects all POST fields through json_encode without JSON_HEX_TAG, permitting a literal closing script tag to terminate the script block, and locale/function.php stores the POST lang value into the session at require-time for unescaped re-reflection in view/index.php. The corresponding fix in commit 789d756 applies htmlspecialchars with ENT_QUOTES and UTF-8 to the streamer URL, switches the inline JavaScript assignments to json_encode with JSON_HEX_TAG|JSON_HEX_APOS|JSON_HEX_QUOT|JSON_HEX_AMP, and whitelists the lang value against existing locale files. The trigger conditions for each individual parameter are documented in the advisory; exploitation requires the attacker to deliver the crafted URL and the victim to open it.

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 6.1 MEDIUM
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
vuln.today AI 6.1 MEDIUM

Unauthenticated reflected XSS reachable over the network with low complexity (PR:N/AC:L) but requiring the victim to open a crafted link (UI:R); script runs cross-scope in the encoder origin (S:C) with low confidentiality and integrity impact and no availability impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

1
Patch available
Oct 28, 2026 - 22:04 EUVD

DescriptionCVE.org

AVideo is a video-sharing Platform. Prior to 8.1.0, the anonymous login interface reflects request values into HTML and JavaScript without output encoding. In view/index.php, webSiteRootURL is returned verbatim by Streamer::getStreamerURL() in objects/Streamer.php and reaches navigation and form attributes; it also enters a single-quoted JavaScript string in view/index.header.php. It is not filtered by objects/security.php, while the user and pass fields are filtered only for single quotes, leaving double quotes and angle brackets capable of breaking out of their HTML attributes. In addition, view/index.header.php reflects POST fields using json_encode without JSON_HEX_TAG, allowing a closing script tag to break out, and locale/function.php stores the POST lang value in the session for unescaped reflection in view/index.php. An unauthenticated remote attacker who persuades a victim to open a crafted login link can execute arbitrary JavaScript in the encoder's origin. This can read the operator session identifier exposed in inline script, capture login credentials and perform actions as the operator against the encoder and its upstream platform. This issue is fixed in version 8.1.0.

Threat Intelligence Overview

Prevalence
Low
niche open-source video-platform encoder component, limited production footprint
Social Media
1
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 MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

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