Table of Contents Table of Contents
Previous Page  68 / 84 Next Page
Information
Show Menu
Previous Page 68 / 84 Next Page
Page Background

EMBEDDED

64 • MAGGIO • 2017

68

SOFTWARE

|

DYNAMIC ANALYSIS

È

convinzione diffusa che la sola applicazione

dell’analisi statica basti ad evidenziare e debellare

i problemi di sicurezza più comuni. Tuttavia, dato

l’elevato numero di falsi positivi segnalati quando

si utilizza l’analisi statica, capire se si è rilevato un

errore reale è un processo che richiede tempo, e le

À

nascosto l’errore sotto un falso-negativo. Ma quali

sono le alternative? Scopo di questo articolo è evi-

denziare i vantaggi derivanti dall’analisi dinamica

per il rilevamento di potenziali vulnerabilità nei

moderni ambienti embedded. Esso descrive anche

come l’abbinamento tra l’analisi statica e quella di-

namica permetta di creare “actionable intelligence”

'

À

-

4

À

sullo stile dei siti di rating tipo “Morningstar” della

Sicurezza Informatica(1). Siamo tutti venuti a patti

con l’idea di dispositivi in un mondo interconnesso,

con la sua incarnazione più recente che cade sotto

l’appellativo di “Internet of Things”. Mentre contem-

pliamo un mondo in cui ogni dispositivo è connesso

a internet, vi sono crescenti preoccupazioni circa la

sicurezza dei nodi di comunicazione e dei loro siste-

mi di controllo centralizzato. La società di analisi di

settore Gartner prevede che entro il 2020 i terminali

IoT con caratteristiche di sicurezza, sia stand-alone

che basati su hardware e software, cresceranno dai

103 milioni installati nel 2013 ad un tasso annuale

composito del 33,4%, raggiungendo una popolazione

In questo articolo sono evidenziati

i vantaggi derivanti dall’analisi

dinamica per il rilevamento di

potenziali vulnerabilità nei moderni

ambienti embedded

Un’intelligenza

esecutiva per

la sicurezza

del software

Niroshan Rajadurai

VectorCast

globale di 775 milioni(2). Molti di questi dispositivi

saranno in sistemi racchiusi all’interno di dispositi-

vi e apparecchiature. Tuttavia, come conseguenza

Gartner prevede anche che il 25% degli attacchi alla

44

À

4

'

-

spositivi IoT e che, addirittura entro il 2018, oltre il

50% dei produttori di dispositivi IoT sarà nell’inca-

pacità di affrontare le minacce a causa delle deboli

pratiche di sicurezza(3). Le vulnerabilità della sicu-

rezza possono originarsi in un prodotto non appena

siano state scrittele prime righe di codice, e il vero

pericolo è che non vengano rilevate se non quando

è troppo tardi. Questa vulnerabilità può rappre-

sentare un serio pericolo, che può essere sfruttato

&

À 7

4

7

'

distribuito sul campo. Di conseguenza, lo sviluppo

di applicazioni sicure e di elevata qualità richiede

una vigilanza costante in tutte le fasi di sviluppo.

Vale a dire che è necessario utilizzare strumenti

in grado di rilevare possibili vulnerabilità già du-

rante la scrittura del codice, l’integrazione dei mo-

À

'

hardware. L’adozione di un tool di analisi statica

è una buona scelta in teoria, e tra gli sviluppato-

ri è comune voler conoscere i seguenti principi: a)

abbiamo dei problemi di qualunque tipo?, b) quan-

ti? e c) quali e dove sono? Valutare il codice con un

analizzatore statico vi darà qualche indicazione, ma

non è questa la soluzione “pigliatutto”, soprattutto

quando è la sicurezza a essere in gioco. Gli strumen-

ti di analisi statica analizzano sintassi, semantica,

Á

À

'

2 $

-

Fig. 1 – Un caso in cui l’analisi statica può non

rilevare il problema