CVE-2026-41061
Received Received - Intake
Stored XSS in WWBN AVideo Duration Validation Allows Script Injection

Publication date: 2026-04-21

Last updated on: 2026-04-24

Assigner: GitHub, Inc.

Description
WWBN AVideo is an open source video platform. In versions 29.0 and below, the `isValidDuration()` regex at `objects/video.php:918` uses `/^[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}/` without a `$` end anchor, allowing arbitrary HTML/JavaScript to be appended after a valid duration prefix. The crafted duration is stored in the database and rendered without HTML escaping via `echo Video::getCleanDuration()` on trending pages, playlist pages, and video gallery thumbnails, resulting in stored cross-site scripting. Commit bcba324644df8b4ed1f891462455f1cd26822a45 contains a fix.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-04-21
Last Modified
2026-04-24
Generated
2026-05-07
AI Q&A
2026-04-22
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
wwbn avideo to 29.0 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

The vulnerability is a stored cross-site scripting (XSS) issue in WWBN AVideo versions 29.0 and below, which allows arbitrary HTML/JavaScript to be injected and rendered without proper escaping.

Such vulnerabilities can lead to unauthorized access to user data, session hijacking, or manipulation of displayed content, potentially impacting the confidentiality and integrity of data.

While the CVE description does not explicitly mention compliance with standards like GDPR or HIPAA, stored XSS vulnerabilities generally pose risks to data protection and privacy requirements mandated by these regulations.

Therefore, organizations using affected versions of WWBN AVideo may face compliance challenges if this vulnerability is exploited, as it could lead to unauthorized disclosure or alteration of personal data.


Can you explain this vulnerability to me?

This vulnerability exists in WWBN AVideo versions 29.0 and below. It involves the function isValidDuration() in the file objects/video.php at line 918, which uses a regular expression that lacks an end anchor ($). This allows an attacker to append arbitrary HTML or JavaScript code after a valid duration prefix.

The crafted duration containing malicious code is stored in the database and later rendered on trending pages, playlist pages, and video gallery thumbnails without proper HTML escaping. This results in stored cross-site scripting (XSS), enabling attackers to execute malicious scripts in users' browsers.

A fix for this issue is included in commit bcba324644df8b4ed1f891462455f1cd26822a45.


How can this vulnerability impact me? :

This stored cross-site scripting (XSS) vulnerability can allow attackers to execute arbitrary JavaScript in the context of users visiting affected pages. This can lead to session hijacking, defacement, theft of sensitive information, or performing actions on behalf of the user.

Because the malicious code is stored in the database and rendered on multiple pages, the impact can be widespread affecting many users.


What immediate steps should I take to mitigate this vulnerability?

To mitigate this vulnerability, update WWBN AVideo to a version that includes the fix from commit bcba324644df8b4ed1f891462455f1cd26822a45, which corrects the regex in isValidDuration() to properly anchor the pattern and prevent stored cross-site scripting.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability can be detected by checking for stored cross-site scripting (XSS) payloads in the video duration fields within the WWBN AVideo platform database or by monitoring HTTP requests and responses for suspicious duration values containing HTML or JavaScript.

Specifically, you can look for duration strings that match the pattern of a valid time prefix followed by additional HTML or JavaScript code, such as payloads containing tags like <img> with onerror attributes.

Suggested commands include querying the database for duration fields containing suspicious patterns and inspecting HTTP traffic for malicious payloads.

  • Use SQL queries to find suspicious duration entries, for example: SELECT * FROM videos WHERE duration REGEXP '^[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}.*<.*';
  • Monitor HTTP POST requests to the endpoint 'aVideoEncoderReceiveImage.json.php' for duration parameters containing HTML or JavaScript payloads.
  • Use web proxy tools (e.g., Burp Suite, OWASP ZAP) to intercept and analyze requests and responses for injected scripts in duration fields.

Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart