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-2026-31156 — There is a path injection vulnerability in OpenPLC-v3, which arises from the program not performing any validity checks on the file path parameters passed in from the command line. Attackers can read any readable file by constructing malicious paths, posing a risk of information leakage. | Kitploit
Tools/GitHubGitHub/unicorn-hyh/cve-2026-31156
Vulnerability AnalysisCode AnalysisExploitationSCADA/ICS SecurityInformation GatheringMisconfiguration
GitHubunicorn-hyh/cve-2026-31156

CVE-2026-31156

Repository anzeigen
vor 3 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 →

Über

There is a path injection vulnerability in OpenPLC-v3, which arises from the program not performing any validity checks on the file path parameters passed in from the command line. Attackers can read any readable file by constructing malicious paths, posing a risk of information leakage.

Teilen

CVE-2026-31156

Es gibt eine Pfad-Injection-Schwachstelle in OpenPLC-v3, die dadurch entsteht, dass das Programm keine Gültigkeitsprüfungen an den von der Kommandozeile übergebenen Dateipfadparametern durchführt. Angreifer können durch die Konstruktion bösartiger Pfade jede lesbare Datei auslesen, was ein Risiko der Informationspreisgabe darstellt.

Schwachstellentyp

  • Unzureichende Eingabevalidierung (Pfad-Injection)

  • Informationspreisgabe (Beliebiger Dateizugriff)

Schwachstellenübersicht

Das aus glue_generator.cpp kompilierte Binärprogramm enthält eine Schwachstelle für beliebiges Dateilesen, die durch unzureichende Validierung von benutzerbereitgestellten Dateipfaden verursacht wird.

Ein Angreifer kann beim Ausführen des Programms eine beliebige Datei als Eingabeargument angeben (z.B. /etc/passwd). Die Anwendung liest daraufhin die Datei zeilenweise, parst den Inhalt und gibt die geparsten Daten direkt auf der Konsole mittels cout aus. Dabei wird keinerlei Validierung durchgeführt bezüglich:

  • der Legitimität des Dateipfads,
  • des Formats des Dateiinhalts,
  • der Dateizugriffsbeschränkungen, oder
  • des Schutzes sensibler Dateien.

Infolgedessen können Angreifer jede Datei lesen, auf die der Privilegkontext des laufenden Prozesses Zugriff hat, was zur Preisgabe sensibler Informationen führt.

Angriffsvoraussetzungen

1.Der Angreifer kann die anfällige Binärdatei ausführen.

2.Das laufende Benutzerkonto hat Leseberechtigung für die Zieldatei.

Auswirkungen

Eine erfolgreiche Ausnutzung kann sensible Systeminformationen offenlegen, einschließlich, aber nicht beschränkt auf:

  • Benutzerkontoinformationen,
  • Passwort-Hashes,
  • Konfigurationsdateien,
  • private Schlüssel,
  • Anwendungsgeheimnisse und
  • andere vertrauliche Daten.

Diese Informationen können eine weitere Privilegieneskalation oder seitliche Bewegung erleichtern.

Technische Details

In glue_generator.cpp verwendet das Programm zwei String-Arrays, varName und varType, um geparste Dateiinhalte zu verarbeiten und auf der Kommandozeile auszugeben.

Während des Parsens erwartet das Programm ein bestimmtes Zeilenformat:

root@kitploit:~
(<varType>,<varName>,

Konkret:

  • Der Inhalt zwischen ( und dem ersten , wird varType zugewiesen;
  • Der Inhalt zwischen dem ersten und zweiten , wird varName zugewiesen.

Es wird keine Validierung des Quellpfades oder der Legitimität der geparsten Daten durchgeführt.

Proof of Concept

Schritt 1: Erstellen einer Testdatei

Erstellen Sie eine Datei namens test.txt mit folgendem Inhalt:

root@kitploit:~
(aaaaaaaa,123,

Schritt 2: Ausführen des anfälligen Programms

Führen Sie den folgenden Befehl aus:

root@kitploit:~
./glue_generator ./test.txt whatever.cpp

Das Programm wird den Inhalt parsen und die extrahierten Werte auf der Konsole ausgeben.

Schritt 3: Beliebiges Dateilesen

Wenn ein Angreifer eine sensible Datei (z.B. /etc/passwd) so ändern oder kontrollieren kann, dass sie Daten im erforderlichen Format enthält:

root@kitploit:~
(aaaaaaaa,123,

wird das anfällige Programm die entsprechenden Inhalte aus der Datei parsen und ausgeben.

Bei sensiblen Dateien kann jede Zeile, die dem folgenden Muster entspricht, offengelegt werden:

root@kitploit:~
(<content1>,<content2>,

Die Menge der durchgesickerten Informationen hängt ab von:

  • der Anzahl der übereinstimmenden Zeilen in der Zieldatei, und
  • der Struktur des Dateiinhalts.

Grundursache

Die Schwachstelle wird verursacht durch:

1.Fehlende Validierung von benutzergesteuerten Dateipfaden.

2.Unsichere Parsing-Logik, die auf beliebige Dateien angewendet wird.

3.Direkte Konsolenausgabe geparster Inhalte ohne Autorisierungsprüfungen.

4.Fehlen von Einschränkungen für zugängliche Dateipfade.

Sicherheitsempfehlungen

Um die Schwachstelle zu entschärfen:

  • Beschränken Sie Eingabedateien auf vertrauenswürdige Verzeichnisse.
  • Validieren und bereinigen Sie alle benutzerbereitgestellten Dateipfade.
  • Verhindern Sie den Zugriff auf systemkritische Dateien.
  • Implementieren Sie eine strenge Dateiformatprüfung vor dem Parsen.
  • Wenden Sie das Prinzip der geringsten Privilegien auf den laufenden Prozess an.
  • Vermeiden Sie die direkte Ausgabe geparster sensibler Daten auf die Standardausgabe.
Tool herunterladen