14 Novembre 2023

La compromissione della chiave privata del server SSH passivo è reale per alcuni dispositivi vulnerabili

Utenti OpenSSL, LibreSSL, OpenSSH, non preoccupatevi: potete lasciar perdere questa cosa

Un recente studio accademico ha dimostrato come sia possibile, per un attaccante, intercettare le connessioni SSH di alcuni dispositivi e, con una certa fortuna, impersonare tali dispositivi dopo aver scoperto in segreto le chiavi RSA private degli host. Questo tipo di attacco, noto come “man-in-the-middle”, consente all’attaccante di osservare silenziosamente i dettagli di accesso degli utenti e di monitorare le loro attività con i server SSH remoti. SSH è comunemente utilizzato per accedere a un dispositivo e controllarlo tramite un’interfaccia a riga di comando, anche se esistono altri usi.

Le chiavi RSA private dell’host possono essere ottenute sorvegliando passivamente le connessioni dai client al server SSH di un dispositivo vulnerabile: errori computazionali accidentali o naturali durante la generazione della firma possono essere osservati e sfruttati per calcolare la chiave privata del server SSH, idealmente segreta.

Gli errori naturali si riferiscono a quelli causati da raggi cosmici e altri piccoli guasti che alterano i bit, mentre gli errori accidentali sono dovuti a algoritmi di generazione della firma RSA implementati in modo scadente. Si potrebbe pensare che i primi siano così rari da non essere sfruttabili realisticamente e che i secondi sarebbero già noti, ma si assicura che monitorando abbastanza connessioni SSH verso un server SSH vulnerabile, si finirà per vedere una connessione che si può sfruttare.

È importante sottolineare che le librerie software OpenSSL e LibreSSL, e quindi OpenSSH, non sono conosciute per essere vulnerabili a questo metodo di deduzione della chiave. Ciò significa, secondo la nostra opinione, che la grande maggioranza dei dispositivi, server e altre apparecchiature su Internet non sono a rischio, e ciò che rimane sono alcuni dispositivi Internet-of-Things e apparecchiature integrate simili suscettibili di attacco. Questo riguarda solo le chiavi RSA.

Lo studio è stato condotto da Keegan Ryan, Kaiwen He, George Arnold Sullivan e Nadia Heninger dell’Università della California, San Diego (Kaiwen He è anche al MIT). La tecnica utilizzata dal team per discernere le chiavi RSA private deriva dalla ricerca TLS-smashing di Florian Weimer nel 2015 e dai lavori del 2022 di alcuni degli autori del documento di San Diego, oltre a ricerche che risalgono agli anni ’90.

Passive SSH Key Compromise via Lattices

Thomas Ptacek, un esperto di Infosec, ha condiviso un riassunto del documento sulla chiave RSA qui, per una spiegazione facile da comprendere della questione. Un ringraziamento va anche a Dan Goodin, ex giornalista di Register, che ha segnalato il documento tramite Ars Technica.

Quando un client si connette a un server SSH vulnerabile, durante le loro negoziazioni per stabilire comunicazioni sicure e criptate, il server genera una firma digitale che il client verifica per assicurarsi di parlare con il server che si aspetta.

Questa generazione della firma può essere interrotta casualmente o accidentalmente, come descritto sopra, in modo che algoritmi intelligenti possano dedurre dalla firma errata la chiave RSA privata del server, utilizzata nella generazione della firma. Una contromisura è assicurarsi che la firma sia corretta prima di emetterla al client; OpenSSL e LibreSSL già fanno questo.

Gli autori dello studio hanno affermato:

Dimostriamo che un attaccante passivo può ottenere opportunisticamente chiavi RSA private dell’host da un server SSH che subisce un errore naturale durante il calcolo della firma. In precedenza, si credeva che ciò non fosse possibile per il protocollo SSH perché la firma includeva informazioni come il segreto condiviso Diffie-Hellman che non sarebbe disponibile a un osservatore di rete passivo. Mostriamo che per i parametri di firma comunemente utilizzati per SSH, esiste un attacco efficiente a griglia per recuperare la chiave privata in caso di errore di firma. Forniamo un’analisi della sicurezza dei protocolli SSH, IKEv1 e IKEv2 in questo scenario e utilizziamo il nostro attacco per scoprire centinaia di chiavi compromesse nel mondo da diverse implementazioni vulnerabili indipendentemente.

Un avversario passivo può monitorare silenziosamente le connessioni legittime senza rischiare di essere rilevato fino a quando osserva una firma errata che espone la chiave privata. L’attaccante può poi impersonare attivamente e in modo non rilevabile l’host compromesso per intercettare dati sensibili.

I ricercatori hanno affermato di aver esaminato Internet e di aver esaminato i dati di scansione SSH precedentemente raccolti per misurare la prevalenza di firme vulnerabili, e hanno dichiarato che il loro dataset di circa 5,2 miliardi di record SSH, che coprono più di sette anni di osservazioni, conteneva più di 590.000 firme RSA invalidi.

Utilizzando la loro tecnica di recupero delle chiavi reticolare gli accademici hanno affermato che più di 4.900 di quelle firme difettose hanno rivelato la fattorizzazione della corrispondente chiave pubblica RSA, che hanno utilizzato per derivare le chiavi RSA private per 189 di quelle chiavi pubbliche.

Durante la loro ricerca, gli autori hanno scoperto quattro produttori i cui prodotti erano vulnerabili a questo tipo di indagine sulle chiavi: Cisco, Zyxel, Hillstone Networks e Mocana. I ricercatori hanno divulgato il problema a Cisco e Zyxel, e notano che entrambi i fornitori “hanno indagato prontamente”.

