Insights | Integrity360

CVE-2024-55591 - exploaterad i det vilda: Kritisk autentiseringsförbikoppling i Node.js WebSocket-modul

Skriven av Integrity360 | 2025-jan-15 10:54:32

En sårbarhet för autentiseringsförbikoppling via alternativ väg eller kanal [CWE-288] som påverkar FortiOS och FortiProxy kan göra det möjligt för en fjärrangripare att få superadministratörsrättigheter via specialutformade förfrågningar till Node.js WebSocket-modulen.

Denna sårbarhet har identifierats som CVE-2024-55591 och har ett CVSSv3-betyg på 9,6, vilket klassificerar den som kritisk. FortiOS är operativsystemet för Fortinets produkter, inklusive SSLVPN och nästa generations brandväggar (NGFW), medan FortiProxy är en säker webb-gateway med avancerade filtrerings- och inspektionsfunktioner.

Rapporter visar att denna sårbarhet utnyttjas aktivt.

Påverkade versioner

Version Påverkad Lösning
FortiOS 7.6 Inte påverkad Ej tillämpligt
FortiOS 7.4 Inte påverkad Ej tillämpligt
FortiOS 7.2 Inte påverkad Ej tillämpligt
FortiOS 7.0 7.0.0 till 7.0.16 Uppgradera till 7.0.17 eller högre
FortiOS 6.4 Inte påverkad Ej tillämpligt
FortiProxy 7.6 Inte påverkad Ej tillämpligt
FortiProxy 7.4 Inte påverkad Ej tillämpligt
FortiProxy 7.2 7.2.0 till 7.2.12 Uppgradera till 7.2.13 eller högre
FortiProxy 7.0 7.0.0 till 7.0.19 Uppgradera till 7.0.20 eller högre
FortiProxy 2.0 Inte påverkad Ej tillämpligt

Rekommendationer

Det rekommenderas att användare med påverkade versioner av FortiOS och FortiProxy omedelbart uppgraderar till den korrigerade versionen enligt den rekommenderade uppgraderingsvägen med hjälp av Fortinet-verktyget:
https://docs.fortinet.com/upgrade-tool

Organisationer uppmanas också starkt att genomföra en kompromissbedömning genom att leta efter kompromissindikatorer som beskrivs i denna varning.

Tillfälliga lösningar

Lösning 1:
Inaktivera det administrativa gränssnittet för HTTP/HTTPS.

Lösning 2:
Begränsa IP-adresser som kan nå det administrativa gränssnittet genom lokala policys:

bash
 
config firewall address
edit "my_allowed_addresses"
set subnet [ange subnet]
end

Skapa en adressgrupp:

bash
 
config firewall addrgrp
edit "MGMT_IPs"
set member "my_allowed_addresses"
end

Skapa en lokal policy för att begränsa åtkomsten till den fördefinierade gruppen på hanteringsgränssnittet (t.ex. port1):

bash
 
config firewall local-in-policy
edit 1
set intf port1
set srcaddr "MGMT_IPs"
set dstaddr "all"
set action accept
set service HTTPS HTTP
set schedule "always"
set status enable
next

edit 2
set intf "all"
set srcaddr "all"
set dstaddr "all"
set action deny
set service HTTPS HTTP
set schedule "always"
set status enable
end

Om icke-standardportar används, skapa lämpliga tjänstobjekt för administrativ GUI-åtkomst:

bash
 
config firewall service custom
edit GUI_HTTPS
set tcp-portrange 443
next

edit GUI_HTTP
set tcp-portrange 80
end

Använd dessa objekt istället för "HTTPS HTTP" i lokalpolicyn 1 och 2 ovan.

Obs: Funktionen trusthost kan uppnå samma effekt som lokalpolicys ovan, men endast om alla användare av gränssnittet är konfigurerade med den. Därför är lokalpolicys den föredragna lösningen.

Kontakta Fortinets kundsupport för ytterligare assistans.Indikatorer på kompromiss

Loggposter och operationer utförda av angripare:
Fortinet har tillhandahållit följande loggposter som potentiella indikatorer på kompromiss:

plaintext
 
type="event" subtype="system" level="information" vd="root" logdesc="Admin login successful" sn="1733486785" user="admin" ui="jsconsole" method="jsconsole" srcip=1.1.1.1 dstip=1.1.1.1 action="login" status="success" reason="none" profile="super_admin" msg="Administrator admin logged in successfully from jsconsole"

type="event" subtype="system" level="information" vd="root" logdesc="Object attribute configured" user="admin" ui="jsconsole(127.0.0.1)" action="Add" cfgtid=1411317760 cfgpath="system.admin" cfgobj="vOcep" cfgattr="password[*]accprofile[super_admin]vdom[root]" msg="Add system.admin vOcep"

Obs: Fortinet har meddelat att fälten sn och cfgtid inte är relevanta för attacken.

Övriga operationer utförda av angripare:

  • Skapande av ett administratörskonto på enheten med ett slumpmässigt användarnamn (se exempel nedan).
  • Skapande av ett lokalt användarkonto på enheten med ett slumpmässigt användarnamn (se exempel nedan).
  • Skapande av en användargrupp eller tillägg av den ovan nämnda lokala användaren till en befintlig SSLVPN-användargrupp.
  • Ändringar av andra inställningar (brandväggspolicy, brandväggsadresser, etc.).
  • Inloggning i SSLVPN med den tillagda lokala användaren för att få en tunnel till det interna nätverket.

Förfalskade IP-adresser:

Angriparna har observerats använda förfalskade käll- och destinationsadresser i jsconsole-sessioner. Dessa IP-adresser är inte vanliga för jsconsole-aktivitet. Exempel på IP-adresser:

  • 1.1.1.1
  • 127.0.0.1
  • 2.2.2.2
  • 8.8.8.8
  • 8.8.4.4

Obs: De listade IP-adresserna styrs av angriparen och kan vara vilken adress som helst.

IP-adresser som använts av angriparen:

  • 45.55.158.47 (den vanligaste)
  • 87.249.138.47
  • 155.133.4.175
  • 37.19.196.65
  • 149.22.94.37

Administratörs- eller lokala konton genererade av angripare:

Angriparna har skapat administratörs- och lokala konton med alfanumeriska användarnamn på 6 tecken. Exempel:

  • Gujhmk
  • Ed8x4k
  • G0xgey
  • Pvnw8

Hotuppdateringar:

För mer information och uppdateringar om denna sårbarhet rekommenderas att följa Fortinets Product Security Incident Response Team-sida:
https://fortiguard.fortinet.com/psirt/FG-IR-24-535

Om du är orolig för något av hoten som beskrivs i detta meddelande eller behöver hjälp med att skydda din organisation, kontakta din kontohanterare eller besök supportsidan för att få veta hur du kan skydda din organisation.