12 dicembre Analisi di sicurezza dell’applicazione SISS Security Assessment dell’applicativo e Reversing del client
TOE: Applicazione CRS-SISS Analisi: di livello applicativo e architetturale applicativo Approccio: black-box (zero knowledge) Analisi applicazione GP (prenotazioni visite specialistiche) Analisi applicazione GA Web (consultazione carta del cittadino) Analisi applicazione CRM (consultazione referti medici) 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 2
Analisi: punti di riflessione E’stata rilevata una architettura molto complessa, che demanda alcune funzioni critiche al client SISS La complessità architetturale, soprattutto client-side, rende intrinsecamente meno sicuro il sistema CRS- SISS Sono state evidenziate nuove problematiche a livello client rispetto al black-box della fase 1. Carenza di security design 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 3
Analisi: controlli client-side Lo schema architetturale mostra come molti controlli e richieste sono demandate a servizi locali che si interfacciano con la pagina Web. 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 4
Sommario delle criticità 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 5
Applicazione SISS – Criticità di elevata pericolosità (1) V01: il pc del legittimo utente è esposto a richieste (attacchi) non autorizzate Descrizione: errata implementazione del meccanismo di controllo di accesso al SEBContainer Impatto: è possibile richiamare funzionalità dell’applicazione da remoto senza alcuna limitazione V02: la logica client è scaricabile e completamente manipolabile Descrizione: errata implementazione del meccanismo di controllo di accesso alla APPLET Impatto: è possibile richiamare le funzionalità dell’applicazione client (applet) senza autenticazione V03*: l’accesso ai menù web non è adeguatamente controllato Descrizione: errata implementazione del meccanismo di controllo dell'accesso al menu SISS Impatto: è possibile accedere a viste e menù in modo non autorizzato 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 6
Applicazione SISS – Criticità di elevata pericolosità (2) V04*: molti controlli di sicurezza sono implementati lato client Descrizione: Controlli client-side Impatto: è possibile manipolare la logica V05*: l’accesso alla ricerca di referti non è adeguatamente controllata Descrizione: accesso non autorizzato alla funzionalità di ricerca referti Impatto: è possibile accedere alla lista dei referti con alcune informazioni sensibili 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 7
V06*: gli utenti amministrativi del DB locale non hanno password Descrizione: errata configurazione del DBMS MySQL Impatto: è possibile accedere in modo indiscriminato a tutte le informazioni presenti nel database locale V07*: la logica client non è protetta (vedere anche V02) Descrizione: logica client-side Impatto: è possibile decompilare la logica client e manipolarla a proprio piacimento V08: le comunicazioni fra le componenti client sono in chiaro Descrizione: errata scelta di protocolli in chiaro per comunicazioni client/client. Impatto: è possibile intercettare localmente i flussi di comunicazione e reperire informazioni sensibili Applicazione SISS – Criticità di media pericolosità (1) 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 8
Applicazione SISS – Criticità di media pericolosità (2) V09: le comunicazioni fra il client ed alcune componenti server sono trasferite in chiaro Descrizione: errata scelta di protocolli in chiaro per comunicazioni client/server Impatto: è possibile intercettare i flussi di comunicazione e reperire informazioni sensibili V10: reperibilità dei permessi per ogni utente Descrizione: accesso non autorizzato alla lista di funzionalità disponibile per tutte le utenze Impatto: è possibile ottenere tutte le associazioni funzionalità-ID V11: mancata validazione dei campi in input Descrizione: analisi della gestione delle condizioni di errore 1 Impatto: è possibile fare eseguire codice di scripting su un pc vittima 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 9
Applicazione SISS – Criticità di media pericolosità (3) V12: esposizione di informazioni sistemistiche del server Descrizione: analisi della gestione delle condizioni di errore 2. Impatto: è possibile ottenere l’alberatura del sistema remoto V13: il servizio è accedibile senza adeguati controlli Descrizione: mancanza di controlli di sessione nell'accesso alle funzionalità remote Impatto: è possibile interrogare un web service senza una logica di sessione V14: esposizione di informazioni potenzialmente sensibili inserite nei file del sistema Descrizione: presenza di informazioni sensibili nei file di configurazione. Impatto: è possibile 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 10
Applicazione SISS – Risultati (1) Il sistema ha evidenziato forti carenze di sicurezza lato client E’ infatti stato possibile: Caricare la applet da una pagina proveniente da un host arbitrario, ottenendo il controllo completo dell’utenza definita dalla smart card inserita nel momento dell’attacco. 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 11
Applicazione SISS – Risultati (2) Accedere al SebContainer in maniera ‘Blind’ da una pagina html proveniente da un host arbitrario. Accedere all SebContainer da un host remoto con accesso alla porta Si ottiene così parte o completo controllo sulle operazioni effettuabili dall’utenza definita dalla smart card inserita nel momento dell’attacco. 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 12
Applicazione SISS – Risultati (3) Utilizzando uno dei due attacchi suddetti in concomitanza all’abuso dei metodi SOAP esposti, è stato possibile ottenere controllo totale della macchina client e dei dati. 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 13
Applicazione SISS - Risultati (4) E’risultato possibile accedere: Ai menu applicativi corrispondenti a ruoli non attivi sulla smart card operatore consegnata ad HT per i test. Alla lista delle funzionalità di tutte le tipologie di utenze. E’stato realizzato uno scenario di attacco in cui un operatore con ruolo “Impiegato Amministrativo”(54) accede a parte delle funzionalità previste per il ruolo “Medico di Pronto Soccorso”(52) E’stato possibile accedere ad alcuni dati di natura sanitaria (patologie, ricoveri) relativi ad un “cittadino”di test 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 14
Analisi Rischio-Skill 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 15
Analisi Rischio-Effort 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 16
Azioni Correttive Correzione delle vulnerabilità individuate secondo quanto indicato nel documento “Azioni correttive” Alcune delle problematiche non sono probabilmente risolvibili nel breve periodo dal momento che coinvolgono aspetti architetturali del sistema. 12 dicembre 2015 © 2007 Hacking Team All Rights Reserved 17