CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



CVE-2026-33651

CVE-2026-33651: Blind SQL Injection in WWBN AVideo Live Schedule Reminder

Amit Schendel
Amit Schendel
Senior Security Researcher

Mar 25, 2026·6 min read·19 visits

Executive Summary (TL;DR)

Authenticated attackers can exploit a blind SQL injection flaw in AVideo <= 26.0 via the `live_schedule_id` parameter to extract sensitive database contents using time-based inference.

WWBN AVideo versions up to and including 26.0 contain a critical time-based blind SQL injection vulnerability in the `remindMe.json.php` endpoint. An authenticated attacker can supply a crafted `live_schedule_id` parameter to execute arbitrary database queries, leading to full database compromise.

Vulnerability Overview

WWBN AVideo versions up to and including 26.0 contain a high-severity time-based blind SQL injection vulnerability. The flaw manifests in the Live Schedule Reminder functionality, specifically within the plugin/Live/remindMe.json.php endpoint. This endpoint accepts HTTP requests to configure database-backed reminders for upcoming live streaming events.

The vulnerability is formally classified as CWE-89 (Improper Neutralization of Special Elements used in an SQL Command). An authenticated attacker can supply crafted SQL payloads via the HTTP request parameters. The application processes this input and eventually concatenates it directly into a backend database query without adequate sanitization or parameterization.

Successful exploitation allows an attacker to extract arbitrary data from the underlying relational database. Because the query results are not explicitly returned in the HTTP response body, the attacker relies on time-based inference techniques. This method evaluates boolean conditions by measuring server response delays, allowing the attacker to enumerate database schemas, tables, and sensitive records bit by bit.

Root Cause Analysis

The root cause of CVE-2026-33651 is improper input sanitization across multiple function boundaries combined with unsafe string concatenation in the data access layer. The execution flow begins when plugin/Live/remindMe.json.php receives the live_schedule_id parameter from the $_REQUEST array. The application passes this unvalidated string variable directly into the Live::setLiveScheduleReminder() method.

Throughout the function call chain, intermediate methods attempt to sanitize the input but fail to modify the original variable reference. For example, the new Live_schedule($id) constructor applies intval() to cast the input to an integer. However, this casting operation occurs on a distinct local variable within the ObjectYPT::getFromDb() method. The original tainted string, passed into the function hierarchy, remains entirely intact.

The unmodified, tainted string propagates down to the Scheduler_commands::getAllActiveOrToRepeat($type) method. Within this method, the application dynamically constructs a SQL SELECT statement. The vulnerable logic directly concatenates the tainted variable into a LIKE clause without utilizing prepared statements or input validation.

Code Analysis

A review of the vulnerable source code pinpoints the exact location of the unsafe string concatenation. In plugin/Scheduler/Objects/Scheduler_commands.php, the getAllActiveOrToRepeat method appends the $type parameter directly to the $sql string variable. The application then passes this string to sqlDAL::readSql(), executing the payload against the database.

// Vulnerable Implementation
$sql = "SELECT * FROM  " . static::getTableName() . " WHERE (status='" . (self::$statusActive) . "' OR status='" . (self::$statusRepeat) . "') ";
if(!empty($type)){
    $sql .= ' AND `type` LIKE "'.$type.'%" ';
}
$res = sqlDAL::readSql($sql);

The patch introduced in commit 75d45780728294ededa1e3f842f95295d3e7d144 addresses the vulnerability through two primary defense mechanisms. First, it enforces early type casting in remindMe.json.php by applying intval() directly to $_REQUEST['live_schedule_id'] before any further processing occurs. This ensures the parameter is strictly numeric at the entry point.

// Patch snippet in remindMe.json.php
+$_REQUEST['live_schedule_id'] = intval($_REQUEST['live_schedule_id']);
 $reminder = Live::setLiveScheduleReminder($_REQUEST['live_schedule_id'], ...);

Second, the patch refactors the getAllActiveOrToRepeat method to utilize parameterized queries. The implementation now defines query structures using positional placeholders (?) and passes the user input via a separate $values array. This separation of code and data prevents the database engine from interpreting malicious input as executable SQL commands.

