lunedì 7 dicembre 2020

Linee guida per le attività digitali in modalità remota (ed.1/2021)

Lavoro remoto, smart working, webinar, seminari online, riunioni virtuali, ma anche consulenze, consulti tecnici, trattative con il potenziale cliente, presentazioni personali o di funzionalità hardware/software, arbitrati e conciliazioni, ecc... hanno un comune denominatore, ovvero l'utilizzo di tecnologie telematiche,  di software ed hardware specifici e predisposti allo scopo. Il risultato atteso è in ogni caso basato sulla necessità di poter condividere dati digitali (immagini, documenti, video, audio, files, ecc...) ed in alcuni casi, permettere interattività comunicativa fra due o più individui. Con l'avvento delle necessità correlate alla modalità di svolgimento di compiti in modalità telematica, sono emerse una serie di problematiche (tecniche e gestionali), dovute principalmente ad una sottostima della complessità necessaria a portare a termine, professionalmente e con profitto, le operazioni sottostanti gli eventi elencati in introduzione

Pur non rappresentando una novità, è sempre opportuno elencare un elenco di soluzioni, suggerimenti, consigli e linee guida per predisporre ciò che può essere definita una base tecnico-organizzativa professionale ed adeguata, adattando il tutto a seconda che l'evento sia organizzato per scopi professionali, formativi, lavorativi di marketing o puramente per svago.

1) inventario degli strumenti:

  • laptop, netbook, tablet, PC
  • webcam
  • microfono
  • auricolari, cuffie plug-in
  • software video

2) stilare delle linee guida di riferimento che descrivano:

  • come i collaboratori ed il personale dovranno operare da remoto, 
  • come presenziare le riunioni 
    • entrata, 
    • uscita, 
    • partecipazione, 
    • puntualità, 
    • abbigliamento, 
    • comportamenti nel rispetto degli altri, 
    • ruolo e compiti del moderatore
  • potenziali circostanze e problematiche tecniche quali: 
    • come e quando attivare il video
    • come utilizzare il microfono e gli altoparlanti del computer, 
    • come regolare i volumi audio (altoparlanti e microfono)
    • le cuffie wireless possono avere problemi di durata della batteria, 
    • come ridurre il rimbombo dell’audio. 
  • sanzioni e provvedimenti in caso di inosservanza dei regolamenti 
  • modalità di fruizione del supporto tecnico on-demand durante lo svolgimento degli eventi

Fondamentale assicurarsi la tecnologia più performante disponibile, per prendere parte a web meeting con colleghi e clienti. Non si apparirà molto professionali senza cuffie, o se queste smettono di funzionare nel bel mezzo di una video call.

3) Verifica della connessione internet o "Larghezza di banda della rete Internet". Il parametro contrattuale da cosiderare è la BMG (o in inglese Minimum Cell rate – MCR) ovvvero la banda minima garantita. E' definita come la velocità minima che il provider di connessione ad Internet (ISP) deve contrattualmente garantire al cliente, anche in caso di congestione della rete e rappresenta la priorità di passaggio dei pacchetti IP in entrata ed in uscita verso la rete Internet. Una BMG adeguata a garantire un sufficiente collegamento audio/video tramite ADSL è al minimo 1Mb in download /500Kb in upload.

Per attività che richiedono frequenti scambi di files (quali immagini o filmati) è opportuno considerare l'adozione di collegamenti FTTC/FTTH (Fibra ottica), in modo che risulti sufficiente a soddisfare l’utilizzo che deriverà dalle operazioni da compiere, tenendo in considerazione che, se il collegamento utilizzato è condiviso con altri collaboratori (es. in studio professionale), ciò influirà sulle prestazioni.

