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-2002-poc — Writeup et preuve de concept de CVE-2026-2002 | Kitploit
Outils/GitHubGitHub/typedefabcd1234ntd/cve-2026-2002-poc
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebSécurité WebApprentissage et Éducation
GitHubtypedefabcd1234ntd/cve-2026-2002-poc

CVE-2026-2002-poc

Writeup et preuve de concept de CVE-2026-2002

Voir le dépôt
111il y a 1 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

Résumé

Le plugin Forminator Forms – Contact Form, Payment Form & Custom Form Builder pour WordPress est vulnérable à un Cross-Site Scripting stocké via le paramètre form_name dans toutes les versions jusqu’à la 1.50.2 incluse, en raison d’un assainissement insuffisant des entrées et d’un échappement insuffisant des sorties. Cela permet à des attaquants authentifiés, disposant d’un accès de niveau administrateur, d’injecter des scripts web arbitraires dans des pages qui s’exécuteront dès qu’un utilisateur accédera à une page compromise. Le plugin permet aux administrateurs d’accorder des permissions de gestion des formulaires à des utilisateurs de niveau inférieur, ce qui pourrait rendre cette vulnérabilité exploitable par des utilisateurs tels que les abonnés.

Cause racine

La cause racine est un problème qui nécessite une fine conscience des bugs logiques : (Cette fonction dans le fichier /fields/html.php)

root@kitploit:~
public function markup( $field, $views_obj ) {
        $settings = $views_obj->model->settings;

        $html    = '';
        $label   = esc_html( self::get_property( 'field_label', $field ) );
        $id      = self::get_property( 'element_id', $field );
        $form_id = false;

        $html .= '<div class="forminator-field forminator-merge-tags" data-field="' . $id . '">';

        if ( $label ) {

            $html .= sprintf(
                '<label class="forminator-label">%s</label>',
                self::convert_markdown( $label )
            );
        }

            // Check if form_id exist.
        if ( isset( $settings['form_id'] ) ) {
            $form_id = $settings['form_id'];
        }

        // To allow iframes in content.
        add_filter( 'wp_kses_allowed_html', array( 'Forminator_Core', 'add_iframe_to_kses_allowed_html' ) );
        $content = wp_kses_post( self::get_property( 'variations', $field ) );  // root cause here
        remove_filter( 'wp_kses_allowed_html', array( 'Forminator_Core', 'add_iframe_to_kses_allowed_html' ) );

        $html .= forminator_replace_variables(
            $content,
            $form_id
        );

        $html .= '</div>';

        return $html;
    }

Ce code utilise une fonction de nettoyage (wp_kses_post) pour protéger contre les XSS des utilisateurs à privilèges réduits, mais le problème est qu’il nettoie avant de remplacer les variables. Par conséquent, un attaquant disposant des privilèges appropriés peut utiliser des balises HTML valides pour contourner wp_kses_post et injecter la charge utile JavaScript dans les variables afin de déclencher une XSS.

Preuve de concept

Un attaquant disposant du privilège Edit Form peut insérer un HTML dans un champ HTML comme ceci :

root@kitploit:~

Et ensuite modifier le form_name en :

root@kitploit:~
javascript:alert(1) or javascript:<Payload>

Gravité

ScoreGravitéVersionChaîne de vecteur
4.4MOYENNE3.1CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:L/I:L/A:N

À mon avis, ce bug, bien qu’il n’ait pas une grande sévérité, nécessite une grande finesse de compréhension dans la logique et la revue de code : comme vous pouvez le voir, une simple erreur entre deux lignes de code suffit à créer une vulnérabilité. poc

Note

Si vous accrochez avec ce type de recherche et souhaitez soutenir de futures explorations, vous pouvez faire un don et me soutenir. Je vous remercie de votre contribution.

╰(°▽°)╯

Télécharger l’outil