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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
scc-check — Offline-Prüfer für Spring Cloud Config CVE-2026-40982 — zeigt Ihnen, ob Ihre Versionslinie überhaupt einen OSS-Fix hat (3.1.x/4.1.x/4.2.x: das ist nicht der Fall) | Kitploit
Tools/GitHubGitHub/xiaoqimikko/scc-check
Statische AnalyseSchwachstellenscannerSchwachstellenanalyseDevSecOpsLieferkettensicherheit
GitHubxiaoqimikko/scc-check

scc-check

Offline-Prüfer für Spring Cloud Config CVE-2026-40982 — zeigt Ihnen, ob Ihre Versionslinie überhaupt einen OSS-Fix hat (3.1.x/4.1.x/4.2.x: das ist nicht der Fall)

Repository anzeigen
vor 1 MonatNoch 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

scc-check

Spring Cloud Config CVE-2026-40982 Offline-Prüfwerkzeug – keine Abhängigkeiten, ein einziges JAR, keine Netzwerkverbindung.

Es beantwortet nicht die Frage „Bin ich betroffen?“, sondern die unangenehmere Frage:

Gibt es für meine Versionslinie auf Maven Central überhaupt eine sichere Version, auf die ich aktualisieren kann?

Für die drei Linien 3.1.x / 4.1.x / 4.2.x lautet die Antwort nein.


Warum es benötigt wird

Die im offiziellen Advisory (spring.io/security/cve-2026-40982) angegebenen Fix-Versionen:

VersionslinieOffizielle Fix-VersionVerfügbarkeitHöchste Version dieser Linie auf Maven CentralKannst du upgraden
3.1.x3.1.14Enterprise Support Only3.1.10❌
4.1.x4.1.10Enterprise Support Only4.1.7❌
4.2.x4.2.7Enterprise Support Only4.2.4❌
4.3.x4.3.3OSS4.3.4✅
5.0.x5.0.3OSS5.0.4✅

Diese drei Fix-Versionen sind nicht in öffentlichen Repositories verfügbar. Jeder kann das überprüfen:

curl -sI https://repo1.maven.org/maven2/org/springframework/cloud/spring-cloud-config-server/4.2.7/
# HTTP/1.1 404 Not Found

Und die automatisierten Tools werden Ihnen das nicht sagen – in den strukturierten Daten der GitHub-Advisory sind die first_patched_version dieser drei Linien genau null:

{"range": "<= 3.1.13",          "first_patched_version": null}
{"range": ">= 4.1.0, <= 4.1.9", "first_patched_version": null}
{"range": ">= 4.2.0, <= 4.2.6", "first_patched_version": null}
{"range": ">= 4.3.0, <= 4.3.2", "first_patched_version": "4.3.3"}
{"range": ">= 5.0.0, <= 5.0.2", "first_patched_version": "5.0.3"}

Dependabot / OSV konsumieren genau diese Daten. Ohne Upgrade-Ziel kann kein Upgrade-Vorschlag gegeben werden.


Verwendung

java -jar scc-check.jar <目录或 jar/war 路径>

# 中文乱码时(Windows 控制台代码页与 Java 判断常常对不上):
java -jar scc-check.jar target/ --utf8

Benötigt Java 17+. Zur Laufzeit keine Abhängigkeiten, kann direkt in eine Offline-Umgebung geworfen werden.

Exit-Codes: 2 Versionslinie vorhanden, aber kein Upgrade möglich · 1 betroffen, aber Upgrade möglich / nicht beurteilbar · 0 nicht gefunden · 3 Nutzungs- oder Pfadfehler

Wo es sucht

  • Dateinamen von .jar / .war
  • Eingebettete Abhängigkeiten von Spring Boot Fat Jars und Wars (BOOT-INF/lib/, WEB-INF/lib/)
  • Maven-Metadaten im Jar (META-INF/maven/.../pom.properties) – wird auch bei umbenannten Jars erkannt
  • pom.xml

Drei Dinge, die es bewusst nicht tut

1. Clients werden nicht als betroffen gezählt. Diese CVE betrifft nur den serverseitigen spring-cloud-config-server. Projekte, die spring-cloud-starter-config (den Client) einbinden, sind nicht betroffen; das Tool sagt dir das ausdrücklich, statt dich unnötig in Aufregung zu versetzen.

2. Für 4.0.x wird keine Bewertung abgegeben. Kein Bereich im offiziellen Advisory deckt 4.0.x ab (4.0.0 > 3.1.13, fällt nicht in den Bereich ohne Untergrenze). Das Tool meldet nur „nicht im offiziellen Abdeckungsbereich" und meldet nicht CRITICAL – eine Bewertungstabelle mit Vermutungen zu füllen, führt zu Fehlentscheidungen.