4) configurazione professionale di un "ufficio domestico". Considerare i seguenti aspetti:

  • luogo dedicato allo scopo (es. no divano, salotto o cucina di casa), aderente alle raccomandazioni e normative di sicurezza dei luoghi di lavoro
  • illuminazione naturale o artificiale (led)
  • fonti di luce sempre dietro la webcam che illuminino il viso
  • inquadratura (il viso al centro)
  • privacy sull’area di lavoro
  • pannelli anecoici e fonoassorbenti
  • sfondo personalizzato consono all'evento (anche chroma key per sfondi virtuali)
  • abbigliamento allineato all'importanza dell'evento e cura della persona
5) adottare un software di comunicazione/condivisione
  • per webinar, seminari formativi, corsi, presentazioni, riunioni:
    • adottare soluzioni che evitino ai partecipanti l'installazione di app, moduli aggiuntivi, programmi, plug-in, ecc...
    • adottare soluzioni che non vincolino gli utenti/partecipanti all'uso di specifici browsers o specifici sistemi operativi.
  • per lavoro remoto o smart-working
    • adottare lo ostrumento giudicato più adatto alla propria organizzazione previa valutazione e test pratico sul campo
In ogni caso l'applicativo deve poter garantire:
  • come requisito minimo:
    • partecipazione audio/video
    • condivisione schermo 
    • upload/download di files condivisi
    • note condivise
  • come requisiti aggiuntivi
    • moderazione dei partecipanti
    • gestione di diagrammi e planning tasks ed attività
    • gestione calendario meetings, riunioni, attività pianificate (e relativi alerts e messaggistica configurabile)
    • gestione attività del team di lavoro

6) costruire i processi che il team dovrà seguire 

Necessario disporre di un software di gestione nativamente progettato per il lavoro da remoto e per la gestione di gruppi di lavoro organizzati con pianififazione dei task e dei tempi assegnati.

7) valutare l'adozione di piani formativi continui e periodici per l'uso degli strumenti (organizzazione interna l'attività professionale)) e pianificare gli interventi formativi periodici (possibilmente con previsione di verifiche dell'apprendimento) suddivisi per argomenti, quali ad esempio:

  • privacy
  • cyber security
  • sicurezza sul luogo del lavoro
  • uso degli strumenti digitali hardware e software
  • comunicazione, connessione ed organizzazione
  • ... 

***

Le precedenti linee guida sono costantemente in corso di aggiornamento, confronto, discussione, ampliamento, revisione, modifica, adattamento alle evoluzioni tecnologiche. Per contribuire, commentare, suggerire, migliorare... è disponibile in calce l'area "Commenti" o per gli associati ANIP nel gruppo di discussione ANIP Albo Nazionale Informatici Professionisti

Grazie per l'attenzione. 

Giovanni Grandesso

mercoledì 2 dicembre 2020

Lettura forense di una EPROM

Accade, in ragione della propria specializzazione come informatico forense e criminalista digitale, di avere la necessità di estrarre i contenuti digitali da supporti di memoria la cui produzione è terminata prima degli anni '90. 

Stiamo parlando di chip di memoria EPROM riscrivibili, previa cancellazione con l'esposizione alla luce ultravioletta. Il chip, per permettere la cancellazione con l'esposizione alla luce, è dotato di una finestrella in quarzo trasparente, attraverso la quale è possibile intravedere il chip di silicio con i suoi collegamenti verso i pin esterni. Questo tipo di Eprom, con l'evoluzione tecnologica, è stato successivamente sostituito dalle EEprom, cancellabili elettricamente. 

Come accennato in introduzione, si ha la necessità di estrarre il contenuto, ovvero il firmware, di un apparecchiatura elettronica dedicata, con un approccio "forense". Occorre infatti garantire che i bit estratti dal supporto di memorizzazione (il chip elettronico) siano esattamente quelli memorizzati nel chip  stesso ed occorre inoltre garantire che l'operazione non vada ad alterare in alcun modo i contenuti stessi.

