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-1056-POC — # Snow Monkey Forms <= 12.0.3 - Eliminazione Arbitraria di File Non Autenticata tramite Path Traversal (CVE-2026-1056) | Kitploit
Strumenti/GitHubGitHub/ch4r0nn/cve-2026-1056-poc
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration Testing
GitHubch4r0nn/cve-2026-1056-poc

CVE-2026-1056-POC

# Snow Monkey Forms <= 12.0.3 - Eliminazione Arbitraria di File Non Autenticata tramite Path Traversal (CVE-2026-1056)

Vedi Repository
627 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

CVE-2026-1056-POC

Snow Monkey Forms - PoC di Eliminazione Arbitraria di File Non Autenticata

Questo repository contiene una Proof of Concept (PoC) per una vulnerabilità critica nel plugin WordPress Snow Monkey Forms (versioni <= 12.0.3). La vulnerabilità consente a un attaccante non autenticato di eliminare file arbitrari sul server tramite Path Traversal.

Riferimento: Sarawut Poolkhet (MisterHelloz)

Dettagli della Vulnerabilità

  • Tipo: Eliminazione Arbitraria di File / Path Traversal
  • Componente: Snow_Monkey\Plugin\Forms\App\Rest\Route\View.php
  • Metodo: REST API (/wp-json/snow-monkey-form/v1/view)
  • Autenticazione: Non autenticata

Analisi della Vulnerabilità

1. Punto di Ingresso e Bypass della Logica

La vulnerabilità risiede nel gestore REST API situato in Snow_Monkey\Plugin\Forms\App\Rest\Route\View.php. Il metodo send() determina il flusso in base ai parametri di input dell'utente.

root@kitploit:~
// File: App/Rest/Route/View.php

public function send() {
    Csrf::save_token();
    $method = Meta::get_method(); // Proviene da $_POST['snow-monkey-forms-meta']['method']

    // VULNERABILITÀ: Se 'method' è 'input', il controllo CSRF critico viene BYPASSATO.
    if ( 'input' === $method ) {
        return $this->_send(); // Flusso di esecuzione diretto a _send()
    }

    // Il controllo CSRF viene eseguito solo per altri metodi (es. 'confirm', 'complete')
    if ( ! Csrf::validate( Meta::get_token() ) ) { ... }

Fornendo input come parametro del metodo, un attaccante forza l'applicazione a eseguire immediatamente la funzione _send(), saltando il controllo di sicurezza Csrf::validate() progettato per prevenire azioni non autorizzate.

2. Iniezione di Path Traversal

All'interno del metodo _send(), l'applicazione tenta di eseguire una routine di pulizia per le directory temporanee specifiche dell'utente. Questa routine si basa sul parametro formid.

root@kitploit:~
// File: App/Rest/Route/View.php -> _send()

// 'form_id' proviene direttamente dai dati POST tramite la classe Meta senza sanificazione
$user_dirpath = Directory::generate_user_dirpath( $this->setting->get( 'form_id' ), false );

Directory::do_empty( $user_dirpath, true ); // Elimina ricorsivamente i contenuti
Directory::remove( $user_dirpath );         // Elimina la directory stessa

Il difetto critico risiede nel modo in cui Directory::generate_user_dirpath costruisce il percorso:

root@kitploit:~
// File: App/Model/Directory.php

public static function generate_user_dirpath( $form_id, $do_create_directory = true ) {
    $saved_token = Csrf::saved_token();
    // ... (Esiste un controllo regex per il token, ma non per form_id) ...

    $user_dir = path_join( static::get(), $saved_token );
    
    // VULNERABILITÀ: $form_id viene aggiunto direttamente. 
    // path_join() di WordPress NON risolve né sanifica le sequenze '../'.
    $user_dir = path_join( $user_dir, (string) $form_id ); 

    return $user_dir;
}

La variabile $form_id viene convertita in stringa ma non viene mai validata come intero. Ciò consente a un attaccante di iniettare caratteri di traversal delle directory (es. ../../../../).

Utilizzo

  • Trova la versione http://site-wordpress.com/wp-content/plugins/snow-monkey-forms/readme.txt

Prerequisiti

  • Python 3.x
  • Libreria requests (pip install requests)

Comando

root@kitploit:~
python exploit.py -u <TARGET_URL> -f <TRAVERSAL_PAYLOAD>
CVE-2026-1056-POC
Scarica lo strumento