3. Wenn die Version nicht lesbar ist, wird klar „nicht beurteilbar" gesagt, niemals „sicher" angenommen. Spring Cloud verwaltet Versionen über Release Trains einheitlich; in der pom.xml fehlt oft schlicht und einfach <version>. In diesem Fall sagt dir das Tool, dass du die Build-Artefakte scannen sollst, statt vorzugeben, kein Problem gefunden zu haben. Ebenso werden Abhängigkeiten mit scope test / provided nicht an Nutzer weitergegeben und zählen nicht zur Angriffsfläche; Abhängigkeiten, die in XML-Kommentaren eingeschlossen sind, werden entfernt.


Die Bewertungstabelle wird generiert, nicht abgeschrieben

tools/gen_rules.py kompiliert RuleTable.java aus zwei Primärquellen:

  • GitHub Advisory GHSA-6g23-24mc-hx6x → betroffene Bereiche + offizielle Fix-Version
  • maven-metadata.xml von repo1.maven.org → die im öffentlichen Repository tatsächlich vorhandenen Versionen

Dazu kommen vier Assertions: Anzahl der Bereiche ≥5, first_patched=null ≥3, Versionslinien ≥5, als ENTERPRISE_ONLY bewertet ≥3. Wird eine davon nicht erfüllt, wird sofort abgebrochen und keine Datei generiert – sonst würde bei einem einzigen Parsing-Fehler eine leere Tabelle entstehen, und die Unit-Tests würden gegen die leere Tabelle trotzdem alle grün sein.

python tools/gen_rules.py     # 重新生成判定表
mvn test                      # 31 个测试

Haftungsausschluss

Dieses Tool führt ausschließlich einen Versionsabgleich durch und prüft nicht, ob dein Config Server tatsächlich öffentlich im Internet erreichbar ist, ob eine WAF vorhanden ist oder ob das Problem bereits auf andere Weise entschärft wurde. Das Ergebnis ist ein Ausgangspunkt für die Untersuchung, keine Sicherheitsbewertung. Maßgeblich sind die offiziellen Advisories.

License

MIT


Brauchst du eine weitergehende Untersuchung?

Dieses Tool beantwortet die Frage „Bin ich betroffen?“. Die folgenden Punkte kann es nicht beantworten – dafür kannst du mich beauftragen:

  • Abhängigkeiten wurden geshadet / relocated, oder die Build-Artefakte sind schlicht nicht verfügbar
  • Es soll beurteilt werden, ob „diese CVE in unserer Aufrufkette tatsächlich ausgelöst wird“, und nicht nur, ob die Version betroffen ist
  • Es soll eine Anpassung an euren eigenen Build-Prozess oder eure interne Umgebung erfolgen und in die bestehende Pipeline integriert werden
  • Es handelt sich um ein gleichartiges Problem bei einer anderen Komponente, für die es noch kein fertiges Tool gibt

📮 [email protected] – schildere die Situation, und ich gebe dir innerhalb von 24 Stunden eine schriftliche Antwort auf einer Seite: ob es machbar ist, wo die Schwierigkeiten liegen und wie lange es ungefähr dauert. Dieser Schritt ist kostenlos, und du musst dich zu nichts verpflichten.

Exit-Codes

CodeBedeutung
0Scan abgeschlossen, und jede Datei wurde tatsächlich eingelesen, keine Befunde, die eine Aktion von dir erfordern
4Eine Datei konnte nicht gelesen werden – kein Zip, Inhalt abgeschnitten oder Lesefehler

🔴 4 wurde am 2026-09-09 hinzugefügt, und der Grund dafür sollte klar benannt werden. Zuvor hinterließen nicht lesbare Dateien nur eine Hinweiszeile in der Ausgabe, während der Exit-Code weiterhin 0 blieb – die Spur ist für Menschen gedacht, CI und Skripte schauen auf den Exit-Code, und so bedeutet „ich konnte es nicht lesen“ in der Automatisierung gleich „bestanden“. Ein beschädigtes, verschlüsseltes oder unvollständig heruntergeladenes Jar wird so stillschweigend zu einem „keine Probleme gefunden“.

„Ich kann es nicht lesen“ und „du bist sicher“ müssen zwei verschiedene Aussagen sein.

⚠️ Ein legitimes leeres Jar gilt nicht als nicht lesbar (ein 22-Byte-EOCD-Datensatz ist ein echtes leeres Zip) und löst kein 4 aus – bei zu vielen Fehlalarmen schaut niemand mehr auf echte Warnungen.

Die Bedeutung der übrigen Exit-Codes findest du oben in den jeweiligen Bewertungsstufen und in der Gebrauchsanweisung.

Tool herunterladen