Il metodo più semplice, consiste nel collegare i chip di memoria ad un lettore di Eprom, nello zoccolo ZIF (Zero insertion force), lanciare il programmino proprietario e salvare il tutto. Lo scenario reale può però essere differente: 

  • il laboratorio non dispone di un lettore di eprom così datato.
  • è la prima volta che si tratta un tipo di incarico del genere
  • nessun "case study " o precedente dal quale attingere informazioni

Si può fare? Ovvio che sì. Vediamo come.

Il chip : i chip in questione (tre per la precisione) sono della National Semiconductor in sigla NM27C512 524,288 Bit (64Kx8) High performance CMOS EPROM UV Erasable - Electrically Programmable Read Only Memory, caratterizzati da un tempo di accesso dai 90 ai 200 nS (nano secondi) e tecnologia proprietaria a 0,8 micron. 

L'alimentazione è a 5 Volts e le soglie dei bit per il valore "1 " (High level) da 2 V a Vcc+1 (6Volts) mentre per il valore "0 " (low level) da -0,5 a 0.8 volts. Le correnti applicabili per i pins di uscita (dati) vanno dai 35 ai 40 mA (dato necessario per calcolare la resistenza di caduta per eventuali led di monitoraggio o per confrontarli con le specifiche dell'hardware di lettura scelto). 

Si nota come i valori qui elencati sono di gran lunga meno "performanti " rispetto ai più moderni chip di memoria attualmente in uso. All'epoca erano allineati con quanto di meglio poteva offrire la tecnologia, tanto da potersi fregiare di diciture ed affermazioni tipo "high performance", "software routines are quickly executed from Eprom storage ", "greatly enhanced system utility"... cose di altri tempi, quando tutto era molto più semplice ma se ci si fa caso, oggi leggiamo più o meno gli stessi proclami pubblicitari che di concreto non dicono nulla.

L'hardware di lettura: Teoricamente si può utilizzare un qualsiasi dispositivo a microprocessore/microcontrollore programmabile che sia in grado di "alzare ed abbassare " dei pin in uscita (i bit di indirizzi, zeri ed uno) e leggere su altri il dato in ingresso (bit di dati). 

Le specifiche dei pin di I/O ingresso / uscita dell'hardware di lettura, devono essere compatibili con le soglie di tensione specificate dal produttore del chip, altrimenti occorrerebbe prevedere dei traslatori di tensione o dei DC/DC converter (scelta sconsigliata). 

Nel nostro caso specifico, la scelta è ricaduta su un Arduino UNO. In realtà la scelta non è molto felice, ma... con questo ci si deve ingegnare. Il problema è rappresentato dal fatto che il Genuino UNO (Arduino) ha meno pin di I/O di quanti ce ne servono, ovvero 16 per gli indirizzi ed altri 8 per leggere i dati... 24 in tutto, più altri GPIO di comando (Chip Enable, Output Enable, Start ecc...).

L'ostacolo può essere aggirato con due shift registers 74HC595 collegati in cascata per l'indirizzamento a 16 bit. Il registro a scorrimento permette di "caricare " in sequenza (seriale) i 16 bit di indirizzo con un solo pin e con un altro abilitare l'uscita. 

Il dato in uscita ad 8 bit andrà poi "sparato" sulla linea di comunicazione, via seriale, all'host. (ecco un ottimo tutorial https://www.arduino.cc/en/Tutorial/ShiftOut con degli esempi di codice da adattare alla specifica esigenza qui in discussione. 

Un altro esempio lo si trova qui https://learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/the-74hc595-shift-register

Al tutto aggiungiamo anche dei leds per monitorare lo stato dei dati in uscita, facendo attenzione a controllare il fanout delle porte e gli assorbimenti di corrente che dovranno rimanere sotto le soglie dichiarate dal produttore della memoria Eprom qui in esame.

In fase di debug è possibile rallentare il ciclo di lettura del software, con dei "delay" posti nel ciclo "for" di lettura, per controllare visivamente sia la corretta ed effettiva progressione binaria degli indirizzi che i dati in uscita. 

