Skip to main content

AVideo-Encoder EUVDEUVD-2026-112512

| CVE-2026-61572 HIGH
Server-Side Request Forgery (SSRF) (CWE-918)
2026-10-28 GitHub_M
8.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Send request with attacker-set encoder_aVideoURL/siteURL to encoder
  2. Delivery
    Encoder fetches internal or metadata URL, allowlist empty by default
  3. Exploit
    Raw response body stored in session result field
  4. Execution
    Read full response via login.json.php, harvest cloud IAM credentials
  5. Impact
    Pivot to internal HTTP/TCP/FTP services from encoder

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Exploitable against default configurations of AVideo-Encoder: the only destination gate, Streamer::isURLAllowed, permits all targets when the operator allowlist is empty, which is the default, and Login::isLogged re-authenticates from the attacker-settable encoder_aVideoURL cookie plus arbitrary nonempty encoder_user/encoder_pass cookies, so no account or operator interaction is needed. No special feature must be enabled for the core SSRF; TLS peer verification is disabled, so untrusted self-signed HTTPS certificates on internal targets are accepted. Limiting factors: the attacker must have network reachability to the encoder; full credential theft via the metadata path requires the encoder to run in a cloud environment with a reachable instance-metadata service (e.g. 169.254.169.254); the FTP variant additionally requires an ftp-scheme videoURL routed through view/youtubeDl.json.php; and if an operator has populated a non-empty allowlist, destinations are restricted to allowed sites. On 8.1.0 the raw-response reflection is removed, but private-network exemptions and login TLS-verification defaults still leave the internal-network and TLS variants exploitable.

Impact

All provided signals point to a genuine, actionable priority rather than an inflated CVSS number. The CVSS vector (AV:N/AC:L/PR:N/UI:N) is corroborated by the GHSA advisory and the PoC: exploitation is network-reachable, low-complexity, unauthenticated (PR:N), and needs no user interaction, because Login::isLogged re-authenticates from attacker-settable cookies and Streamer::isURLAllowed returns true when the operator allowlist is empty - the default state. The vuln.today decision label is 'this_week', consistent with a serious but not emergency-grade issue; there is no CISA KEV entry in the input, so active exploitation is not confirmed, and no EPSS score is provided, so widespread-exploitation probability cannot be quantified from the data given. A documented PoC exists in the GHSA advisory (working curl requests demonstrating credential exfiltration), which raises practical risk above a theoretical SSRF. The most important nuance is a patch-signal conflict: the multi-source input says a patch is 'Available from vendor' (v8.1.0), but the description and GHSA both state 8.1.0 is only an initial remediation attempt and the GHSA package record says 'fixed in: not yet patched' - so 'patch available' overstates the remediation status, and defenders should treat the private-network and TLS-verification variants as unresolved. Net: a real, high-severity unauthenticated SSRF with credential-theft impact meriting prompt action this week, with the caveat that the advertised fix is incomplete.

Exploit ScenarioDerived

An unauthenticated attacker who can reach the encoder sends a request carrying an attacker-set encoder_aVideoURL cookie (or a siteURL/videoURL field) pointing at an internal address such as the cloud instance-metadata endpoint 169.254.169.254; the encoder fetches it from its own network position and reflects the raw body back in the login response's result field, handing the attacker IAM role credentials. The GHSA advisory includes a working proof-of-concept (curl requests) demonstrating the cookie SSRF, disabled-TLS exploitation, internal TCP/port reach, and the pre-auth FTP variant. Because the vector is AV:N/AC:L/PR:N/UI:N against the default empty-allowlist configuration, no account, operator interaction, or complex conditions are required.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 28, 2026

Unauthenticated server-side request forgery in AVideo-Encoder (WWBN / AVideo project) before the 8.1.0 remediation attempt lets anyone who can reach the encoder force it to fetch arbitrary URLs from its own network position, with the raw fetched body reflected back in the JSON login response - enough to harvest cloud instance-metadata credentials or probe internal HTTP, HTTPS, TCP and FTP services. No account or operator interaction is required because the only destination gate (Streamer::isURLAllowed) allows every target when the operator allowlist is empty, which is the default, and TLS peer verification is disabled so untrusted self-signed internal HTTPS endpoints are accepted. A public proof-of-concept reproduction (curl-based) is documented in the vendor security advisory; there is no confirmed active exploitation (not in CISA KEV). Version 8.1.0 is an initial remediation that removes raw-response reflection and adds destination checks, but private-network exemptions and the login TLS-verification default leave the internal-network and TLS variants unresolved.

RemediationAI

