
Analisi e codice per CVE-2025-11492, CVE-2025-11493 - RCE in ConnctWise Automate RMM tramite Adversary-in-the-Middle
Nel corso di un test di penetrazione, ho scoperto diverse vulnerabilità nell'agente ConnectWise Automate Remote Monitoring and Management (RMM). ConnectWise è utilizzato da molti Managed Service Provider (MSP) per gestire e monitorare i dispositivi dei clienti. Queste vulnerabilità consentivano l'esecuzione remota di codice se un attaccante poteva stabilire un Adversary-in-the-Middle di rete, oppure potevano essere utilizzate come escalation dei privilegi locali e persistenza occulta se un attaccante otteneva l'esecuzione di codice o l'accesso fisico a un dispositivo che eseguiva l'agente ConnectWise Automate.
Le vulnerabilità sono state segnalate a ConnectWise il 20 agosto 2025. ConnectWise ha assegnato gli ID CVE e ha rilasciato una patch nella versione 2025.9 il 16 ottobre 2025.
Bollettino ConnectWise:
ID CVE:
2025.9 e pubblica il bollettino di sicurezza e i CVE.Ho apprezzato le risposte rapide di ConnectWise, il loro approccio collaborativo alla correzione e la disponibilità a discutere su come affrontare al meglio la classificazione e la correzione.
Classificare queste vulnerabilità è stata una sfida interessante. Sebbene il passaggio a HTTPS risolva praticamente tutti gli scenari descritti in questo report, era evidente che si trattava originariamente di una scelta progettuale (supportare HTTP) per migliorare l'affidabilità della comunicazione agente-server. Lo schema di crittografia sembrava riconoscere parzialmente / tentare di mitigare il rischio di AiTM, ma non era applicato in modo coerente. Approfondendo, si trattava di capire se la debolezza fosse http stesso o la mancanza di crittografia sopra HTTP, oltre a prevenzione del replay, validazione dei plugin, ecc., fossero tutte vulnerabilità a sé stanti. A un certo punto ConnectWise stava prendendo in considerazione 5+ CVE separati per diversi aspetti delle vulnerabilità.
Inoltre, il perimetro e il vettore di attacco cambiavano a seconda che la vulnerabilità fosse considerata da una prospettiva di AiTM (ad esempio Wi-Fi di un bar) o di LPE/accesso fisico. Un approccio alternativo sarebbe considerare ogni scenario come una vulnerabilità separata, ad esempio AiTM RCE, LPE, persistenza takeover, ecc.
Un ultimo insegnamento è che anche nel 2025 facciamo ancora fatica a condividere file in modo efficace :D (il filtro email non gradiva che inviassi file .dll o .zip che li contenevano).
Questo report viene pubblicato dopo il rilascio della patch da parte di ConnectWise e la divulgazione dei CVE, e con il loro accordo che tale divulgazione non danneggia i loro utenti. Inoltre, credo che la divulgazione pubblica di queste vulnerabilità e delle relative mitigazioni aiuterà altri vendor e professionisti della sicurezza a comprendere e mitigare meglio i rischi sia in ConnectWise Automate sia in altri sistemi RMM.
Il contenuto è destinato esclusivamente a finalità lecite e autorizzate di ricerca sulla sicurezza e scopi educativi. L'uso non autorizzato di queste informazioni per compromettere sistemi, reti o dati è illegale e non etico. Il contenuto è fornito "così com'è" e senza garanzie di alcun tipo. Gli autori declinano ogni responsabilità per eventuali danni derivanti dall'uso o dall'abuso di queste informazioni.
Se si utilizza questo codice o queste informazioni per ulteriori ricerche, praticare una divulgazione responsabile segnalando qualsiasi vulnerabilità scoperta ai vendor interessati.
Oltre al report qui sotto, questo repository contiene il codice PoC per dimostrare le vulnerabilità. Vedere automate_server/README.md per i dettagli sull'implementazione del server fittizio e sulle istruzioni d'uso.
Questo codice può essere utilizzato anche per effettuare ulteriori ricerche (etiche) sulla sicurezza di ConnectWise Automate.
Il report seguente (o una versione vicina ad esso) e il codice Python del PoC presente in questo repository sono stati forniti a ConnectWise, insieme alle mitigazioni raccomandate.
La sezione sulle mitigazioni rimossa entra più nel dettaglio sulle modifiche che potrebbero essere apportate all'agente Automate per indurirlo in diversi modi contro queste vulnerabilità.
Poiché alcune di queste modifiche sono ancora in fase di valutazione da parte di ConnectWise, tale sezione è stata rimossa da questa divulgazione pubblica.
L'agente ConnectWise Automate Remote Monitoring and Management (RMM) (testato sull'ultima versione ad agosto 2025, stringa di versione 250.252) è vulnerabile all'esecuzione remota di codice basata sulla rete in determinate configurazioni. Se l'agente è configurato per utilizzare un trasporto HTTP non crittografato (sia come primario sia come fallback) per il suo Server Address e un attaccante può eseguire un attacco Adversary-in-the-Middle (AiTM), allora può eseguire codice in remoto come SYSTEM. Questa configurazione è stata osservata in ambienti reali in più Managed Service Provider (MSP).
Lo sfruttamento è possibile anche se l'attaccante ottiene accesso fisico al dispositivo come non amministratore o può altrimenti collegare il dispositivo a una rete controllata dall'attaccante (cioè la vulnerabilità può essere utilizzata come escalation dei privilegi locali). Sebbene Automate utilizzi un sistema di crittografia per crittografare e validare la maggior parte dei comandi RMM, il suo sistema di plugin manca di una protezione adeguata e rimane suscettibile all'esecuzione remota di codice.