Il software : Il codice non è complicatissimo e gli esempi riportati nel link al sito ufficiale (vedi links precedenti) sono spiegati con un ottimo livello di approfondimento, tale da permettere facilmente un adattamento a questa specifica esigenza. In pratica si carica il registro a scorrimento con l'indirizzo di memoria che si desidera leggere, incrementandolo dopo ogni lettura sino al suo valore massimo. Ad ogni ciclo si memorizza il dato letto e lo si invia all'host per un adeguato trattamento (eventuale conversione e memorizzazione su file). 

I risultati : dopo avere testato il tutto (hardware e software) con la lettura da un chip gemello, (i cui contenuti sono memorizzati in patterns noti opportunamente predisposti) ed attestato il funzionamento corretto del setup (hardware e software), si procede con la lettura del materiale probatorio e conseguente scrittura su file. 

Nella fase successiva, se richiesto, occorre decodificare ed interpretare i dati ottenuti (sono due tipologie di incarico professionale diverse che richiedono diverse specializzazioni). E' importante conoscere se il processore che governa in origine la lettura dei chip di memoria lavora in big-endian o little-endian (un approfondimento https://en.wikipedia.org/wiki/Endianness) per poter decodificare correttamente i bit ottenuti, oltre al suo set di istruzioni per distinguerle dai dati e dagli indirizzi. 

A seconda del tipo di incarico ricevuto, ovvero mera estrazione per analisi delegata a soggetti terzi o analisi quali la ricerca di stringhe o decompilazione del firmware, ecc..., si procede caso per caso con gli strumenti di lavoro abitualmente utilizzati per le indagini forensi "normali", non senza aver preventivamente calcolato e documentato gli hash dei dati estratti che andranno quelli sì memorizzati su supporto non riscrivibile e debitamente documentati come da raccomandazioni e linee guida. 

Le precauzioni : il chip in questione, per certi versi, può essere paragonato ad un supporto riscrivibile ma, come vedremo, le precauzioni da adottare sono leggermente diverse. Per la scrittura è sempre necessario procedere ad una preventiva cancellazione totale. Per alterare fraudolentemente quindi i contenuti, è necessario procedere con:

  • lettura ed estrazione dei dati 
  • alterazione e modifica "off-line " 
  • cancellazione totale
  • riscrittura del chip con i dati alterati (vanno scritti solo gli "zeri ").

I dati possono essere cancellati (tutti) con l'esposizione alla luce o meglio a qualsiasi fonte di luce fra le cui componenti siano presenti radiazioni ultraviolette (es. la luce del sole). In questo caso ci si ritroverà al termine dell'esposizione con tutti i bit a "1 ". Difficile quindi che si possa "accidentalmente " cancellare i dati nella memoria e più difficile che si possa "alterare" accidentalmente i dati memorizzati. Le specifiche tecniche del produttore fanno riferimento ad una lunghezza d'onda della luce di cancellazione approssimativamente inferiore a 4000 Angstroms (sicuramente contenute nella luce del sole ed in alcune lampade fluorescenti). Il dato suggerito per una corretta cancellazione è di 2537 Angstroms (minimo 15Watt-sec/cm2 ad 1 pollice dalla superficie del chip).

Quindi, è meglio soddisfare i dubbi altrui applicando alla finestra di cancellazione uno schermo idoneo (il nastro adesivo metallizzato, o film di alluminio adesivo, offre una garanzia al 100%). La "protezione da cancellazione " è garantita quindi meccanicamente, da un etichetta adesiva posta sulla finestrella al centro del chip, peraltro facilmente rimovibile. 

E' quindi importante che sia garantita anche la catena di custodia (sigilli, accesso presidiato, chiusura in luogo protetto ed adeguatamente sorvegliato) già prevista per i supporti digitali. Tuttavia occorre considerare che è tecnicamente "obbligatorio" mascherare la finestra di programmazione anche in sola lettura per prevenire temporanei errori dovuti alla generazione di correnti fotovoltaiche in assenza di schermatura ottica. Per le operazioni di scrittura dei dati le cose si complicano un pò, escludendo però la possibilità, con il tipo di approccio tecnico qui utilizzato, di scritture o alterazioni "accidentali" o involontarie. 

