Strumento di exploit CVE-2023-26469
Panoramica
Questo è uno strumento di exploit (PoC) per Jorani 1.0.0, che consente a un attaccante di ottenere l'esecuzione remota di codice tramite tecniche di path traversal e iniezione nei log.
⚠️ Avviso: questo strumento è destinato esclusivamente alla ricerca sulla sicurezza e ai test autorizzati. L'uso non autorizzato di questo strumento per condurre attacchi è illegale.
Descrizione della vulnerabilità
CVE-2023-26469 è una grave vulnerabilità di sicurezza in Jorani 1.0.0 che combina i seguenti due vettori di attacco:
- Iniezione nei log: inietta codice PHP dannoso nei file di log dell'applicazione tramite il modulo di accesso
- Path traversal: sfrutta la vulnerabilità di path traversal per accedere ai file di log iniettati ed eseguirli
Un attaccante può sfruttare questa vulnerabilità per eseguire comandi di sistema arbitrari sul server di destinazione.
Caratteristiche
- Recupero automatico del token CSRF
- Iniezione di codice PHP dannoso nei file di log
- Accesso ai file di log tramite path traversal
- Fornisce una pseudo-terminale interattiva per eseguire comandi di sistema
- Supporto per ambienti Windows (utilizza pyreadline3)
- Codifica automatica dei comandi per eludere il rilevamento
Requisiti di sistema
- Python 3.x
- Dipendenze:
- requests
- pyreadline3 (ambiente Windows)
Installazione
pip install requests pyreadline3
Utilizzo
Esempio
python poc.py http://target-server.com
Esecuzione interattiva dei comandi
Dopo che lo script è stato eseguito correttamente, viene avviata una pseudo-terminale interattiva in cui puoi eseguire comandi di sistema:
user@jorani(PSEUDO-TERM)
$ whoami
$ ls -la
$ cat /etc/passwd
Inserisci exit, quit o x per uscire dal programma.
Come funziona
- Inizializzazione della sessione: invia richieste al server di destinazione per ottenere il cookie di sessione e il token CSRF
- Iniezione del codice dannoso: sfrutta il path traversal tramite il parametro
language del modulo di accesso per iniettare codice PHP nei file di log
- Attivazione dell'esecuzione: accede alla pagina dei file di log ed esegue il codice PHP iniettato
- Esecuzione dei comandi: trasmette comandi codificati in Base64 tramite un'intestazione HTTP personalizzata e recupera il risultato dell'esecuzione
Dettagli tecnici
- Utilizza nomi di campi di intestazione HTTP generati casualmente per eludere alcuni meccanismi di sicurezza
- I comandi vengono trasmessi codificati in Base64
- Sfrutta l'intestazione
X-REQUESTED-WITH per aggirare la protezione dai reindirizzamenti
- Genera automaticamente il nome del file di log di destinazione in base alla data corrente
Dichiarazione di non responsabilità
Questo strumento è destinato esclusivamente alla ricerca sulla sicurezza e a scopi didattici. L'utente deve:
- Utilizzare questo strumento solo su sistemi esplicitamente autorizzati
- Rispettare tutte le leggi e le normative applicabili
- Assumersi la piena responsabilità di qualsiasi conseguenza derivante dall'uso di questo strumento
L'autore non è responsabile di alcun uso improprio o illegale di questo strumento.
Riferimenti
- CVE-2023-26469
- Sito ufficiale di Jorani
Licenza
Questo progetto è destinato esclusivamente a scopi didattici e di ricerca sulla sicurezza.