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
wpBullet | Kitploit
Outils/GitHubGitHub/owasp/wpbullet
Scanners de VulnérabilitésAnalyse Statique de Code (SAST)Analyse des VulnérabilitésAnalyse de CodeSécurité WebTests d'Intrusion
GitHubowasp/wpbullet

wpBullet

Voir le dépôt
627il y a 4 ansVérifié par Kitploit

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

alt text

wpBullet Build Status Python 2.x|3.x License

Une analyse statique de code pour les plugins/thèmes WordPress (et PHP)

Installation

Clonez simplement le dépôt, installez les dépendances et exécutez le script.

  • $ git clone https://github.com/webarx-security/wpbullet wpbullet
  • $ cd wpbullet
  • $ pip install -r requirements.txt
  • $ python wpbullet.py

Utilisation

Options disponibles :

root@kitploit:~
--path (required) System path or download URL 
Examples:
--path="/path/to/plugin"
--path="https://wordpress.org/plugins/example-plugin"
--path="https://downloads.wordpress.org/plugin/example-plugin.1.5.zip"

--enabled (optional) Check only for given modules, ex. --enabled="SQLInjection,CrossSiteScripting"
--disabled (optional) Don't check for given modules, ex. --disabled="SQLInjection,CrossSiteScripting"
--cleanup (optional) Automatically remove content of .temp folder after scanning remotely downloaded plugin (boolean)
--report (optional) Saves result inside reports/ directory in JSON format (boolean)

$ python wpbullet.py --path="/var/www/wp-content/plugins/plugin-name"

Création de modules

La création d'un module est flexible et permet de surcharger les méthodes BaseClass pour chaque module, ainsi que de créer ses propres méthodes.

Chaque module dans le répertoire Modules implémente les propriétés et méthodes de core.modules.BaseClass. Ainsi, le paramètre requis pour chaque module est BaseClass.

Une fois créé, le module doit être importé dans modules/__init__.py. Le nom du module et celui de la classe doivent être cohérents pour que le module soit chargé.

Si vous ouvrez une pull request pour ajouter un nouveau module, veuillez également fournir des tests unitaires pour votre module.

Modèle de module

Modules/ExampleVulnerability.py

root@kitploit:~
from core.modules import BaseClass


class ExampleVulnerability(object):

    # Vulnerability name
    name = "Cross-site Scripting"

    # Vulnerability severity
    severity = "Low-Medium"

    # Functions causing vulnerability
    functions = [
        "print"
        "echo"
    ]

    # Functions/regex that prevent exploitation
    blacklist = [
        "htmlspecialchars",
        "esc_attr"
    ]

Surcharge du motif de correspondance regex

Le motif regex est généré dans core.modules.BaseClass.build_pattern et peut donc être surchargé dans chaque classe de module.

Modules/ExampleVulnerability.py

root@kitploit:~
import copy


...
# Build dynamic regex pattern to locate vulnerabilities in given content
def build_pattern(self, content, file):
    user_input = copy.deepcopy(self.user_input)

    variables = self.get_input_variables(self, content)

    if variables:
        user_input.extend(variables)

    if self.blacklist:
        blacklist_pattern = r"(?!(\s?)+(.*(" + '|'.join(self.blacklist) + ")))"
    else:
        blacklist_pattern = ""

    self.functions = [self.functions_prefix + x for x in self.functions]

    pattern = r"((" + '|'.join(self.functions) + ")\s{0,}\(?\s{0,1}" + blacklist_pattern + ".*(" + '|'.join(user_input) + ").*)"
    return pattern

Tests

Exécution des tests unitaires : $ python3 -m unittest

Télécharger l’outil