Krytyczna luka w Triofox (CVE-2025-12480) aktywnie wykorzystywana: jak działa atak i jak się bronić - Security Bez Tabu

Krytyczna luka w Triofox (CVE-2025-12480) aktywnie wykorzystywana: jak działa atak i jak się bronić

Wprowadzenie do problemu / definicja luki

W Triofox (platforma zdalnego dostępu/udostępniania plików firmy Gladinet) wykryto krytyczną lukę CVE-2025-12480 o wektorze AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N (CVSS 9.1). Błąd to niewłaściwa kontrola dostępu: po instalacji nadal można było dotrzeć do stron wstępnej konfiguracji (m.in. AdminDatabase.aspxAdminAccount.aspxInitAccount.aspx) i utworzyć natywne konto administratora, obchodząc uwierzytelnianie. Luka jest aktywnie wykorzystywana w kampaniach przypisywanych klastrowi UNC6485. Producent usunął problem w wydaniu 16.7.10368.56560 (lipiec 2025).


W skrócie

  • Co się dzieje? Napastnicy modyfikują nagłówek Host: localhost (atak na nagłówek Host w ASP.NET), by uzyskać dostęp do stron setupu i założyć administratora; następnie wykorzystują funkcję wbudowanego „antywirusa” do uruchomienia własnego pliku z uprawnieniami SYSTEM.
  • Status poprawek: naprawione od 16.7.10368.56560; starsze wersje są podatne. Aktualizuj natychmiast.
  • Dowód eksploatacji: Mandiant/Google obserwował realne włamania od 24 sierpnia 2025 r. (po wydaniu łat).
  • Priorytet: wysoki – publicznie dostępne instancje Triofox narażają konto domenowe/serwer plików i dane.
  • Szybkie działania: aktualizacja, audyt kont admina, zablokowanie dostępu do ścieżek setupu na WAF/reverse proxy, walidacja nagłówków, wyłączenie/ograniczenie „AV path”, monitorowanie artefaktów z analizy poniżej.

Kontekst / historia / powiązania

To trzecia w tym roku aktywnie wykorzystywana podatność Triofox/CentreStack. Wcześniej:

  • CVE-2025-30406 – deserializacja ViewState przez twardo zakodowane machineKey (RCE).
  • CVE-2025-11371 – LFI w domyślnej konfiguracji umożliwiający wyciek kluczy i dalsze RCE; dodana do katalogu CISA KEV.

Obecny incydent (CVE-2025-12480) został szeroko opisany przez SecurityWeek i Google Cloud/Mandiant.


Analiza techniczna / szczegóły luki

1) Bypass uwierzytelniania przez nagłówek Host

  • W ASP.NET właściwość Request.Url powstaje na bazie nagłówka Host. W Triofox metoda kontroli dostępu (np. GladPageUILib.GladBasePage.CanRunCriticalPage()) uznaje żądanie za zaufane, jeśli Request.Url.Host == "localhost".
  • Atakujący wysyła żądanie HTTP do AdminDatabase.aspx z Host: localhost, co omija standardowe przekierowanie do AccessDenied.aspx. Z tej strony można kontynuować wstępną konfigurację i utworzyć konto admina.

Przykładowe żądanie (laboratoryjne)

