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-2023-25157 — Lokales GeoServer/PostGIS-Lab zur Reproduktion der OGC-Filter-SQL-Injection (CVE-2023-25157/25158) mit A/B-Testmodi für verwundbare, gepatchte und mitigierte Konfigurationen. | Kitploit
Tools/GitHubGitHub/ivanesk315/cve-2023-25157
SchwachstellenscannerSchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsLernen & BildungDatenbanksicherheitLabs & Praxis
GitHubivanesk315/cve-2023-25157

CVE-2023-25157

Lokales GeoServer/PostGIS-Lab zur Reproduktion der OGC-Filter-SQL-Injection (CVE-2023-25157/25158) mit A/B-Testmodi für verwundbare, gepatchte und mitigierte Konfigurationen.

vor 12h 21mNoch nicht geprüft
Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Lab CVE-2023-25157 und CVE-2023-25158

Dieses Lab verwendet GeoServer/PostGIS, um OGC Filter SQL Injection in einer lokalen Umgebung zu untersuchen, mit klarer Trennung zwischen Operator-/Setup-Modus und Angreifer-Modus.

  • CVE-2023-25157: Angriffsfläche des GeoServer-Produkts, WFS/WMS-Anfragen gelangen in die JDBC-Filterkodierung.
  • CVE-2023-25158: Grundursache in der GeoTools-JDBC-Bibliothek, die von GeoServer eingebettet wird, um OGC-Filter in SQL umzuwandeln.

GeoServer 2.22.0 bettet verwundbares GeoTools ein. GeoServer 2.22.2 bettet gepatchtes GeoTools ein. Das Lab behält dasselbe Schema/dieselbe Anfrage für A/B-Tests von Version, Mitigation und Privilegien-Grenze bei.

Architektur

ModusOberflächeZweck
Setup/Operator RESTcve-operator interner ContainerREST-Setup, Validierung und Backend-Log-Überprüfung
Single Gateway127.0.0.1:8889Ein einziger Port für Operator-UI und alle OWS-Routen
Operator Web UI127.0.0.1:8889/geoserver/web/GeoServer-UI für Betreiber; mit Basic Auth Proxy
Angreifer verwundbar127.0.0.1:8889/vuln/geoserver/owsWFS/OWS verwundbar, DB-Fehler erscheint in der Antwort
Angreifer gepatcht127.0.0.1:8889/patched/geoserver/owsGeoServer 2.22.2 / GeoTools 28.2
Angreifer realistisch127.0.0.1:8889/realistic/geoserver/owsWFS/OWS verwundbar, aber Gateway entfernt Fehlerdetails
Mitigation function127.0.0.1:8889/mit-functions/geoserver/owsGeoServer 2.22.0, encode functions=false
Mitigation FeatureId127.0.0.1:8889/mit-featureid/geoserver/owsGeoServer 2.22.0, preparedStatements=true

PostgreSQL/PostGIS veröffentlicht keinen Port zum Host. GeoServer veröffentlicht Port 8080 nicht direkt zum Host; der Host sieht nur cve-gateway auf 127.0.0.1:8889. Der Container cve-attacker befindet sich nur in attacker-net; er hat keine Route zu PostgreSQL oder zum internen GeoServer-Dienst. Das REST-Setup läuft über den internen Container cve-operator auf geoserver-net.

Web UI Operator

Im Browser öffnen:

root@kitploit:~
http://127.0.0.1:8889/geoserver/web/

Anmeldung in 2 Ebenen:

  1. Proxy Operator Basic Auth: operator / operator_lab
  2. GeoServer UI: admin / geoserver

Alles läuft über dasselbe Gateway 8889, es müssen nicht mehrere Ports gemerkt werden. Burp kann den Standard-Proxy 127.0.0.1:8080 beibehalten.

Lab ausführen

root@kitploit:~
.\lab.ps1 reset all
.\lab.ps1 validate
powershell -ExecutionPolicy Bypass -File .\verify-lab.ps1
powershell -ExecutionPolicy Bypass -File .\negative-controls.ps1
powershell -ExecutionPolicy Bypass -File .\attack-chain.ps1

Verwaltungsbefehle:

root@kitploit:~
.\lab.ps1 start vulnerable
.\lab.ps1 start patched
.\lab.ps1 start mitigated
.\lab.ps1 start worstcase
.\lab.ps1 reset all
.\lab.ps1 stop
.\lab.ps1 status

Daten und Rollen

Seed-Tabellen:

  • cities: integer primary key, Spalte name text, verwendet für strStartsWith/strEndsWith.
  • sensors_text: text primary key, verwendet für FeatureId-Injection.
  • sensors_int: integer primary key, Negativkontrolle für FeatureId.
  • events: JSONB-Forschungsschicht.
  • internal_assets: nicht veröffentlicht, enthält LAB-CANARY-<UUID> neu nach jedem Reset.
  • local_points: Shapefile-Nicht-JDBC-Negativkontrolle.

Rollen:

  • geoserver_readonly: CONNECT, USAGE Schema, SELECT nur auf veröffentlichten Tabellen.
  • geoserver_impact: SELECT zusätzlich auf internal_assets, um zu veranschaulichen, wie ein App-DB-Benutzer durch zu weite Berechtigungen Zugriff erhält.
  • geoserver_worstcase: eigenes Profil, mit pg_read_server_files, um die gefälschte Canary-Datei /lab/flag.txt zu lesen.

Ablauf der Attack-Chain

attack-chain.ps1 führt aus:

  1. Recon WFS GetCapabilities.
  2. Schema-Enumeration DescribeFeatureType.
  3. Baseline- und Negativ-Anfragen.
  4. Boolean TRUE/FALSE Oracle über realistischen Proxy.
  5. Bestätigung von CVE-2023-25157 mit verwundbar, gepatcht und encode functions=false.
  6. Bestätigung von CVE-2023-25158 mit verwundbar, gepatcht und preparedStatements=true.
  7. Negativkontrollen: integer PK und Nicht-JDBC-Shapefile.
  8. Leak des DB-Benutzers und Entdeckung versteckter Tabellen über den Impact-Zweig.
  9. Nachweis, dass Least-Privilege internal_assets blockiert, der Impact-Zweig Canary leakt, gepatcht/realistisch Canary nicht offenlegt.

Evidence wird in evidence/attack-chain-* gespeichert. Der aktuelle Ordner behält nur die neuesten bestandenen Evidence-Dateien, um Unübersichtlichkeit zu vermeiden.

Worst-Case-Profil

Dieses Profil ist nicht Teil des Hauptszenarios:

root@kitploit:~
.\lab.ps1 start worstcase
powershell -ExecutionPolicy Bypass -File .\worstcase-demo.ps1

Es liest nur die gefälschte Canary-Datei /lab/flag.txt, liest nicht /etc/passwd, dumpt keine Hashes, crackt keine Passwörter.

Offizielle Quellen

  • GeoServer Advisory: https://github.com/geoserver/geoserver/security/advisories/GHSA-7g5f-wrx8-5ccf
  • GeoTools Advisory: https://github.com/geotools/geotools/security/advisories/GHSA-99c3-qc2q-p94m
  • GeoServer Statement: https://geoserver.org/vulnerability/2023/02/20/ogc-filter-injection.html
  • NVD CVE-2023-25157: https://nvd.nist.gov/vuln/detail/CVE-2023-25157
  • NVD CVE-2023-25158: https://nvd.nist.gov/vuln/detail/CVE-2023-25158
Tool herunterladen