Cisco ha determinato che il suo software ASA e FTD ha risolto il problema nel 2022 e, prima della pubblicazione del documento, “stava indagando su mitigazioni” per il software IOS e IOS XE.

Nel frattempo, Zyxel ha concluso che il difetto riguardava solo il suo firmware end-of-life e che a quel punto aveva iniziato a utilizzare l’OpenSSL non vulnerabile. I ricercatori affermano di non essere riusciti a contattare Hillstone Networks e Mocana e hanno invece sottoposto il problema al CERT Coordination Center.

Si dice anche che un’implementazione del server SSH che si dichiara come “SSH-2.0-SSHD” sia vulnerabile, e ciò potrebbe essere utilizzato da alcune applicazioni Java di livello aziendale. Poiché la tecnica di deduzione delle chiavi ruota attorno a PKCSv1.5, anche DNSSEC che utilizza firme PKCSv1.5-RSA potrebbe essere a rischio.

Hanno anche notato che il set di dati delle firme nelle connessioni IPsec non era abbastanza grande per concludere se questo protocollo sia vulnerabile a una simile perdita di chiavi: “Data la rarità dei difetti di firma vulnerabili, non siamo in grado di concludere molto sulle implementazioni IPsec dai nostri dati e riteniamo che questa domanda meriti ulteriori studi.

 

Hai dei dubbi? Non sai da dove iniziare? Contattaci !

Abbiamo tutte le risposte alle tue domande per aiutarti nella giusta scelta.

Chatta con noi

Chatta direttamente con il nostro supporto prevendita.

0256569681

Contattaci telefonicamente negli orari d’ufficio 9:30 – 19:30

Contattaci online

Apri una richiesta direttamente nell’area dei contatti.

INFORMAZIONI

Managed Server S.r.l. è un player italiano di riferimento nel fornire soluzioni avanzate di sistemistica GNU/Linux orientate all’alta performance. Con un modello di sottoscrizione dai costi contenuti e prevedibili, ci assicuriamo che i nostri clienti abbiano accesso a tecnologie avanzate nel campo dell’hosting, server dedicati e servizi cloud. Oltre a questo, offriamo consulenza sistemistica su sistemi Linux e manutenzione specializzata in DBMS, IT Security, Cloud e molto altro. Ci distinguiamo per l’expertise in hosting di primari CMS Open Source come WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart e Magento, affiancato da un servizio di supporto e consulenza di alto livello adatto per la Pubblica Amministrazione, PMI, ed aziende di qualsiasi dimensione.

Red Hat, Inc. detiene i diritti su Red Hat®, RHEL®, RedHat Linux®, e CentOS®; AlmaLinux™ è un marchio di AlmaLinux OS Foundation; Rocky Linux® è un marchio registrato di Rocky Linux Foundation; SUSE® è un marchio registrato di SUSE LLC; Canonical Ltd. detiene i diritti su Ubuntu®; Software in the Public Interest, Inc. detiene i diritti su Debian®; Linus Torvalds detiene i diritti su Linux®; FreeBSD® è un marchio registrato di The FreeBSD Foundation; NetBSD® è un marchio registrato di The NetBSD Foundation; OpenBSD® è un marchio registrato di Theo de Raadt. Oracle Corporation detiene i diritti su Oracle®, MySQL®, e MyRocks®; Percona® è un marchio registrato di Percona LLC; MariaDB® è un marchio registrato di MariaDB Corporation Ab; REDIS® è un marchio registrato di Redis Labs Ltd. F5 Networks, Inc. detiene i diritti su NGINX® e NGINX Plus®; Varnish® è un marchio registrato di Varnish Software AB. Adobe Inc. detiene i diritti su Magento®; PrestaShop® è un marchio registrato di PrestaShop SA; OpenCart® è un marchio registrato di OpenCart Limited. Automattic Inc. detiene i diritti su WordPress®, WooCommerce®, e JetPack®; Open Source Matters, Inc. detiene i diritti su Joomla®; Dries Buytaert detiene i diritti su Drupal®. Amazon Web Services, Inc. detiene i diritti su AWS®; Google LLC detiene i diritti su Google Cloud™ e Chrome™; Microsoft Corporation detiene i diritti su Microsoft®, Azure®, e Internet Explorer®; Mozilla Foundation detiene i diritti su Firefox®. Apache® è un marchio registrato di The Apache Software Foundation; PHP® è un marchio registrato del PHP Group. CloudFlare® è un marchio registrato di Cloudflare, Inc.; NETSCOUT® è un marchio registrato di NETSCOUT Systems Inc.; ElasticSearch®, LogStash®, e Kibana® sono marchi registrati di Elastic N.V. Hetzner Online GmbH detiene i diritti su Hetzner®; OVHcloud è un marchio registrato di OVH Groupe SAS; cPanel®, L.L.C. detiene i diritti su cPanel®; Plesk® è un marchio registrato di Plesk International GmbH; Facebook, Inc. detiene i diritti su Facebook®. Questo sito non è affiliato, sponsorizzato o altrimenti associato a nessuna delle entità sopra menzionate e non rappresenta nessuna di queste entità in alcun modo. Tutti i diritti sui marchi e sui nomi di prodotto menzionati sono di proprietà dei rispettivi detentori di copyright. Ogni altro marchio citato appartiene ai propri registranti. MANAGED SERVER® è un marchio registrato a livello europeo da MANAGED SERVER SRL, Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italia.

Torna in alto