Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cve-2017-9822 — Detaillierte technische Analyse und Proof-of-Concept für CVE-2017-9822, eine unsichere Deserialisierungsschwachstelle in DotNetNuke, die zu Remote-Code-Ausführung über manipulierte Cookies führt. | Kitploit
Tools/GitHubGitHub/tnot123/cve-2017-9822
SchwachstellenanalyseCode-AnalyseExploitationReverse EngineeringWebanwendungs-ExploitationDebuggerPenetrationstestsLernen & BildungPayload-EntwicklungBinary-ExploitationLabs & Praxis
63vor 1 JahrNoch nicht geprüft
GitHub
tnot123/cve-2017-9822

cve-2017-9822

Detaillierte technische Analyse und Proof-of-Concept für CVE-2017-9822, eine unsichere Deserialisierungsschwachstelle in DotNetNuke, die zu Remote-Code-Ausführung über manipulierte Cookies führt.

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
  • CVE-2017-9822
    • Wichtige Informationen
    • Umgebung einrichten
    • Debug einrichten
    • Analyse
    • Debug
      • XmlSerializer
      • Angriffs-Gadget
      • ObjectDataProvider
      • ResourceDictionary
      • Von unsicherer XML-Deserialisierung zu RCE

CVE-2017-9822

DNN (auch bekannt als DotNetNuke) vor Version 9.1.1 ermöglicht Remote-Code-Ausführung über Cookies, auch bekannt als „2017-08 (Wichtig) Remote-Code-Ausführung auf DNN-Websites möglich“.

Wichtige Informationen

  • Betroffenes Produkt: DotNetNuke (DNN Platform) – ein beliebtes .NET-CMS/Portal.
  • Veröffentlichungsdatum: Juli 2017.
  • Schweregrad: Kritisch (CVSS ~9.8).
  • Schwachstellentyp: XML External Entity (XXE) / Unsichere Deserialisierung → Remote Code Execution (RCE).
  • Auswirkung: Vor Version 9.1.1 ist Remote-Code-Ausführung über Cookies möglich

alt

Was ist DotNetNuke?
DotNetNuke ist ein kostenloses Open-Source-Web-CMS (Content-Management-System), das in C# geschrieben ist und auf der .NET-Plattform basiert. DotNetNuke ist sehr beliebt und wird im Internet weit verbreitet eingesetzt, da eine DNN-Webinstanz in nur wenigen Minuten bereitgestellt werden kann, ohne dass viel technisches Wissen erforderlich ist. Eine weitere wichtige Funktion von DotNetNuke ist die Möglichkeit, benutzerdefinierte Module von Drittanbietern zu erstellen oder zu importieren, die mit VB.NET oder C# entwickelt wurden.
DNN kann auf einem Stack installiert werden, der Windows Server, IIS, ASP.NET und SQL Server für Windows umfasst. DNN unterstützt außerdem die Verifizierung neuer Benutzerregistrierungen per E-Mail, allerdings muss ein gültiger SMTP-Server konfiguriert sein, damit diese Sicherheitsfunktion funktioniert. Hauptfunktionen von DNN
• Modulare Architektur: DNN ermöglicht eine einfache Erweiterung durch die Installation zusätzlicher Module (Funktionsmodule), die von der Community entwickelt wurden. Administratoren können neue Module über die Admin-Oberfläche hochladen (.zip-Pakete) oder sie direkt in ein Verzeichnis auf dem Server entpacken.
• Benutzerverwaltung: Das System bietet Sicherheitsfunktionen und detaillierte Berechtigungen (Rollen/Berechtigungen) für Portale und Module. Benutzerkonten, Rollen und Berechtigungen werden zentral in DNN verwaltet.
• Content-Verwaltung: Unterstützt WYSIWYG-Editierung sowie die Verwaltung von Beiträgen, Bildern, Dokumenten usw. Es gibt ein Workflow-/Veröffentlichungssystem (Veröffentlichung von Beiträgen über einen Freigabeprozess) und eine Versionsverwaltung für Inhalte. Die Inhalte werden in einer gemeinsamen Datenbank (SQL Server) gespeichert.
• API und erweiterte Integration: DNN bietet eine .NET-API für Entwickler, um benutzerdefinierte Module (WebForms, MVC, Razor) zu entwickeln und externe Dienste zu integrieren. Zahlreiche Drittanbieter-Bibliotheken (Oberflächenthemes, E-Commerce-Module, Foren usw.) sind verfügbar und erweitern die Funktionalität.
• Oberfläche und Themes: Das Skin-System (Themes) trennt Inhalt und Oberfläche und ermöglicht so flexibles Webdesign. Mit DNN erstellte Websites können ihr Erscheinungsbild durch das Wechseln von Skins verändern.
• Modul-Installationsmechanismus: DNN-Module sind in ZIP-Dateien verpackt und können über die Admin-Oberfläche oder durch manuelles Entpacken installiert werden. DNN unterstützt sowohl kompilierte Module (.NET-DLLs) als auch dynamische Razor-Module; der Zugriff auf jedes Modul kann über die Berechtigungseinstellungen der jeweiligen Seiten gewährt oder entzogen werden.

