Common Criteria: la certificazione per la sicurezza informatica

5
 CP pensare–progettare–programmare — n. 134 — aprile 2004 Common Criteria: la certicazione per la sicurezza informatica di Vincenzo Fioriti ISO 15408 qualit ` a ed afdabilit ` a per la sicurezza informatica Vincenzo Fioriti Svolge attivit ` a di advisor tecnico-scientico. E’ laureato in ingegneria elettronica, si occupa di Reti Neurali, Caos, Cibernetica e sicurezza informatica. E’ membro del gruppo STRATA-ETAN UE (supporto scientico delle attivit ` a della UE).

description

CP — n. 134 — aprile 2004 - Common Criteria: la certificazione per la sicurezza informatica di Vincenzo Fioriti - ISO 15408 qualità ed affidabilità per la sicurezza informatica

Transcript of Common Criteria: la certificazione per la sicurezza informatica

Page 1: Common Criteria: la certificazione per la sicurezza informatica

5/10/2018 Common Criteria: la certificazione per la sicurezza informatica - slidepdf.com

http://slidepdf.com/reader/full/common-criteria-la-certificazione-per-la-sicurezza-informatica 1/5

 

CP pensare–progettare–programmare — n. 134 — aprile 2004

Common Criteria: la certificazioneper la sicurezza informaticadi Vincenzo Fioriti

ISO 15408 qualita ed affidabilita per la sicurezza informatica

Vincenzo Fioriti

Svolge attivita di advisortecnico-scientifico. E’laureato in ingegneriaelettronica, si occupadi Reti Neurali, Caos,

Cibernetica e sicurezzainformatica. E’ membrodel gruppo STRATA-ETANUE (supporto scientificodelle attivita della UE).

Page 2: Common Criteria: la certificazione per la sicurezza informatica

5/10/2018 Common Criteria: la certificazione per la sicurezza informatica - slidepdf.com

http://slidepdf.com/reader/full/common-criteria-la-certificazione-per-la-sicurezza-informatica 2/5

 

pubblicato su

WWW.INFOMEDIA.IT

stampa digitale da

Lulu Enterprises Inc.

stores.lulu.com / infomedia

Infomedia

Infomedia e l’impresa editoriale che da quasi venti an-

ni ha raccolto la voce dei programmatori, dei sistemi-

sti, dei professionisti, degli studenti, dei ricercatori e dei

professori d’informatica italiani.

Sono piu di 800 gli autori che hanno realizzato per le te-

state Computer Programming, Dev, Login, Visual Basic

Journal e Java Journal, molte migliaia di articoli tecnici,

presentazioni di prodotti, tecnologie, protocolli, strumen-ti di lavoro, tecniche di sviluppo e semplici trucchi e stra-

tagemmi. Oltre 6 milioni di copie distribuite, trentamila

pagine stampate, fanno di questa impresa la piu grande ed

influente realta dell’editoria specializzata nel campo della

programmazione e della sistemistica.

In tutti questi anni le riviste Infomedia hanno vissuto del-

la passione di quanti vedono nella programmazione non

solo la propria professione ma un’attivita vitale e un vero

divertimento.

Nel 2009, Infomedia e cambiata radicalmente adottando

un nuovo modello aziendale ed editoriale e si e organiz-

zata attorno ad una idea di Impresa Sociale di Comunita,

partecipata da programmatori e sistemisti, separando le

attivita di gestione dell’informazione gestite da un board

comunitario professionale e quelle di produzione gesti-

te da una impresa strumentale. Questo assetto e in linea

con le migliori esperienze internazionali e rende Infome-

dia ancora di piu parte della Comunita nazionale degli

sviluppatori di software.

Infomedia e media-partner di manifestazioni ed eventi in

ambito informatico, collabora con molti dei pi u impor-tanti editori informatici italiani come partner editoriale e

fornitore di servizi di localizzazione in italiano di testi in

lingua inglese.

L’impaginazione automatica di questa rivista e realizzata al