E' sempre possibile, comunque esagerando, utilizzare via software il pin Chip Enable, attivo quando posto a livello logico zero. 

L'aspetto "giuridico " : l'intervento così come descritto non è critico, nel senso che, con le precauzioni descritte, la probabilità di cancellare accidentalmente la prova digitale è sotto la soglia di preoccupazione, sempre possibile ma altamente improbabile o meglio tendente allo zero. Solo manovre fraudolente od errate dovute ad errori marchiani (o dolo) nei collegamenti elettrici possono produrre effetti distruttivi ai chip, oltre ovviamente a potenziali azioni dolose (tipo predisporre la circuiteria ed invertire la polarità dell'alimentazione od applicare voltaggi superiori ai valori massimi consentiti dalle specifiche di funzionamento). La scrittura di dati differenti inoltre (alterazione) richiede volontà e non può avvenire "accidentalmente", se non predisponendo malamente i circuiti elettrici necessari e la configurazione del pin di abilitazione previsto (la scrittura avviene in presenza di soglie di tensione molto più alte della normale tensione di alimentazione a 5 volts). Le operazioni di estrazione dei dati quindi (la lettura) sono ripetibili e la prova originale può essere acquisita ed analizzata anche in tempi diversi, quando allegata alla CTP o repertata come prova dalla procura. 

Conclusioni : Non importa se operazioni di questo tipo, da sostenere in aula di tribunale, possano essere additate come prive di procedure consolidate o "certificate" dalla "comunità scientifica" e quindi inaccettabili o peggio valutate come "ridicole". E' talmente raro imbattersi in problematiche di questo tipo che è logico supporre non esista una "procedura consolidata". Ad ogni modo, l'assenza di procedure consolidate è sanata da una precisa, dettagliata ed esaustiva relazione tecnica che possa fornire al lettore la possibilità di verificare l'eventuale presenza di errori od omissioni. Ciò è valido in ogni caso in quanto,   

in ambito digitale, i dati sono o zero o uno e non c'è posto per le opinioni

Ben vengano dimostrazioni tecniche in grado di sostenere, sul piano pratico e soprattutto scientifico, che le operazioni qui descritte sono sbagliate. In quest'ultimo caso ci si rende disponibilissimi a valutare, confrontare, verificare ed alla fine, eventualmente, ammettere di aver sbagliato. 

Grazie per l'attenzione. 

Giovanni Grandesso

martedì 1 dicembre 2020

Perizia informatica - standard qualitativi minimi (ed.12/2021)

Perizia tecnica... cos'è una perizia. Negli ultimi anni, la perizia o la consulenza tecnica sono oggetto di particolari attenzioni, specialmente per una scienza "giovane" quale l'informatica. Come prima conseguenza, concomitante ad un aumento statistico dei contenziosi che coinvolgono l'uso di apparecchi digitali, quali computers, smartphones e più in generale internet, sono in aumento le richieste di Periti informatici e consulenti tecnici di parte. Si rende pertanto necessario esporre ed elencare uno "standard" "minimo" che possa permettere una valutazione circa la qualità delle perizie prodotte da una moltitudine di consulenti a volte improvvisati, privi di esperienza nella stesura di perizie, poco professionali, superficiali, fretttolosi, supponenti, ecc... 

Oggetto di Perizia sono:

  • lo svolgimento di indagini/analisi che richiedono specifiche competenze di ordine tecnico, scientifico
  • la formulazione di giudizi e/o valutazioni che implichino specifiche competenze, 
  • l’acquisizione di dati che per essere rilevati presuppongono capacità non comuni

Il perito o Consulente tecnico, al termine delle proprie operazioni, deposita un documento scritto nel quale espone gli elementi risultanti il proprio operato. 

Le linee guida pubblicate dal Tribunale di Roma (Magistrato addetto Dott. Marco Rossetti) suggeriscono una struttura di massima dell'elaborato tecnico del Consulente (elaborato scritto che qui nel seguito verrà chiamato Perizia informatica).

L'ossatura portante di una perizia informatica qualitativamente apprezzabile, consiste nei seguenti punti:

  1. parte epigrafica
  2. parte narrativa
  3. parte descrittiva
  4. parte valutativa o epicritica
  5. parte conclusiva

Nel valutare la "qualità" di una perizia, occorre verificare le modalità di elaborazione ed esposizione dei punti elencati, entrando con un analisi valutativa circa la presenza di indicatori essenziali di ogni singolo punto.

Parte epigrafica - vanno indicati:

  • gli estremi  del procedimento 
    • numero di ruolo (ove disponibile), 
    • nomi delle parti, 
    • organo giudiziario procedente, 
  • quesito, 
  • posizioni delle parti solo per i fatti costituenti l'oggetto della perizia

Parte narrativa - verificare che il ctu riferisca (ex art 195 II°comma CPC):

  • svolgimento delle operazioni:
    • quando, 
    • come, 
    • dove,
    • con chi (se CTU e sono presenti i CTP o i patrocinatori di parte)
  • riassunto (ove e se prodotte dalle parti) di:
    • osservazioni, 
    • istanze,
    • obiezioni

Parte descrittiva  - elementi necessari:

  • elenco dei materiali/strumenti/software utilizzati
  • descrizione dei luoghi ispezionati
  • descrizione dei macchinari collaudati
  • descrizione delle apparecchiature rinvenute/analizzate
  • descrizione delle misurazioni / acquisizioni / manovre compiute
  • esposizione dei FATTI (sui quali si fonda il convincimento e le risposte)
  • ...

il livello di dettaglio nel fornire le informazioni su elencate costituisce elemento favorevole nella valutazione qualitativa di una perizia.

Parte valutativa o epicritica - elementi da valutare

  • perchè è ritenuto esistente un fatto (CTU percipiente)
  • perchè è fornita una valutazione (CTU deducente)
  • motivazioni alle risposte
  • esposizione analitica dei risultati
  • oggetto di accertamento o valutazione  - genuina e motivata ricostruzione 
    • del fatto 
    • dell'evento, 
    • del nesso, 
    • del processo, 
    • del fenomeno 

In questa sezione va valutato anche la sussistenza eventusle di silenzio o rumore del CTU.

Parte conclusiva -

  • riassunto delle operazioni
  • esposizione sintetica
  • risposte concise per ogni quesito

Per quanto attiene ai contenuti, le valutazioni , le conclusioni, le descrizioni:

  • devono contenere dati quantitativi ed alternativi ad affermazioni generiche, quali ad esempio:
    • tanto / poco
    • molto
    • circa
    • spesso / raramente
    • pesante /leggero
    • lento / veloce 
    • ...
  • non devono contenere parole in modo condizionale (condizionale presente o semplice) quali ad esempio:
    • potrebbe
    • sarebbe
    • vorrebbe
    • avrebbe  
    • ...
  • non devono contenere aggettivi, superlativi, accrescitivi od esclamazioni inutili o manipolatorie

Nella perizia qualitativamente apprezzabile:

  • Sono sempre assenti valutazioni di tipo giuridico (attinenti concetti quali  colpa, possesso, proprietà, inadempimento)
  • Sono altresì oggetto di apprezzamento
    • la chiarezza
    • l'accuratezza
    • i dettagli
    • le motivazioni supportate da elementi scientifici
    • allegati in grado di meglio illustrare i contenuti
Le linee guida qui esposte sono in fase di revisione, aggiornamento, ampliamento, confronto e discussione costante nel gruppo di discussione ANIP Albo Nazionale Informatici Professionisti

Grazie per l'attenzione

Giovanni Grandesso