Umgebung einrichten

Betriebssysteme: Windows 10
.NET Framework: 4.5.1+
Webserver: Microsoft IIS 10
Datenbankserver: Microsoft® SQL Server® 2019 Express, SQL Server Management Studio
DotNetNuke-Version 9.1.0
Die folgenden Google-Dorks können verwendet werden, um im Internet verfügbare DotNetNuke-Installationen zu finden und sie anhand der Website zu prüfen:
inurl:dnn.js
inurl:dnn.modalpopup.js
inurl:dnn.servicesframework.js
inurl:dnn.xml.js
inurl:dnncore.js
inurl:/Portals/0/
inurl:/DesktopModules/
inurl:/DNNCorp/
inurl:/DotNetNuke
inurl:/tabid//Default.aspx
inurl:/tabid/
/language/*/Default.aspx
intext:"by DNN Corp "
Zum Aufbau der Umgebung kann diesem Artikel gefolgt werden:

Debug einrichten

Ändere die Assembly-Attribute auf „debugbar“. Dies ist unbedingt erforderlich, da zur Laufzeit einige Optimierungen angewendet werden, die das Debuggen behindern können: Manche Breakpoints werden möglicherweise nicht ausgelöst oder manche Variablen existieren nicht.
Lade DotNetNuke.dll in dnSpy (32 Bit) und wähle dann „Edit Assembly Attributes (C#)“.

alt

Ändere die Zeile von
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
auf
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]

alt

Wähle anschließend „Compile“ und speichere dieses Modul wieder am ursprünglichen Ort.
Starte als Nächstes dnSpy mit Administratorrechten und wähle Debug -> Attach to Process.

alt

Wähle den Prozess w3wp.exe.

alt

Der Grund, warum dieser Prozess zum Debuggen angehängt werden muss, ist, dass Webanwendungen auf IIS normalerweise Worker-Prozesse verwenden. Deren Aufgabe ist es, die eingehenden Webanfragen an den IIS-Webserver für jeden Application Pool zu verarbeiten. Auf einem Rechner können mehrere Worker-Prozesse vorhanden sein, die alle denselben Namen w3wp.exe tragen. Ein kleiner Hinweis: Es kann vorkommen, dass gerade kein w3wp-Prozess läuft, da IIS die Worker-Prozesse erst startet, wenn die erste Webanfrage eintrifft.

alt

Zurück zum Debuggen: Nach dem Anhängen des Prozesses wähle: Debug -> Windows -> Modules.

alt

Klicke auf ein Modul und wähle „Open All Modules“.

alt

Nun sind im Assembly-Fenster alle zugehörigen Module sichtbar.

alt

Tool herunterladen