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
milvus-auth-audit — Milvus-Authentifizierungs-Sicherheitsprüfungsskript: CVE-2025-64513 (sourceid-Backdoor) / CVE-2026-26190 (/expr schwaches Token) / interner Port 53100 | Kitploit
Tools/GitHubGitHub/qianlijaingshan/milvus-auth-audit
Authentifizierung & AutorisierungSchwachstellenscannerExploitationAPI-SicherheitstestsPenetrationstestsFehlkonfigurationDatenbanksicherheit
GitHubqianlijaingshan/milvus-auth-audit

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

milvus-auth-audit

Milvus-Authentifizierungs-Sicherheitsprüfungsskript: CVE-2025-64513 (sourceid-Backdoor) / CVE-2026-26190 (/expr schwaches Token) / interner Port 53100

Repository anzeigen
48vor 1 MonatNoch nicht geprüft

milvus-auth-audit

Milvus Authentifizierungs-Sicherheitsskript. Erkennt drei Authentifizierungsfehler:

SchwachstelleCVEBetroffene VersionenErkennungsmethode
sourceid-Backdoor umgeht AuthentifizierungCVE-2025-64513< 2.4.24 / < 2.5.21 / < 2.6.5gRPC ListDatabases + sourceid-Injektion
Schwaches Token für /expr auf VerwaltungsportCVE-2026-26190< 2.5.27 / < 2.6.10HTTP /expr?code=1%2B1&auth=by-dev (code-Parameter muss URL-kodiert sein)
Interner Port rootcoord 53100 ohne Authentifizierung—< 2.6.10 (ab 2.6.10 nicht mehr gelauscht)gRPC-Direktverbindung zum RootCoordService

Verwendung

root@kitploit:~
# Proxy-Ebenen-Erkennung (sourceid-Backdoor + /expr schwaches Token)
python3 milvus-auth-audit.py --host 127.0.0.1 --port 19530 --mgmt-port 9091

# Vollständige Erkennung (inkl. internem Port, benötigt Erreichbarkeit im Container-Netzwerk)
python3 milvus-auth-audit.py --host <Container-IP> --port 19530 --mgmt-port 9091 --internal-port 53100

Parameter:

  • --host: Milvus-Proxy-Adresse
  • --port: Proxy-gRPC-Port (Standard 19530)
  • --mgmt-port: Verwaltungsport (Standard 9091, hier liegt /expr)
  • --internal-port: Interner Port (rootcoord standardmäßig 53100, 0 zum Überspringen)
  • --cve-check: Gibt die von den CVEs betroffenen Versionshinweise aus

Abhängigkeiten

root@kitploit:~
pip install grpcio protobuf

gRPC-Aufrufe benötigen den aus den Proto-Definitionen generierten Python-Code (milvus_pb2_grpc.py, root_coord_pb2_grpc.py usw.), der im Unterordner proto/ im Skriptverzeichnis abgelegt wird. Generierung:

root@kitploit:~
# 1. milvus-proto-Repository klonen
git clone https://github.com/milvus-io/milvus-proto.git
# 2. milvus-Quellcode klonen (interne Protos: root_coord.proto / internal.proto / proxy.proto usw.)
git clone https://github.com/milvus-io/milvus.git
# 3. Generieren (interne milvus-Protos unter milvus/pkg/proto/)
pip install grpcio-tools
python3 -m grpc_tools.protoc -I milvus-proto/proto -I milvus/pkg/proto \
  --python_out=proto --grpc_python_out=proto \
  milvus-proto/proto/milvus.proto milvus/pkg/proto/root_coord.proto \
  milvus/pkg/proto/internal.proto milvus/pkg/proto/proxy.proto

Erkennungsausgabe für drei Versionen

root@kitploit:~
=== 2.6.4 ===
[*] Ziel: 172.22.0.4:19530  Verwaltungsport: 9091
[check] Authentifizierungsstatus: Authentifizierung aktiviert (authorizationEnabled=true)
[verify] sourceid-Backdoor umgeht Authentifizierung, Datenbanken=['default']  -> HIT
[verify] /expr beliebigen Ausdruck ausführen (auth=by-dev)   -> HIT
[exploit] Interner Port ohne Authentifizierung, Datenbanken=['default']  -> HIT
[!] 3 ausnutzbare Authentifizierungsfehler gefunden

=== 2.6.5 ===
[check] Authentifizierungsstatus: Authentifizierung aktiviert (authorizationEnabled=true)
[verify] sourceid wurde abgelehnt  -> SAFE
[verify] /expr beliebigen Ausdruck ausführen (auth=by-dev)   -> HIT
[exploit] Interner Port ohne Authentifizierung, Datenbanken=['default']  -> HIT
[!] 2 ausnutzbare Authentifizierungsfehler gefunden

=== 2.6.10 ===
[check] Authentifizierungsstatus: Authentifizierung aktiviert (authorizationEnabled=true)
[verify] sourceid wurde abgelehnt  -> SAFE
[verify] /expr standardmäßig deaktiviert  -> SAFE
[exploit] Port nicht erreichbar  -> SAFE
[+] Keine Authentifizierungsfehler gefunden

Kurzbeschreibung des Schwachstellenmechanismus

  1. CVE-2025-64513 (sourceid-Backdoor): In internal/proxy/authentication_interceptor.go prüft validSourceID() den sourceId-Header; wenn der base64-dekodierte Wert gleich @@milvus-member@@ ist, wird der gesamte Authentifizierungszweig übersprungen. Dies ist ein Vertrauensmechanismus für interne Komponenten (PerRPCCredentials in grpcclient/auth.go), jedoch ohne Herkunftsprüfung, sodass er extern fälschbar ist. Vollständige Nutzungskette: sourceid + authorization=base64("root:falsches Passwort") = Full Admin (Proxy überspringt die Prüfung, die falsche Identität wird unverändert durchgereicht).
  2. CVE-2026-26190 (/expr schwaches Token): Der /expr-Debug-Endpunkt auf dem Verwaltungsport 9091 bezieht sein Authentifizierungstoken aus etcd.rootPath (standardmäßig by-dev), vollständig vorhersagbar, und kann beliebige expr-lang-Ausdrücke ausführen. Ab 2.6.10 wird dies durch common.security.exprEnabled gesteuert und ist standardmäßig deaktiviert.

Haftungsausschluss

Nur für Sicherheitstests in autorisierten Umgebungen. Nicht gegen nicht autorisierte Systeme verwenden.

Tool herunterladen
  • Interner Port 53100 ohne Authentifizierung: Der AuthenticationInterceptor ist nur am Proxy (19530) registriert; der interne gRPC-Server des rootcoord (53100) hat keine Authentifizierung. Innerhalb des Container-Netzwerks reicht eine unauthentifizierte Direktverbindung für Full Admin. Ab 2.6.10 lauscht dieser Port nicht mehr.