// Patched Implementation in Scheduler_commands.php
$sql = "SELECT * FROM  " . static::getTableName() . " WHERE (status=? OR status=?) ";
$formats = 'ss';
$values = [self::$statusActive, self::$statusRepeat];
if(!empty($type)){
    $sql .= ' AND `type` LIKE ? ';
    $formats .= 's';
    $values[] = $type . '%';
}
$res = sqlDAL::readSql($sql, $formats, $values);

Exploitation

Exploiting CVE-2026-33651 requires the attacker to hold an authenticated session on the target AVideo instance. The attacker must obtain a valid PHPSESSID cookie to interact with the protected remindMe.json.php endpoint. Network access to the application is the only other prerequisite for launching the attack.

The attack relies on time-based blind SQL injection techniques due to the absence of visible database errors or query results in the HTTP response body. The attacker crafts a payload that breaks out of the intended LIKE clause using quotation marks. The payload then injects a conditional time delay function, such as SLEEP() or BENCHMARK().

curl -b "PHPSESSID=attacker-session-id" \
  "https://target-avideo.com/plugin/Live/remindMe.json.php?live_schedule_id=1%22+AND+(SELECT+1+FROM+(SELECT(SLEEP(5)))a)+AND+%221%22+LIKE+%221"

When the server evaluates the injected condition as true, the database engine executes the sleep command, intentionally delaying the HTTP response. The attacker observes this network latency to infer the truth value of the injected condition. By systematically iterating through database characters and measuring response times, the attacker extracts schemas, tables, and sensitive records continuously.

Impact Assessment

The exploitation of this vulnerability yields a high severity impact, reflected in the CVSS v3.1 base score of 8.1. The primary consequence is a total loss of database confidentiality. An attacker can systematically exfiltrate all information stored within the AVideo database instance.

This data exposure encompasses sensitive user records, including email addresses, personal details, and password hashes. If the attacker successfully cracks the exfiltrated administrative password hashes, they can escalate their privileges within the application. Administrative access allows the attacker to manipulate platform configurations, modify content, or potentially execute arbitrary code on the underlying server via administrative features.

Integrity is also significantly impacted by this vulnerability. The attacker can modify the injected SQL statements to execute UPDATE or DELETE commands, altering application data or destroying operational records. While availability is not directly targeted by the design of the vulnerability, aggressive time-based exploitation attempts can exhaust server connection pools and degrade application performance.

Remediation

The primary remediation strategy for CVE-2026-33651 is updating the WWBN AVideo installation to version 26.1 or later. The vendor has provided a comprehensive fix in commit 75d45780728294ededa1e3f842f95295d3e7d144. This update implements both input sanitization at the application edge and parameterized queries within the underlying data access layer.

Organizations unable to apply the patch immediately should implement compensating controls. Web Application Firewall (WAF) rules provide a temporary defense layer. Administrators must configure the WAF to inspect requests targeting /plugin/Live/remindMe.json.php and block common SQL injection signatures, including SLEEP, BENCHMARK, and unbalanced double quotes.

Development teams analyzing this vulnerability should observe the importance of defense-in-depth principles. Relying on downstream functions to sanitize input as a side-effect is an anti-pattern that frequently leads to systemic bypasses. Consistent use of parameterized queries for all database interactions is the only robust defense against SQL injection flaws.

Official Patches

WWBNOfficial patch fixing the SQL injection flaw
WWBNGitHub Security Advisory

Fix Analysis (1)

Technical Appendix

CVSS Score
8.1/ 10
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
EPSS Probability
0.03%
Top 93% most exploited

Affected Systems

WWBN AVideo <= 26.0

Affected Versions Detail

Product
Affected Versions
Fixed Version
AVideo
WWBN
<= 26.026.1
AttributeDetail
CWE IDCWE-89
Attack VectorNetwork
CVSS v3.1 Score8.1 (High)
Exploit StatusProof-of-Concept Available
AuthenticationRequired (Low Privileges)
EPSS Percentile6.98%
KEV StatusNot Listed
RemediationUpdate to >= 26.1

MITRE ATT&CK Mapping

T1190Exploit Public-Facing Application
Initial Access
CWE-89
Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command.

