Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-1056-POC — # Snow Monkey Forms <= 12.0.3 - Suppression arbitraire de fichiers non authentifiée via traversée de chemin (CVE-2026-1056) | Kitploit
Outils/GitHubGitHub/ch4r0nn/cve-2026-1056-poc
Analyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'Intrusion
GitHubch4r0nn/cve-2026-1056-poc

CVE-2026-1056-POC

# Snow Monkey Forms <= 12.0.3 - Suppression arbitraire de fichiers non authentifiée via traversée de chemin (CVE-2026-1056)

Voir le dépôt
62il y a 7 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-1056-POC

Snow Monkey Forms - Preuve de concept de suppression arbitraire de fichiers non authentifiée

Ce dépôt contient une preuve de concept (PoC) pour une vulnérabilité critique dans le plugin WordPress Snow Monkey Forms (versions <= 12.0.3). La vulnérabilité permet à un attaquant non authentifié de supprimer des fichiers arbitraires sur le serveur via un Path Traversal.

Référence : Sarawut Poolkhet (MisterHelloz)

Détails de la vulnérabilité

  • Type : Suppression arbitraire de fichiers / Path Traversal
  • Composant : Snow_Monkey\Plugin\Forms\App\Rest\Route\View.php
  • Méthode : API REST (/wp-json/snow-monkey-form/v1/view)
  • Authentification : Non authentifiée

Analyse de la vulnérabilité

1. Point d'entrée et contournement de la logique

La vulnérabilité réside dans le gestionnaire d'API REST situé dans Snow_Monkey\Plugin\Forms\App\Rest\Route\View.php. La méthode send() dicte le flux en fonction des paramètres d'entrée de l'utilisateur.

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

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

    // VULNERABILITY: If 'method' is 'input', the critical CSRF check is BYPASSED.
    if ( 'input' === $method ) {
        return $this->_send(); // Direct execution flow to _send()
    }

    // CSRF check is only performed for other methods (e.g., 'confirm', 'complete')
    if ( ! Csrf::validate( Meta::get_token() ) ) { ... }

En fournissant input comme paramètre de méthode, un attaquant force l'application à exécuter immédiatement la fonction _send(), contournant ainsi le contrôle de sécurité Csrf::validate() destiné à empêcher les actions non autorisées.

2. Injection de Path Traversal

Dans la méthode _send(), l'application tente d'exécuter une routine de nettoyage pour les répertoires temporaires spécifiques à l'utilisateur. Cette routine repose sur le paramètre formid.

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

// 'form_id' is sourced directly from POST data via Meta class without sanitization
$user_dirpath = Directory::generate_user_dirpath( $this->setting->get( 'form_id' ), false );

Directory::do_empty( $user_dirpath, true ); // Recursively delete contents
Directory::remove( $user_dirpath );         // Delete the directory itself

La faille critique réside dans la façon dont Directory::generate_user_dirpath construit le chemin :

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

public static function generate_user_dirpath( $form_id, $do_create_directory = true ) {
    $saved_token = Csrf::saved_token();
    // ... (Regex check for token exists, but not for form_id) ...

    $user_dir = path_join( static::get(), $saved_token );
    
    // VULNERABILITY: $form_id is appended directly. 
    // WordPress path_join() does NOT resolve or sanitize '../' sequences.
    $user_dir = path_join( $user_dir, (string) $form_id ); 

    return $user_dir;
}

La variable $form_id est convertie en chaîne de caractères mais n'est jamais validée comme étant un entier. Cela permet à un attaquant d'injecter des caractères de traversée de répertoire (par exemple, ../../../../).

Utilisation

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

Prérequis

  • Python 3.x
  • Bibliothèque requests (pip install requests)

Commande

root@kitploit:~
python exploit.py -u <TARGET_URL> -f <TRAVERSAL_PAYLOAD>
CVE-2026-1056-POC
Télécharger l’outil