☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2024-41803

CVE-2024-41803 SQL Injection in Xibo
📅 PUBLISHED: 2024-07-30 15:49 UTC 🔄 UPDATED: 2026-09-23 20:34 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.44%
👁️
0.44% probability
11.1× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Patch available — upgrade to latest release
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
4.9
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-41803 is a SQL injection vulnerability discovered in the Xibo Content Management System (CMS). The flaw resides in the API routes responsible for filtering DataSets, allowing an authenticated user to inject specially crafted values into the API endpoint for viewing DataSet data. This enables the attacker to extract arbitrary data from the Xibo database, potentially compromising sensitive information such as user credentials, configuration details, and other stored data. The vulnerability has a CVSS score of 4.9 (Medium), with a vector indicating a network-based attack requiring high privileges but no user interaction. Patches are available in versions 3.3.12 and 4.0.14.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

Xibo is a PHP-based CMS. The vulnerability is not directly related to a package manager (NPM, PyPI, Go, Ruby) but is a server-side application flaw. However, organizations using Xibo should verify the integrity of their installation and ensure no malicious modifications have been introduced via compromised dependencies or third-party plugins.

CVSS Breakdown & Threat Level

  • CVSS Score: 4.9 (Medium)
  • Attack Vector: Network (AV:N)
  • Attack Complexity: Low (AC:L)
  • Privileges Required: High (PR:H) – requires an authenticated user with access to DataSet API
  • User Interaction: None (UI:N)
  • Scope: Unchanged (S:U)
  • Confidentiality Impact: High (C:H) – attacker can read arbitrary database contents
  • Integrity Impact: None (I:N)
  • Availability Impact: None (A:N)

Threat Level: Medium. While the attack requires authentication, the potential for data exfiltration is significant, especially if the database contains sensitive information like user passwords or API keys.

Deep Dive & Mechanics

The vulnerability exists in the API endpoint used for filtering DataSets. Xibo’s DataSet feature allows users to create and manage structured data. The API endpoint likely accepts user-supplied parameters (e.g., filter criteria) that are directly concatenated into SQL queries without proper sanitization or parameterization.

Root Cause: The application fails to use prepared statements or parameterized queries when building SQL queries for DataSet filtering. Instead, user input is directly interpolated into the SQL string, allowing an attacker to break out of the intended query structure and inject arbitrary SQL commands.

Attack Vector: An authenticated user sends a crafted HTTP request to the DataSet API endpoint (e.g., /api/dataset/data or similar) with malicious payloads in filter parameters. The payload is designed to close the existing query and append a UNION SELECT or other SQL commands to extract data from other tables.

Example Payload (Conceptual):

GET /api/dataset/data?filter=1' UNION SELECT username,password FROM users --

This would cause the SQL query to become:

SELECT * FROM dataset_data WHERE filter = '1' UNION SELECT username,password FROM users --'

The double dash (--) comments out the rest of the original query, allowing the attacker to retrieve data from the users table.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual PHP):

$filter = $_GET['filter'];
$query = "SELECT * FROM dataset_data WHERE column = '$filter'";
$result = mysqli_query($conn, $query);

Patched Code (Using Prepared Statements):

$filter = $_GET['filter'];
$stmt = $conn->prepare("SELECT * FROM dataset_data WHERE column = ?");
$stmt->bind_param("s", $filter);
$stmt->execute();
$result = $stmt->get_result();

The patched version uses a prepared statement with a parameterized query, which prevents SQL injection by separating SQL logic from user data.

Exploitation & Lab Setup

Red Team (Offensive)

Lab Setup:

  1. Install a vulnerable version of Xibo (e.g., 3.3.11 or 4.0.13) on a local server.
  2. Create a user account with access to DataSet functionality.
  3. Identify the DataSet API endpoint (e.g., via documentation or network traffic analysis).

Exploitation Steps:

  1. Authenticate to Xibo and obtain a session token or API key.
  2. Send a crafted request to the DataSet API endpoint with a SQL injection payload in a filter parameter.
  3. Use UNION-based SQL injection to extract data from other tables (e.g., users, config).
  4. Example request using curl:
    curl -X GET "http://target/api/dataset/data?filter=1' UNION SELECT username,password FROM users --" -H "Authorization: Bearer <token>"
    
  5. Parse the response to extract sensitive data.

Note: No public exploit code is available at this time. The above is a conceptual demonstration.

Blue Team (Defensive)

Detection:

  • Monitor API logs for unusual SQL-like patterns in filter parameters (e.g., UNION, SELECT, --, ').
  • Use a Web Application Firewall (WAF) to block SQL injection attempts.
  • Implement database activity monitoring to detect anomalous queries.

Mitigation:

  • Immediately upgrade to Xibo 3.3.12 or 4.0.14.
  • If patching is not possible, restrict access to the DataSet API to trusted users only.
  • Apply virtual patching via WAF rules to block SQL injection payloads.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP requests to /api/dataset/data or similar endpoints containing SQL keywords (UNION, SELECT, FROM, WHERE, --, ').
    • Unusual response sizes or error messages containing SQL syntax errors.
  • Host IOCs:

    • Unexpected database queries in logs (e.g., SELECT * FROM users from a DataSet API call).
    • Modified or new files in the Xibo installation directory (e.g., backdoor scripts).
  • Log IOCs:

    • Web server logs showing requests with encoded SQL payloads (e.g., %27%20UNION%20SELECT).
    • Database logs showing queries with injected SQL syntax.

Detection Engineering

YARA Rule

rule CVE_2024_41803_SQLi_Xibo {
    meta:
        description = "Detects SQL injection attempts targeting Xibo DataSet API"
        author = "Valters IT"
        date = "2024-10-01"
        reference = "CVE-2024-41803"
    strings:
        $s1 = "UNION" nocase
        $s2 = "SELECT" nocase
        $s3 = "FROM" nocase
        $s4 = "dataset" nocase
        $s5 = "filter" nocase
    condition:
        all of ($s1, $s2, $s3) and any of ($s4, $s5)
}

Sigma Rule

title: SQL Injection Attempt Against Xibo DataSet API
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects SQL injection patterns in HTTP requests to Xibo DataSet API
author: Valters IT
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'GET'
        cs-uri-query|contains:
            - 'UNION'
            - 'SELECT'
            - 'FROM'
            - '--'
            - "'"
        cs-uri-stem|contains: '/api/dataset'
    condition: selection
falsepositives:
    - Legitimate use of SQL keywords in filter values (rare)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-41803 Xibo DataSet SQL Injection Attempt"; flow:to_server,established; content:"/api/dataset"; http_uri; content:"UNION"; http_uri; nocase; content:"SELECT"; http_uri; nocase; content:"FROM"; http_uri; nocase; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate Action: Upgrade Xibo to version 3.3.12 or 4.0.14, which contain the fix for this vulnerability.
  2. Workaround: If upgrading is not possible, restrict access to the DataSet API to only trusted IP addresses and users. Implement input validation to reject SQL special characters.
  3. Long-term: Adopt secure coding practices, including parameterized queries and prepared statements for all database interactions. Conduct regular security audits and penetration testing.
  4. Monitoring: Enable detailed logging for API endpoints and database queries. Use a SIEM to correlate logs and detect suspicious activity.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-41803/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.