Vulnerability Timeline

Security researcher reported the flaw and fix commit 75d45780728294ededa1e3f842f95295d3e7d144 authored by Daniel Neto
2026-03-22
GitHub Security Advisory GHSA-pvw4-p2jm-chjm published
2026-03-23
CVE-2026-33651 assigned and published by GitHub (CNA)
2026-03-23
NVD publication and CVSS score assignment
2026-03-23

References & Sources

  • [1]NVD Record for CVE-2026-33651
  • [2]GitHub Advisory: GHSA-pvw4-p2jm-chjm
  • [3]Fix Commit 75d45780728294ededa1e3f842f95295d3e7d144
  • [4]Technical Write-up by Marlon Ribunal

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•about 6 hours ago•GHSA-74P7-6H78-GW8P
8.6

GHSA-74P7-6H78-GW8P: Multiple Critical Security Flaws in skillctl Agent-Skill Manager

An in-depth security audit of the skillctl command-line package manager revealed five critical and high-severity security vulnerabilities. The identified flaws span parameter-level command argument injection via the source_sha parameter, uncontrolled resource consumption (Denial of Service) through unnamed UNIX FIFOs and character devices, directory path traversal in the destination argument, commit-message trailer forgery via newline injection in skill names, and local credential exfiltration leveraging UNIX hardlinks. These vulnerabilities represent significant vectors for workstation compromise when executing agentic tasks in repositories containing untrusted files or pull requests. Remediation was introduced in version v0.1.3.

Alon Barad
Alon Barad
4 views•6 min read
•about 11 hours ago•CVE-2026-48153
8.5

CVE-2026-48153: Server-Side Request Forgery in Budibase OAuth2 SDK

CVE-2026-48153 is a Server-Side Request Forgery (SSRF) vulnerability in the Budibase OAuth2 SDK prior to version 3.39.0. It allows authenticated low-privileged users to bypass outbound network security blacklists and send arbitrary requests to internal subnets or cloud metadata services.

Alon Barad
Alon Barad
9 views•7 min read
•about 12 hours ago•GHSA-GHMH-JHMJ-WCMF
5.1

GHSA-GHMH-JHMJ-WCMF: Plaintext Storage of Enrollment Tokens at Rest in SQLite in nebula-mesh

The self-hosted Slack Nebula VPN control plane, nebula-mesh, stored high-privilege enrollment tokens in plaintext inside its SQLite database. This flaw allowed any adversary with read access to the database to retrieve pending tokens and enroll unauthorized hosts into the secure VPN mesh.

Alon Barad
Alon Barad
4 views•8 min read
•about 21 hours ago•GHSA-HVQH-JW65-WCPQ
6.1

GHSA-HVQH-JW65-WCPQ: Cross-Site Scripting (XSS) in devbridge-autocomplete

The devbridge-autocomplete package (jQuery-Autocomplete) fails to escape category headers and suggestion values when using default formatters formatGroup and formatResult. If suggestions contain untrusted input, arbitrary HTML and JavaScript execute directly in the victim's browser session.

Alon Barad
Alon Barad
4 views•6 min read
•1 day ago•CVE-2024-37155
6.5

CVE-2024-37155: Security Bypass in OpenCTI GraphQL Introspection via Whitespace and Control Character Manipulation

OpenCTI versions prior to 6.1.9 fail to properly restrict GraphQL schema introspection queries due to a weak pattern-matching implementation. An unauthenticated attacker can bypass the introspection block list by stripping whitespace and carriage returns, enabling complete reconnaissance of the GraphQL schema.

Amit Schendel
Amit Schendel
6 views•5 min read
•1 day ago•CVE-2025-58048
10.0

CVE-2025-58048: Remote Code Execution via Unrestricted Ticket Attachment Uploads in Paymenter

An unrestricted file upload vulnerability in Paymenter's support ticket system (prior to version 1.2.11) allows authenticated users to upload arbitrary PHP scripts to a web-accessible directory. The application fails to validate file extensions or MIME types before storing the files, enabling remote code execution under the web server's privilege context.

Amit Schendel
Amit Schendel
7 views•5 min read