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-2023-32692-CodeIgniter4 — Applicazione di esempio, vulnerabile a CVE-2023-32692 (Iniezione di regole di validazione nel framework PHP CodeIgniter) | Kitploit
Strumenti/GitHubGitHub/mogwailabs/cve-2023-32692-codeigniter4
Analisi delle VulnerabilitàAnalisi del CodiceSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneLab e Pratica
GitHubmogwailabs/cve-2023-32692-codeigniter4

CVE-2023-32692-CodeIgniter4

Applicazione di esempio, vulnerabile a CVE-2023-32692 (Iniezione di regole di validazione nel framework PHP CodeIgniter)

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
Vedi Repository
23 mesi faNon ancora revisionato

CVE-2023-32692 — Iniezione di regole di validazione in CodeIgniter 4

CVE-2023-32692 è una vulnerabilità di code injection nel framework PHP CodeIgniter 4, che interessa le versioni dalla 4.0.0 alla 4.3.4. È stata corretta nella versione 4.3.5 (rilasciata a giugno 2023). Questo è un ambiente demo per chiunque voglia sperimentarla.

I dettagli della vulnerabilità sono disponibili sul blog di MOGWAI LABS.

Ambiente PoC

Questo repository contiene un'applicazione CodeIgniter 4 minimale che dimostra la vulnerabilità. Include una configurazione per Dev Container così puoi avviarla direttamente da VS Code (o qualsiasi editor compatibile) senza bisogno di un'installazione PHP locale.

Il container Docker sottostante usa PHP 8.3 e installa l'estensione XDebug per consentire il debug. I moduli PHP aggiuntivi, richiesti dal framework CodeIgniter, sono installati come "Devcontainer features" locali, principalmente perché volevo provare quella funzionalità.

Sono incluse le seguenti estensioni VS Code (tutte installate all'interno del container, non nella tua istanza di VS Code):

EstensioneScopo
xdebug.php-debugSupporto PHP XDebug — consente di eseguire passo-passo il percorso di codice vulnerabile
bmewburn.vscode-intelephense-clientPHP Intelephense per la navigazione del codice
humao.rest-clientClient HTTP per inviare i template di richiesta inclusi

Installazione

  1. Apri il repository in VS Code e riaprilo nel Dev Container quando richiesto (richiede Docker). Potrebbe volerci un po'.
  2. I pacchetti richiesti vengono installati automaticamente tramite composer durante la creazione del container; non è necessario fare nulla.
  3. Copia il template dell'ambiente:
root@kitploit:~
cp env .env

Avvio dell'Applicazione di Esempio

Il Dev Container include Apache, ma il server di sviluppo integrato di PHP è sufficiente per questo PoC. Apri un terminale dentro VS Code ed esegui:

root@kitploit:~
./spark serve --host 0.0.0.0

L'applicazione sarà disponibile all'indirizzo http://localhost:8080. Puoi accedervi anche dall'esterno del container, usando il tuo normale browser web.


Debug con XDebug

Il file .vscode/launch.json configura XDebug per l'ascolto sulla porta TCP 9003 (impostata anche nel Dockerfile del Dev Container):

root@kitploit:~
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003
        }
    ]
}

Avvia il listener di debug prima di avviare il server di sviluppo PHP: fai clic sull'icona "Run and Debug" nella barra laterale di VS Code e premi il pulsante play accanto a "Listen for Xdebug".

Debug dell'applicazione all'interno del Dev Container


Codice Vulnerabile

L'endpoint vulnerabile è implementato in app/Controllers/Poc.php. Espone due route:

RouteDescrizione
POST /poc/updateEndpoint vulnerabile — usa regole di validazione basate su stringhe
POST /poc/updateSafeEndpoint sicuro — usa regole di validazione basate su array

Imposta un breakpoint in Poc::update() e traccia come il segnaposto {id} viene espanso nella stringa della regola all'interno del motore di validazione di CodeIgniter. Il codice pertinente del framework si trova in vendor/codeigniter4/framework/system/Validation/Validation.php.


Template di Richiesta HTTP

La cartella http_requests/ contiene template pronti all'uso per l'estensione REST Client di VS Code:

FileDescrizione

Apri un qualsiasi file .http e fai clic su Send Request sopra il blocco di richiesta per eseguirlo.


Scarica lo strumento
reqular_request.http
Richiesta legittima di base — nessuna iniezione, la validazione passa normalmente
basic_poc.httpInietta regole di validazione aggiuntive tramite il parametro id
system_call.httpSfrutta l'iniezione per chiamare system() ed eseguire un comando del sistema operativo (touch /tmp/pwn)