100% con strumenti Open Source usando OpenOffice,

Emacs, BHL, LaTeX, Gimp, Inkscape e i linguaggi Lisp,

Python e BASH

For copyright information about the contents of Compu-

ter Programming, please see the section “Copyright” at 

the end of each article if exists, otherwise ask authors. Infomedia contents is© 2004 Infomedia and released as

Creative Commons 2.5 BY-NC-ND. Turing Club content 

is © 2004 Turing Club released as Creative Commons

2.5 BY-ND.

 Le informazioni di copyright sul contenuto di Computer 

Programming sono riportate nella sezione “Copyright”

alla fine di ciascun articolo o vanno richieste direttamen-

te agli autori. Il contenuto Infomedia e© 2004 Infome-

dia e rilasciato con Licenza Creative Commons 2.5 BY-

 NC-ND. Il contenuto Turing Club e© 2004 Turing Club

e rilasciato con Licenza Creative Commons 2.5 BY-ND.

Siapplicano tuttele normedi tuteladeimarchie deisegni

distintivi.

` E in ogni caso ammessa la riproduzione parziale o tota-

le dei testi e delle immagini per scopo didattico purch´ e

vengano integralmente citati gli autori e la completa

identificazione della testata.

 Manoscritti e foto originali, anche se non pubblicati, non

si restituiscono.

Contenuto pubblicitario inferiore al 45%.

  La biografia dell’autore riportata nell’articolo e sul

sito www.infomedia.it e di norma quella disponibi-

le nella stampa dell’articolo o aggiornata a cu-

ra dell’autore stesso. Per aggiornarla scrivere a

[email protected] o farlo in autonomia all’indirizzo

http: // mags.programmers.net  / moduli / biografia

Page 3: Common Criteria: la certificazione per la sicurezza informatica

5/10/2018 Common Criteria: la certificazione per la sicurezza informatica - slidepdf.com

http://slidepdf.com/reader/full/common-criteria-la-certificazione-per-la-sicurezza-informatica 3/5

 

Lo standard ISO 15408, noto come CommonCriteria (Cc) [1, 2, 3], è un insieme di norme,indicazioni, suggerimenti, formulazioni, riguardan-ti la sicurezza informatica in senso lato. Le grandez-

ze delle normative ingegneristiche generalmente sono lun-ghezze, volumi, densità e intensità, ma ovviamente il soft-ware e i prodotti relativi ad esso necessitano di modalitàdiverse, di tipo logico-linguistico, per quanto il livello mas-simo dei Cc preveda un approccio matematico-formale.

Certificare un firewall, un database, una smart-card, unrouter, un tool od altro, significa produrre una documenta-zione relativa all’oggetto da certificare (detto Target Of Evaluation, TOE, chi lo presenta è lo SPONSOR) e farla

verificare da una terza parte indipendente.Gli argomenti del documento fondamentale (dettoSecurity Target, ST) sono vari: progettazione, spedizione,addestramento, riuso, identificazione utenze, correttezza,testing, manutenzione, vulnerabilità, crittografia, limita-zione degli accessi, documentazione, politiche di sicurezzae così via.

La lettura dei Cc non è affatto agevole, e richiede cono-scenze approfondite dei sistemi informatici, di programma-zione, di hardware, dei protocolli, del risk assessment, finoai metalinguaggi ed alla matematica. Il tutto comportauno sforzo di astrazione, in cambio del quale si ottiene unadescrizione precisa ed affidabile del prodotto. Vale la pena,quindi, esplorare questo standard apparentemente ostico.

A cosa serveUna ISO 15408 è in primo luogo uno strumento atto a

garantire un minimo di fiducia nelle prestazioni vantatedallo SPONSOR. Di solito è richiesta da enti ed istituzio-ni statali, ma può essere usata come attestato di qualità neiconfronti di consumatori ed utenti. È anche probabile unasua affermazione come supporto alla contrattualistica perdefinire meglio le specifiche inserite negli accordi com-merciali e tecnici.

Dal punto di vista dei consumatori la certificazione aiutaa chiarire quali garanzie offre un certo prodotto rispettoalla IT security, ma bisogna dire che serve un minimo diconoscenza dei Cc per ottenere informazioni veramenteutili ed affidabili; quel che si trova nel ST e anche quelloche non si trova dà comunque una certa idea delle perfor-mance.

A volte, ma non v’è obbligo alcuno, i ST si basano su undocumento analogo detto Protection Profile (PP), emessoda enti, agenzie, istituzioni, ministeri o ditte private, in cuisono offerte delle linee guida; in tal modo si configura unprofilo di riferimento delle caratteristiche di sicurezza di uncerto prodotto. Anche se non vincolante, un Protection

Profile emesso da un organismo di prestigio rappresentacomunque un modello con il quale confrontarsi, ed unesempio di cosa aspettarsi da una certificazione con ambi-zioni di una certa rilevanza.

Infine, consideriamo l’aumento di correttezza nella scrit-tura del codice software. I Cc spingono ad eliminare glierrori in tale fase grazie ad una serie di richieste (REQUI-REMENTS) sempre più stringenti col livello di certifica-zione voluta. Se si pensa alla stima (conservativa) di unerrore ogni mille linee-codice si ricava subito l’importanzadi questo punto. È poi ben nota l’azione di exploit deglierrori software da parte degli hacker, alla base di circa il50% degli attacchi.

Storia dei CcIl termine “Common” sta ad indicare il laborioso accor-

do fra alcuni Stati Europei e Nord Americani. Si è iniziatonegli USA con l’Orange Book e le sue 7 classi di sicurezza,spazianti dal semplice controllo d’accesso al sistema finoalla analisi matematica delle funzioni. L’Orange Book nonè molto elastico, ed è orientato ai sistemi operativi.

 Nel 1990 alcuni stati europei risposero con ITSEC, dif-ferenziando le capacità operativo-funzionali dalla fiducia(ASSURANCE) nella loro efficacia reale. Si volle gradua-re il livello di fiducia da riporre nelle soluzioni presentatein modo da specificare meglio l’affidabilità dell’intero siste-ma.

I Cc hanno mantenuto tale impostazione estendendolaed introducendo i Protection Profile, elemento importanteper la pratica commerciale. Dopo alcuni contrasti conUSA-Canada, nel 1999 è stata emanata la versione 2.1 dei“Common Criteria for the Information TechnologySecurity Evaluation”.

28 Computer Programming • n. 134 - Aprile 2004

FOCUS

Common Criteria:

la certificazione per lasicurezza informaticaISO 15408 qualità ed affidabilità per la sicurezza informatica

di Vincenzo Fioriti

 Vincenzo Fioriti

Svolge attività di advisor tecnico-scientifico. È laureato in ingegneriaelettronica, si occupa di Reti Neurali, Caos, Cibernetica e sicurezzainformatica. È membro del gruppo STRATA-ETAN UE (supporto scien-tifico delle attività della UE).

[email protected]

Page 4: Common Criteria: la certificazione per la sicurezza informatica

5/10/2018 Common Criteria: la certificazione per la sicurezza informatica - slidepdf.com

http://slidepdf.com/reader/full/common-criteria-la-certificazione-per-la-sicurezza-informatica 4/5

 

Oggi in Italia le disposizioni di legge impongono la cer-tificazione ai prodotti di uso militare (per i quali esistonogià le strutture tecniche di verifica ISCT, IMQ, RES,INFORSUD) e per le infrastrutture della firma digitale.

Descrizione dei Cc

Il documento fondante l’ ISO/IEC 15408:1999 consta ditre parti:

• introduzione e modello;• requisiti funzionali;• requisiti di garanzia.

Da questo documento si ottengono tutte le indicazioniper la scrittura del Security Target (ST), che sarà poi valu-tato da una terza parte autorizzata ed indipendente.

Il Security Target descrive genericamente l’ambiente incui il TOE si troverà ad operare e le minacce da affrontare,gli scopi prefissati e le funzionalità che ne garantiscono ilconseguimento con un certo margine di probabilità. Infine

si spiegano le motivazioni di fondo per le scelte fatte.La struttura di un documento ST è la seguente:

• ST introduction (identification, overview, conforman-ce);

• TOE description;• TOE security environment (assumptions, threats, poli-

cies);• Security objectives (s.o. for the TOE, s.o. for the envi-

ronment);• IT security requirements (TOE security functional

requirements, TOE security assurance requirements);• TOE summary specifications (TOE security functions,

assurances measurements);• PP claims (PP reference, PP tailoring, PP additions);• Rationale (s.o. rationale, security requirements rationa-

le, TOE summary specification rationale, PP claimsrationale).

La parte maggiormente importante riguarda la sceltadelle funzioni di sicurezza che descrivono la performancedel TOE, “IT security requirements”. Ovviamente le affer-mazioni fatte nel ST e le reali capacità del TOE devonocorrispondere. Le funzioni si descrivono tramite ELEMEN-TI e COMPONENTI, contenuti in FAMIGLIE a lorovolta facenti parte di CLASSI. Esempio:  FIA_UID.1.1implica la CLASSE  FIA, la FAMIGLIA UID con COM-

PONENTE 1 ed ELEMENTO 1.Le CLASSI si distinguono per le finalità, le FAMIGLIEdifferiscono per enfasi, le COMPONENTI sono un set difunzioni effettive composte di ELEMENTI. La scelta di uncomponente può obbligare a sceglierne altri collegati adesso.

Le CLASSI sono: AUDIT, CRYPTO SUPPORT, USERDATA PROTECTION, IDENTIFICATION, SECURITYMANAGEMENT, PRIVACY, TOE PROTECTION,RESOURCE UTILIZATION, ACCESS, TRUSTEDPATH/CHANNELS. Nella stesura dei documenti vengo-no indicate da abbreviazioni:

• FAU: conserva e ottiene le informazioni relative alTOE ed ai dati

• FCS: crittografia• FCO: specifica origine/destinazione e non ripudiabilità

dei dati• FDP: protegge i dati

• FIA: identifica/autentica gli utenti ed assegna le prio-rità

• FMT: definisce regole ed attributi per la gestione deidati

• FPR: difende i dati sensibili• FPT: protegge le operazioni di sicurezza

• FRU: rende disponibili le risorse• FTA: regolamenta le sessioni di lavoro• FTP: assicura i canali di comunicazione con l’utenza

Scendendo lungo la catena CLASSE –> FAMIGLIA –>COMPONENTE si sceglieranno i componenti adeguati adescrivere una certa azione hardware o software del TOE.

Spesso la scelta di un componente è resa obbligata dallapresenza di una minaccia da contrastare o da un compo-nente precedentemente scelto. Ciò potrebbe esser causa diqualche difficoltà, quando il TOE non risultasse progetta-to in accordo con i Cc oppure se il livello di certificazionedesiderato dallo SPONSOR eccedesse le capacità delTOE.

Infatti sono possibili sette EVALUATION ASSURAN-CE LEVEL (EAL 1-7), e lo SPONSOR deve decidere aquale conformarsi. L’EAL definisce il grado di ASSU-RANCE certificato, ed è un concetto centrale nei Cc.

Bisogna però far attenzione al significato di EAL. Unlivello elevato, diciamo dal quinto in su, non implica unagrande sicurezza in assoluto del TOE, ma solo che le misureadottate per confrontarsi con talune minacce sono state(probabilmente) correttamente ed efficacemente imple-mentate nel TOE.

Essendo lo SPONSOR a stabilire quali minacce affron-tare, è ben possibile presentare un TOE con un alto livelloEAL ma solo relativamente ad un ristretto e poco perico-loso gruppo di rischi, tralasciando, per insindacabili motivi(per esempio questioni di marketing o costi), di affrontare

gli attacchi più insidiosi ed ostici.La garanzia, perciò, riguarda soltanto il contenuto delSecurity Target nelle modalità ivi indicate: non si asserisceche il TOE risulta essere un oggetto effettivamente ed asso-lutamente sicuro.

Descriviamo ora in breve gli Evaluation AssuranceLevel:

• EAL1: i rischi non sono rilevanti, ma si desidera unminimo di correttezza relativamente alle misure adotta-te;

• EAL2: come prima, ma con attenzione alla spedizione,al testing e al progetto;

• EAL3: una elevata affidabilità delle contromisure otte-nuta senza apportare modifiche ai sistemi di produzionegià in vigore;

• EAL4: massima affidabilità con piccole modifiche aimodi di produzione già in vigore. È il più richiesto dagliSPONSOR;

Computer Programming • n.134 - Aprile 2004 29

Professione informatico

La lettura dei Cc non èaffatto agevole, e richiede

conoscenze approfondite

dei sistemi informatici

Page 5: Common Criteria: la certificazione per la sicurezza informatica

5/10/2018 Common Criteria: la certificazione per la sicurezza informatica - slidepdf.com

http://slidepdf.com/reader/full/common-criteria-la-certificazione-per-la-sicurezza-informatica 5/5

 

FOCUS

• EAL5: sarà forse necessario impiegare progettisti esper-ti in sicurezza per il TOE, ed un maggior uso di risorse;

• EAL6: il livello di ASSURANCE è molto elevato, conalti costi. Per minacce gravi. Anche la spedizione, iltesting, la progettazione devono essere di alta qualità;

• EAL7: come EAL6, ma sono richieste dimostrazioni

formali di ciò che si afferma. In tutte le fasi i formalismisono largamente usati fin dalla fase di progetto, ed èrichiesta anche la dimostrazione dell’assenza di breccenell’accesso ai dati.

Oltre agli alti costi, non è ben chiaro cosa possa accet-tarsi come “dimostrazione”, e quali linguaggi formaliimpiegare, data la insufficienza di strumenti del tipoTeorema Bell-Lapadula.

Anche per l’ASSURANCE viene proposto un catalogodi classi, famiglie e componenti da scegliere opportuna-mente. Senza entrare in dettaglio, si dispone di:Configurazione (ACM), Spedizione (ADO), Sviluppo(ADO), Documentazione (AGD), Ciclo di vita (ALC),Test (ATE), Analisi vulnerabilità (AVA), Mantenimento

della ASSURANCE (AMA).Un esempio

Vediamo ora un esempio indicativo ed estremamentesemplificato di come si procede in pratica. Il caso in esameè un tool software il cui ST è stato elaborato nel 1999, edè reperibile con facilità sul WEB. Il TOE è un componen-te di sicurezza della gestione file, proposto per un EAL1,livello minimo di ASSURANCE. Non si segue alcunProtection Profile.

Si ipotizza un attaccante dotato di capacità e risorsemedio-basse; la minaccia consiste nella appropriazione nonautorizzata di dati, sia essa intenzionale o accidentale. IlTOE deve rendere impossibile il realizzarsi della minaccia

durante la normale attività del PC, sovrascrivendo i dati da pro-teggere. Si noti che il documento sottolinea come sia possi-bile, in via teorica, asportando il PC ed impiegando attrez-zature molto sofisticate ottenere i file cancellati, ma questasituazione è tra le minacce che non si è scelto di affrontare.

I REQUIREMENTS funzionali sono semplici: FDP_RIP.2 - cioè “Funzione Protezione Dati: le funzionidel TOE dovranno garantire che le informazioni precedenti[l’uso del TOE] sono indisponibili”.

Per quanto riguarda l’ASSURANCE abbiamo:

• ACM_CAP.1: Il TOE deve essere riconoscibile trami-te un numero di serie;

• ADO_IGS.1: Il TOE deve contenere istruzioni diinstallazione e start-up;

• AGD_ADM.1: Il TOE offre una guida per l’ammini-stratore;

• AGD_USR.1: La documentazione del TOE deve con-tenere una guida utente;

• ATE_IND.1: Il TOE è stato sottoposto a test da partedi valutatori indipendenti. Il TOE (secondo il ST pro-posto) risulta quindi in grado tramite le sue proceduredi impedire l’accesso ai dati, se l’attaccante non è par-ticolarmente esperto.

ConclusioniI prodotti orientati a competere per gli appalti statali nelcampo sicurezza informatica si vedono praticamente costret-ti alla certificazione. L’orientamento verso i sistemi -qualitàè ormai una scelta irreversibile, quindi meglio anticipare ilmercato. I prodotti dell’ area open source sarebbero unabuona scelta per le istituzioni statali, ma mancano prodotticertificati, ed al momento non si vedono sbocchi. Senzadubbio, però, l’adozione di sistemi operativi a rischio graverende l’uso di tool certificati un controsenso e questo avvan-taggia enormemente la scelta open source. L’azione delloStato o meglio della Unione Europea per imporre un impie-go massiccio dell’open source, oltre ad aumentare la sicurez-za di per sé, costituirebbe un incentivo per la generazione di

posti di lavoro ad alta tecnologia, per cui una azione politi-ca è auspicabile, in tempi rapidi.

La fascia consumer del mercato è già oggi influenzata posi-tivamente da prodotti che si dichiarano certificati Cc. Lagaranzia indipendente offerta a clienti ormai sopraffatti dallapubblicità “tecnica” è molto apprezzata, e ripaga le aziendedelle spese sostenute; perciò una ditta affermata non può sot-trarvisi. Semmai, converrà certificare solo i prodotti di punta(tipicamente tool per il controllo d’accesso e difesa dati) equelli destinati a servire una gran massa di utenti (tipica-mente istituzioni od enti pubblici), per i quali oltre al di-scorso sicurezza vale la qualità della realizzazione, come sidiceva in precedenza. Certificare un firewall categoria enter-

 prise di non eccessive pretese, costa intorno ai 100.000 Europer un EAL4. Evidentemente, un tale ordine di grandezzadei costi non è irrilevante, anche considerando il fatto chela richiesta potrebbe non essere accolta dal verificatore!Rimarchiamo la dipendenza dei costi in termini finanziari edi ore/uomo dal livello di assurance desiderato. Salendonella scala di ASSURANCE i costi non salgono linearmen-te, ossia un EAL5 per lo stesso firewall costerà intorno ai300.000 Euro e non 200.000, e lo stesso si dica per il lavorodel personale (molto) specializzato necessario. Purtroppoesistono pochissime imprese in Italia in grado di preparareuna richiesta ISO 15408 o di effettuare le verifiche, sia perla arretratezza complessiva del settore, sia per le reali diffi-coltà, ma è probabile che il formarsi di un mercato delle cer-

tificazioni produrrà nei prossimi anni un abbassamento deicosti totali. In futuro si useranno estesamente le metodolo-gie cognitive. Sarà infatti necessario provvedere a sistemiautomatizzati di analisi delle prestazioni per i prodotti infor-matici per motivi di costi e praticità. L’intelligenza artificia-le potrebbe quindi essere una risposta valida, come sembra-no indicare le prime esperienze made-in-USA con le Reti Neurali: addestrate a valutare i software, sono attualmenteuno strumento per lo studio dei sistemi e delle procedureIntrusion Detection, e possono essere un sistema imparziale,riproducibile, economico e rapido anche per le verifiche dicongruità e qualità del TOE.

30 Computer Programming • n. 134 - Aprile 2004

RIFERIMENTI[1] www.nist.gov[2] www.iso.ch[3] www.cordis.lu

Una ISO 15408 è in primo

luogo uno strumento atto agarantire un minimo di fiducia

nelle prestazioni vantate

Professione informatico