GET /management/AdminDatabase.aspx HTTP/1.1
Host: localhost
User-Agent: curl/8.7
Accept: */*

W praktyce żądanie kierowane jest do publicznego adresu serwera Triofox, ale z nagłówkiem Host ustawionym na localhost. Reverse proxy bez twardej walidacji hosta przepuści takie żądanie do aplikacji.

2) Eskalacja do RCE przez „antywirus”

Po utworzeniu konta admin napastnik loguje się do GUI, publikuje udział, wrzuca pliki i konfiguruje ścieżkę skanera AV na własny skrypt (np. .bat). Mechanizm uruchamia wskazany plik z kontekstu SYSTEM (dziedziczenie PID procesu Triofox), co daje zdalne wykonanie kodu. W opisywanym incydencie pobrano legalny instalator Zoho UEMS, a następnie wdrożono Zoho Assist i AnyDesk w celu utrzymania dostępu (LOTL).

Artefakty z telemetrii (wg Mandiant)

  • log HTTP z refererem http://localhost/... przy żądaniu do CommitPage.aspx;
  • komenda: cmd.exe /c "c:\triofox\centre_report.bat" ... (wywołanie skryptu wskazanego jako „AV”);
  • pobranie SAgentInstaller_16.7.10368.56560.exe i uruchomienie cichym trybem; instalacja narzędzi zdalnego wsparcia;
  • tunelowanie przez narzędzia pokroju PLINK oraz dwie binarki do enkapsulacji/SSH.

3) Wersje podatne / poprawka

  • Podatne: wszystkie wersje < 16.7.10368.56560.
  • Naprawa: 16.7.10368.56560 (blokada dostępu do stron inicjalnych po zakończonej konfiguracji).

Praktyczne konsekwencje / ryzyko

  • Przejmowanie serwerów Triofox i – po integracji z AD/serwerami plików – eskalacja w domenie (zmiany haseł, dodanie użytkowników do Domain Admins).
  • Utrzymanie dostępu poprzez legalne narzędzia (Zoho Assist/AnyDesk), co utrudnia detekcję i zwiększa MTTD.
  • Exfiltracja danych z udziałów SMB/Triofox, ryzyko ransomware i lateral movement.
  • Niski koszt ataku: brak uwierzytelnienia, jeden nagłówek HTTP, brak interakcji użytkownika.

Rekomendacje operacyjne / co zrobić teraz

1) Patch & konfiguracja

  • Natychmiastowa aktualizacja do ≥ 16.7.10368.56560 (sprawdź Releases History).
  • Po aktualizacji zweryfikuj: brak dostępu do AdminDatabase.aspx, AdminAccount.aspx, InitAccount.aspx z Internetu.
  • Audyt kont Triofox: usuń nieznane konta (np. „Cluster Admin”), zresetuj hasła, wymuś MFA.

2) Kontrole brzegowe (WAF/NGFW/Reverse Proxy)

  • Twarda walidacja nagłówka Host (odrzuć localhost, 127.0.0.1, ::1, niespodziewane FQDN).
  • Reguły URL: blokuj żądania do ścieżek /management/AdminDatabase.aspx, /management/AdminAccount.aspx, /management/InitAccount.aspx z sieci publicznych.
  • Włącz IPS – dostawcy publikują sygnatury dla CVE-2025-12480.

Przykładowa reguła NGINX (reverse proxy)

map $http_host $bad_host {
    default 0;
    "~*^(localhost|127\.0\.0\.1|\[?::1\]?)$" 1;
}
server {
    ...
    if ($bad_host) { return 444; }
    location ~* ^/management/(Admin(Database|Account)|InitAccount)\.aspx$ {
        allow 10.0.0.0/8; allow 192.168.0.0/16; allow 172.16.0.0/12; deny all;
        proxy_pass http://triofox_upstream;
    }
}

3) Hardening aplikacji

  • Jeżeli istnieje ustawienie TrustedHostIp – skonfiguruj je na adres(y) administracyjne; nie zostawiaj pustego. (Wg analizy kodu pusty TrustedHostIp pozostawiał jedyną „ochronę” w postaci Host header).
  • Ogranicz/wyłącz możliwość wskazania dowolnej ścieżki skanera AV; jeżeli to niemożliwe, ustaw allow-listę i monitoruj zmiany.

4) Detekcja i hunting (praktyczne przykłady)

IIS – podejrzane nagłówki/odwołania

  • Szukaj Referer zawierającego http://localhost/management/AdminAccount.aspx albo żądań do /management/... z publicznych IP.

Sigma (IIS W3C) – Host header spoofing na Triofox

title: Triofox CVE-2025-12480 Host Header Abuse
id: 0f5d1b6d-6651-4b1c-9f33-0d3a12480abc
status: experimental
logsource:
  category: webserver
  product: iis
detection:
  sel1:
    cs-host|re: '^(localhost|127\.0\.0\.1|\[?::1\]?)$'
  sel2:
    cs-uri-stem|contains: '/management/'
  condition: sel1 and sel2
level: high

KQL (Sentinel) – anomalia w refererze

W3CIISLog
| where csUriStem has "/management/"
| where csReferer has "http://localhost/"
| project TimeGenerated, sIP, csMethod, csUriStem, csReferer, csUserAgent

Windows – uruchomienia „AV skanera” jako skryptu

DeviceProcessEvents
| where InitiatingProcessFileName =~ "cmd.exe"
| where ProcessCommandLine has @"\triofox\centre_report.bat"
| project Timestamp, DeviceName, AccountName, ProcessCommandLine

LOTL narzędzia z opisu Mandiant

  • Wykrywanie instalacji/połączeń Zoho Assist/AnyDesk tuż po nietypowej aktywności Triofox (korelacja czasowa).

5) Reagowanie po kompromitacji (skrót)

  • Przegląd kont lokalnych/domenowych (zmiany haseł, dodania do Administrators/Domain Admins). (
  • Przegląd zadań zaplanowanych, usług, wpisów Run/RunOnce, kluczy IFEO.
  • Izolacja hosta Triofox, weryfikacja udziałów SMB i systemów z nim skojarzonych.

Różnice / porównania z innymi przypadkami

CVEKlasa błęduWymaganiaSkutekStatus/uwagi
CVE-2025-12480Improper Access Control + Host header abuseBrak uwierzytelnieniaUtworzenie admina → RCE przez „AV path”Naprawione w 16.7.10368.56560; aktywne kampanie UNC6485.
CVE-2025-11371LFI (wyciek plików, np. kluczy)Brak uwierzytelnieniaEkspozycja kluczy → dalsze RCEW CISA KEV; aktywne exploity w październiku 2025 r.
CVE-2025-30406ViewState RCE (machineKey)Dostęp do aplikacjiRCEPubliczne advisory i moduł Metasploit.

Podsumowanie / kluczowe wnioski

  • CVE-2025-12480 łączy banalny wektor (nagłówek Host) z niebezpieczną funkcjonalnością („AV path”), co realnie daje pełne przejęcie serwera bez poświadczeń.
  • Luka jest aktywnie wykorzystywana, potwierdzona przez Mandiant/Google i SecurityWeek – nie czekaj z reakcją.
  • Potraktuj to jak incydent brzegowy: patch, odcięcie paneli setupu od Internetu, walidacja nagłówków, detekcje w logach IIS i EDR, audyt kont i narzędzi zdalnego wsparcia.

Źródła / bibliografia

  1. Google Cloud / Mandiant – techniczny opis łańcucha ataku, artefaktów i kodu kontroli dostępu (CVE-2025-12480). (Google Cloud)
  2. NVD (CVE-2025-12480) – opis, wektor CVSS, wersja naprawiona. (NVD)
  3. SecurityWeek – informacja o aktywnej eksploatacji, wersje, TTP napastnika. (SecurityWeek)
  4. Huntress – wcześniejsza luka LFI (CVE-2025-11371) i kontekst kampanii. (Huntress)
  5. CISA – dodanie Gladinet Triofox/CentreStack (CVE-2025-11371) do KEV – priorytetyzacja łatania. (CISA)