
Fall root di Parallels Desktop: nessuna versione corretta per i Mac Intel
JFrog segnala che CVE-2026-90894 consente a un utente locale non amministratore di eseguire codice come root tramite Parallels Desktop, e la versione corretta 27.0.0 non può essere installata sui Mac Intel.
Parallels Desktop ha una vulnerabilità che consente a un account locale non amministratore di eseguire codice come root, e l'unica versione che secondo JFrog contiene la correzione, Parallels Desktop 27, non può essere installata sui Mac Intel. Il difetto richiede codice già in esecuzione sulla macchina come utente normale, quindi non funziona attraverso la rete. JFrog ha pubblicato la scoperta martedì e la chiama ParaShells. Il difetto è tracciato come CVE-2026-90894, un identificatore assegnato da JFrog stessa, e JFrog lo valuta 7,8 su 10.
ParaShells è il nome che JFrog ha dato a questa escalation di privilegi locale. Yuval Moravchick, che guida il team di ricerca sulle vulnerabilità di JFrog, ha segnalato la scoperta. Parallels Desktop è un software che esegue Windows e Linux all'interno di macchine virtuali su un Mac. Installa un servizio in background chiamato prl_disp_service che viene eseguito come root perché il suo lavoro comprende la configurazione della rete dell'host e l'estrazione dei pacchetti delle macchine virtuali. Il difetto è sul lato Mac del prodotto, quindi la macchina a rischio è il Mac stesso e non le macchine virtuali su di esso. Sulla macchina testata da JFrog, il socket su cui il servizio è in ascolto era scrivibile da tutti, il che significa che qualsiasi programma sul Mac poteva connettersi ad esso. La chiamata di login che segue, PrlSrv_LoginLocal, verifica solo le credenziali che il kernel riporta per il processo che si connette. Non richiede alcuna firma del codice Parallels e funziona per un account che non è amministratore.
Per installare un'appliance di macchina virtuale, il servizio costruisce il suo comando di estrazione come una sola riga di testo: tar -xf "%1" -C "%2". Poi suddivide quel testo di nuovo in argomenti separati usando QProcess::splitCommand di Qt. Il chiamante sceglie parte di quel testo, perché seleziona la cartella in cui va la nuova macchina virtuale. Un doppio apice all'interno del nome della cartella chiude anticipatamente le virgolette, quindi tutto ciò che l'attaccante mette dopo di esso diventa opzioni extra per tar invece che parte di un percorso. JFrog ha usato l'opzione --use-compress-program, che dice a tar di macOS di passare l'archivio prima a un altro programma. Poiché qui tar viene eseguito come root, anche quel programma viene eseguito come root. Lo script di test di JFrog ha scritto una regola sudo senza password e ha aperto una shell root.
JFrog ha dimostrato questo su Parallels Desktop 26.4.0, build 57513, su un Mac con Apple silicon. Afferma che una normale installazione fornisce già tutto ciò che serve all'attacco: il prodotto installato, il servizio in esecuzione con il suo socket presente e un account locale con privilegi bassi. Non deve essere in esecuzione alcuna macchina virtuale. L'azienda non ha verificato ogni build. Ha dichiarato: "Non abbiamo eseguito test di regressione su ogni build precedente per questo documento." Invece ha detto ai lettori di considerare nel campo di applicazione qualsiasi installazione di Desktop che esponga ancora lo stesso modello di estrazione InstallAppliance e il socket del dispatcher scrivibile da tutti. JFrog ha anche affermato che l'edizione dell'App Store potrebbe avviare i suoi servizi in modo diverso, pur descrivendo il rischio sottostante come lo stesso tipo di problema. Non segnala attacchi che sfruttano il difetto, e Parallels non ha pubblicato nulla al riguardo. Il motivo per cui un difetto locale è importante qui, ha detto JFrog, è che il codice in esecuzione come utente normale è comune su queste macchine. Una formula Homebrew malevola, uno script di installazione npm avvelenato o un processo di build compromesso sarebbero tutti casi validi, così come un account debole su un Mac condiviso di laboratorio o di formazione.
JFrog afferma che la modifica che corregge il difetto è in Parallels Desktop 27. Il suo advisory elenca come interessato tutto ciò che è inferiore a 27.0.0, il suo documento indica la 27.0.0 come versione corretta, e il record CVE elenca la 27.0.0 come non interessata. Le date non coincidono. La cronologia di divulgazione di JFrog indica il 1 settembre 2026 come il giorno in cui la correzione è stata distribuita nella 27.0.0, ma le note di rilascio di Parallels collocano la 27.0.0 al 25 agosto 2026 e la 27.0.1 al 1 settembre 2026. Installare la versione più recente su quella linea, la 27.0.1, build 58670, copre entrambe le letture. Parallels non ha pubblicato una dichiarazione su CVE-2026-90894, quindi non esiste un record del fornitore che indichi quale build incorpori la modifica. Parallels afferma di non discutere le vulnerabilità finché una correzione non è stata rilasciata pubblicamente. Il suo elenco di correzioni di sicurezza, che associa ogni difetto alla versione che lo ripara, non è stato aggiornato da maggio 2025 e non include questo.
Parallels Desktop 27 richiede un Mac con chip Apple silicon. I suoi requisiti di sistema elencano solo Apple silicon per il processore e macOS Sonoma 14.7 o successivo per il sistema operativo. Su versioni precedenti di macOS, inclusa Ventura 13, il programma di installazione configura invece una versione più vecchia del prodotto. Parallels ha rimosso il supporto per i Mac Intel nella versione 27 e afferma che il cambiamento segue i piani di Apple piuttosto che i propri. macOS 26 Tahoe è stata l'ultima versione di macOS costruita per i Mac Intel e macOS 27 è solo per Apple silicon, quindi un prodotto costruito per macOS 27 non può essere installato su hardware Intel. Agli utenti Intel viene detto di restare su Parallels Desktop 26. L'azienda ha scritto il 25 agosto, tre settimane prima che questo difetto diventasse pubblico, che "Parallels Desktop 26 supporta pienamente i computer Mac basati su Intel oggi, e questo non cambierà", aggiungendo che gli utenti Intel possono continuare a usare la versione 26 e "aspettarsi futuri aggiornamenti di sicurezza e manutenzione". Quella linea non ha questa correzione, secondo JFrog. Il suo advisory afferma: "Gli host che restano sulla linea 26.x, inclusa la 26.4.2, non hanno quella modifica all'estrazione." JFrog non dice di aver testato la 26.4.1 o la 26.4.2, e il suo documento afferma che non ha verificato le build precedenti. Anche le note di rilascio di Parallels per la versione 26 non descrivono alcuna correzione di questo tipo. La build più recente su quella linea, la 26.4.2, è uscita l'8 settembre 2026, e le sue note elencano una sola modifica, per un problema di distribuzione nell'edizione Enterprise. Quelle note sono brevi e di solito affermano solo che un aggiornamento affronta problemi generali di stabilità e sicurezza, quindi non escludono una riparazione che non è mai stata documentata. In sintesi, Parallels Desktop 27.0.1 (58670), rilasciata il 1 settembre 2026, ha la modifica all'estrazione secondo JFrog e può essere installata solo su Mac Apple silicon con macOS Sonoma 14.7 o successivo. Parallels Desktop 26.4.2 (57518), rilasciata l'8 settembre 2026, non ha quella modifica secondo JFrog e può essere installata su Mac Intel e Apple silicon. Un Mac che non può eseguire la versione 27 non ha quindi alcuna build che JFrog descriva come corretta. Parallels non ha detto se la modifica raggiungerà la versione 26, e nulla di ciò che ha pubblicato fissa una data.
Due comandi di sola lettura mostrano se un Mac è esposto. Il primo riporta la versione installata: defaults read "/Applications/Parallels Desktop.app/Contents/Info" CFBundleShortVersionString. Il secondo riporta se il socket del servizio è aperto a ogni processo locale: ls -l /var/run/prl_disp_service.socket. JFrog afferma che un socket che mostra srwxrwxrwx su una build pari o vicina alla 26.4.0 dovrebbe essere considerato esposto finché non viene confermata una build corretta. Entrambi i comandi mostrano solo l'esposizione, e nessuno dei due mostra se qualcuno ha usato il difetto. Finché ogni macchina non è su una build corretta, il consiglio di JFrog è limitare chi può accedere localmente, perché qualsiasi account locale su un'installazione vulnerabile può raggiungere il servizio. Suggerisce anche di elencare ogni Mac dell'organizzazione che ha Parallels Desktop installato. Gli amministratori che distribuiscono aggiornamenti tramite la gestione dei dispositivi dovrebbero prima controllare le loro regole di versione. Parallels avverte che un criterio che distribuisce automaticamente le nuove versioni principali tenterà di installare la versione 27 sui Mac Intel e fallirà, e consiglia di mantenere quelle macchine sulla versione 26. Nessuno dei materiali pubblicati dice se installare una build corretta rimuova l'accesso che un attaccante ha già ottenuto. JFrog osserva che un attaccante che raggiunge root può mantenere un punto d'appoggio tramite launchd, che un aggiornamento del prodotto non eliminerebbe.
Per i team che devono inventariare e mettere in sicurezza parchi di Mac contro questo tipo di rischio legato agli account locali, AEU-I fornisce IT, infrastruttura e consulenza all'insegna della sicurezza.
Come Proteggerti
- Sul tuo Mac, apri Informazioni su questo Mac per vedere se usa un chip Apple, poi aggiorna Parallels Desktop alla versione 27.0.1 o successiva se puoi.
- Se il tuo Mac è un modello Intel, apri Parallels Desktop e aggiorna alla versione 26.x più recente, perché la versione 27 non può essere installata lì.
- In Impostazioni di Sistema, vai su Utenti e gruppi e rimuovi gli account di accesso che nessuno usa, dato che questo difetto funziona solo per qualcuno che può già accedere.
- Evita di aprire o installare app o programmi di installazione sconosciuti da internet mentre il tuo Parallels Desktop è ancora su una versione non corretta.
- Chiedi al tuo team IT o all'amministratore della gestione dei dispositivi di controllare i criteri di aggiornamento, così i Mac Intel non tentano automaticamente di installare la versione 27, cosa che fallirebbe.
Vulnerabilità e Soluzioni
- CVE-2026-90894 A local privilege escalation in Parallels Desktop reported by JFrog and rated 7.8; JFrog says it is fixed in version 27.0.0 or later, but Intel Macs cannot install that version. Vedi la soluzione e i dettagli →
I Termini Spiegati
- root Il livello più alto di autorizzazione su un computer di tipo Unix, incluso un Mac, che può modificare qualsiasi file o impostazione.
- local account Un accesso utente che esiste sul computer stesso, anziché su un account di rete o online.
- virtual machine Un computer creato tramite software all'interno del tuo Mac che può eseguire un altro sistema operativo come Windows o Linux.
- Apple silicon La famiglia di processori di Apple utilizzata nei computer Mac più recenti.
- Intel Mac Un computer Mac costruito attorno a un processore Intel anziché ad Apple silicon.
- socket Un punto di comunicazione che consente ai programmi di parlare con un servizio in background sulla stessa macchina.
- prl_disp_service Il servizio in background installato da Parallels Desktop che viene eseguito con privilegi di root.
- sudo Un comando su Mac e Linux che consente a un utente di eseguire un'attività con diritti di livello amministratore.