Vendor-released patch: AVideo-Encoder 8.1.0 (release tag v8.1.0, fix commit 60430ee18f669798485e81276a1fb6d26b06eb9a) - upgrade from the vulnerable <= 8.0 range. Treat 8.1.0 as an initial remediation only: the vendor advisory and the assessment both note that private-network exemptions and the login TLS-verification default leave the internal-network and TLS variants unresolved, so operators must also configure a non-empty Streamer destination allowlist, since with an empty allowlist every target is permitted, and must explicitly disable $global['allowPrivateNetworkURLs'] and set $global['disableSSLVerification'] to false so the patched checks actually reject private/reserved destinations and enforce peer verification. Where the encoder must remain exposed, restrict its egress so it cannot reach instance-metadata endpoints such as 169.254.169.254 or unneeded internal TCP/FTP ports, and require IMDSv2-style session-token protections on cloud metadata services; note that network-level egress filtering does not fix the application flaw and can break legitimate remote-source imports. Consult https://github.com/WWBN/AVideo-Encoder/security/advisories/GHSA-cvhm-j9cp-8w59 and https://github.com/WWBN/AVideo-Encoder/releases/tag/v8.1.0 for vendor guidance, and monitor for a follow-up release completing the remediation.

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

The root cause is CWE-918 (Server-Side Request Forgery) in the PHP outbound-fetch helper url_get_contents() in objects/functions.php, which validates caller-supplied destinations only with FILTER_VALIDATE_URL - a pure syntax check - and then fetches them via file_get_contents() or cURL without rejecting private, loopback or link-local ranges. TLS verification is disabled both per-request (verify_peer/verify_peer_name false, allow_self_signed true) and process-wide via a global stream_context_set_default, which chains CWE-295 improper certificate validation and, through body reflection, CWE-200 information exposure. The unauthenticated trigger is Login::isLogged, which re-authenticates against the attacker-settable encoder_aVideoURL cookie together with arbitrary nonempty encoder_user/encoder_pass cookies on any page that checks login state; Login::run stores the raw fetched body in the session object's result field, and objects/login.json.php echoes the entire session object, so a supplied siteURL is fetched and its full response returned verbatim. The single destination control, Streamer::isURLAllowed, returns true when the operator allowlist is empty (the default). A second, pre-authentication variant routes an ftp-scheme videoURL from view/youtubeDl.json.php into FTPDownloader, where parseFtpUrl takes the host and port straight from the URL and passes them to ftp_connect, giving internal FTP reachability. Affected deployments per CPE are cpe:2.3:a:wwbn:avideo-encoder:*:*:*:*:*:*:*:*; the advisory was tested against master built from the official Dockerfile.

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 8.6 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L
vuln.today AI 9.9 CRITICAL

Unauthenticated low-complexity network SSRF against the default empty allowlist (PR:N/AC:L); impact crosses into internal/metadata systems (S:C) exposing credentials (C:H) with limited integrity/availability effect on reached services.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:L/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
None
Scope
Unchanged
Confidentiality
High
Integrity
Low
Availability
Low

Lifecycle Timeline

2
Patch available
Oct 28, 2026 - 22:04 EUVD
CVE Published
Oct 28, 2026 - 21:47 cve.org
HIGH 8.6

DescriptionCVE.org

AVideo is a video-sharing Platform. Before the initial remediation attempt in 8.1.0, url_get_contents in objects/functions.php accepts caller-controlled destinations after only FILTER_VALIDATE_URL syntax validation, without rejecting private, loopback, or link-local addresses, and disables TLS peer verification. Login::isLogged reauthenticates using the attacker-settable encoder_aVideoURL cookie together with arbitrary nonempty encoder_user and encoder_pass cookies, and Login::run stores the raw fetched body in result. The unauthenticated objects/login.json.php endpoint returns that session object, enabling full-response exfiltration through a supplied siteURL; its Streamer::isURLAllowed gate allows all sites when the operator allowlist is empty, the default. An unauthenticated remote attacker can read internal HTTP and HTTPS responses, including cloud instance-metadata credentials, and reach internal TCP services. A further pre-authentication FTP variant in view/youtubeDl.json.php routes an ftp videoURL into FTPDownloader; parseFtpUrl in objects/FTPDownloader.php accepts its host and port for ftp_connect. This also enables requests to internal FTP services. Untrusted self-signed HTTPS certificates are accepted, and no account or operator interaction is required. Version 8.1.0 contains an initial remediation attempt that removes raw-response reflection and adds destination checks, but private-network exemptions and login TLS-verification defaults leave complete remediation of the described internal-network and TLS variants unresolved.

Technical POC Analysis

CWE-918 (Server-Side Request Forgery), chained with CWE-295 (improper certificate validation) and CWE-200 (information exposure), in the AVideo-Encoder application.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-61572 is a high-severity unauthenticated server-side request forgery (SSRF) vulnerability in AVideo-Encoder that allows any reachable attacker to force the encoder to fetch arbitrary URLs and reflect the raw response, potentially exposing cloud instance-metadata credentials and internal network services. The default configuration (empty allowlist) leaves all AVideo-Encoder deployments exposed, and successful exploitation could lead to credential theft and lateral movement within the organization's cloud environment. Leadership should prioritize immediate patching and network restrictions to protect sensitive cloud infrastructure.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

Prevalence
Low
niche open-source video-platform encoder, limited enterprise deployment 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 HIGH
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Yes
Human Impact
High

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

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