Table of Contents Table of Contents
Previous Page  71 / 86 Next Page
Information
Show Menu
Previous Page 71 / 86 Next Page
Page Background

XIII

MEDICAL 15 -

OTTOBRE 2017

SICUREZZA

Protezione dei dati in transito

Per dati in transito si intendono quei dati che entrano o

escono dall’apparato mentre esso si trova nello stato di

“acceso”. Un progetto ben concepito deve sempre affron-

tare le seguenti due aree di potenziali problematicità:

prima dell’invio dei dati, il dispositivo opera una

qualsiasi forma di mutua attestazione delle identità

delle parti? Sono disponibili numerose tecniche ed

accorgimenti impiegabili per autenticare l’identità

del destinatario, prima di inviargli le informazioni;

nell’eventualità che la trasmissione venga intercettata,

in che modo vengono protetti i dati? La crittografia dei

dati in transito, in aggiunta a quelli a riposo, garantisce

un significativo livello di protezione. Per consentire ope-

razioni crittografiche efficienti, è tuttavia doveroso va-

lutare l’utilizzo di SoC dotati di crypto engines integra-

ti. Un crypto engine è un modulo autonomo presente

nell’hardware, appositamente concepito per sollevare il

processore principale dal carico computazionale legato

alla codifica/decodifica crittografica. Poiché il crypto

engine è costituito da un blocco di IP totalmente auto-

nomo, per gli hacker è difficile individuare tecniche che

consentano loro di ottenere l’accesso al processo critto-

grafico. L’utilizzo dei crypto engines può avere un enor-

me impatto sulla capacità da parte dell’applicazione di

proteggere i dati in modo rapido ed efficiente.

Dopo aver evidenziato le principali tecnologie utilizzabili

dai produttori di apparati medicali, è necessario menzio-

nare anche alcuni aspetti relativi al processo di sviluppo

vero e proprio. Per alcuni sviluppatori, processi struttu-

rati come il Security Development Lifecycle (SDL) posso-

no apparire eccessivamente onerosi e formali; tuttavia, è

necessario dedicare la giusta attenzione alla selezione di

un insieme appropriato di strumenti in grado di garan-

tire la tracciabilità dei requisiti, del codice e delle casisti-

che di test. È inoltre importante che, nel corso del pro-

cesso di sviluppo, vengano utilizzati dei tool appropriati

per la fase di verifica. La verifica e la validazione possono

essere ricondotte ad attività relativamente semplici, ad

esempio mediante l’utilizzo di tool per eseguire l’analisi

statica del codice, volta a garantire la conformità con va-

rie linee guida o standard relativi alla sicurezza ed all’affi-

dabilità, quali MISRA oppure Cert C. Relativamente alla

sicurezza legata alle funzioni di connettività più avanza-

te, si rivela inoltre importante l’esecuzione di attività di

stress testing della rete, come anche l’impiego di opzioni

di testing e di certificazione erogati da terze parti indi-

pendenti, come ad esempio la certificazione Achilles of-

ferta da Wurldtech, un partner specializzato di Mentor.

Una volta completato lo sviluppo e commercializzati

gli apparati, è infine necessario determinare anche una

adeguata strategia per le procedure di manutenzione

correttiva. Tale aspetto può talvolta costituire il fattore

decisivo per optare verso l’adozione di una distribuzione

Linux di tipo commerciale, come ad esempio Mentor

Embedded Linux. Tra i vantaggi che spettano agli acqui-

renti di Mentor Embedded Linux vi è infatti la disponi-

bilità di un apposito team di Mentor specializzato per

la sicurezza, costantemente impegnato a monitorare in

modo proattivo il sito web del US-Cert, per identificare

tutte le CVE (Common Vulnerabilities and Exposures)

che possano interessare i propri prodotti. Ogniqualvolta

una vulnerabilità viene scoperta, Mentor provvede a dar-

ne notifica ai propri clienti, fornendo loro anche le ap-

posite patch per ogni prodotto interessato, in conformi-

tà alla policy di supporto dei prodotti Mentor. A questo

punto il costruttore del dispositivo può decidere come e

quando applicare le patch al codice di base utilizzato per

il proprio prodotto e, se necessario, procedere al rollout

di un proprio aggiornamento software.

Fig. 2 –

Il process model di Nucleus costituisce un approccio “leggero” al partizionamento dello spazio applicativo, basato sulla creazione di regioni protette

all’interno della memoria