Vulnerabilità nel formato PDF

Di recente è stata pubblicata la notizia relativa all'esistenza di un probabile bug nel formato Adobe PDF che permetterebbe di nascondere all'interno di questi documenti un codice javascript, provocandone l'esecuzione automatica.

La vulnerabilità è stata definita critica in quanto concernente uno dei formati documentali maggiormente diffusi al mondo, spesso veicolo di informazioni di grande importanza e riservatezza all'interno delle aziende e non soltanto.

L'attacco sembrerebbe interessare principalmente i client Acrobat 7.x e 8x delle piattaforme Windows XP/2003 e, forse, anche altri tipi di reader abbastanza popolari come FoxitReader.

Non sono stati divulgati finora codici di exploit e la Adobe è stata interessata direttamente del problema al quale si sta interessando.

Fonte: Punto Informatico

Analisi della cache prefetch di Windows XP: considerazioni e strumenti

Windows XP/2003 possiedono una caratteristica integrata chiamata "Prefetch cache" utilizzata per accelerare i processi durante il boot e l'esecuzione delle applicazioni.

Tale caratteristica può rivelarsi utile durante un indagine di natura forense che coinvolga sistemi di questo tipo ed i suoi parametri di funzionamento vengono controllati mediante la seguente chiave del registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameter

La cache è organizzata in una cartella chiamata Prefetch, residente all'interno della %windir% e contenente un numero variabile di file (fino a 128) con estensione .pf.
Ogni volta che una applicazione viene mandata in esecuzione il sistema aggiorna o crea la corrispondente entry nella cartella citata.

Ognuno di questi file contiene delle stringhe in formato Unicode che possono fare riferimento ai vari moduli acceduti durante l'esecuzione dell'applicazione.
Inoltre, cosa altrettanto importante, ogni file memorizza un contatore che indica il numero di volte in cui l'applicazione è stata eseguita ed un valore temporale a 64 bit (formato UTC) che esprime la data della più recente esecuzione dell'applicazione (aprendo il file con un qualsiasi editor esadecimale è possibile rinvenire l'informazione del primo tipo all'offset 144 e quella del secondo tipo all'offset 120).

L'analisi di queste informazioni può dunque essere utile per desumere preziose informazioni circa l'esecuzione di particolari attività nel sistema in un dato momento temporale.
Purtroppo però il mantenimento di tali file non avviene su base utente ma globalmente a livello di sistema per cui è necessario che i dati così riscontrati siano messi in correlazione con altre informazioni del sistema stesso.

In ogni caso per agevolare il recupero ed il repertamento di tali informazioni possiamo usare un tool, gratuito per uso privato e commerciale, chiamato Windows File Analyzer, disponibile all'indirizzo http://www.mitec.cz/wfa.html.

Si tratta di una applicazione sviluppata per l'analisi e la decodifica di alcuni file speciali utilizzati dai sistemi Windows tra i quali, appunto, i file prefetch di cui vengono visualizzate le informazioni relative all'applicazione, alla data di creazione, alla data di ultimo accesso, al numero di esecuzioni.
Per ciascun file viene inoltre calcolato l'hash MD5 ed è possibile produrre un report della lista.

Allestire un ambiente per l'analisi del malware: requisiti di base

Con questo primo post diamo vita ad una serie di interventi finalizzati ad individuare e valutare le caratteristiche dei possibili strumenti software e delle risorse utili per allestire un ambiente dedicato all'analisi del malware.

Innanzitutto tale ambiente dovrebbe soddisfare una serie importanti requisiti, quali:
  • sicurezza: deve essere possibile effettuare una analisi statica e/o dinamica del codice maligno, senza che ciò comporti la definitiva compromissione della integrità dell'ambiente ed impedendo la propagazione del codice all'esterno di quest'ultimo.
  • affidabilità: gli strumenti da utilizzare dovrebbero essere affidabili e rendere perciò possibile una analisi esaustiva del codice maligno.
  • interoperabilità: gli strumenti da utilizzare dovrebbero essere, possibilmente, multipiattaforma permettendo il loro utilizzo in sistemi operativi differenti (Windows, Linux, ecc...).
  • costi: ove possibile gli strumenti prescelti dovrebbero essere rilasciati con licenza freeware o, meglio ancora, open source. In questo modo diventa possibile, da un lato, limitare i costi associati con l'acquisto ed il mantenimento delle licenze e, dall'altro, nel caso in cui sia necessario, apportare modifiche e personalizzazioni al codice sorgente.
Partendo dal primo punto, la sicurezza oggi si presta ad essere soddisfatta, principalmente, mediante il ricorso ai cd. software di virtualizzazione che consentono di eseguire, all'interno di un determinato sistema operativo (host), più istanze di sistemi differenti, emulando le risorse hardware tipiche di una architettura.

Anche se l'utilizzo di questi software non è completamente privo di problemi, va detto, infatti, che essi si prestano in modo particolare a questi utilizzi, in virtù di alcune loro caratteristiche funzionali come la possibilità di vincolare l'esecuzione del sistema all'interno di un ambiente di rete confinato (contenimento), nonchè la possibilità di essere facilmente ripristinati nel caso di una loro compromissione.

Infine, oltre agli strumenti di virtualizzazione citati, nell'ambiente da precostituire dovrebbero essere presenti ulteriori categorie funzionali di software di cui indichiamo, a titolo esemplificativo, le più importanti:
  • utilità: scompattatori, unpacker, decifratori, strumenti per l'identificazione di contenuti steganografici, strumenti per la creazione di hash, ecc...
  • analisi statica degli eseguibili: disassemblatori, editor esadecimali, analizzatori di stringhe, analizzatori di risorse, ecc...
  • analisi dinamica degli eseguibili: debugger, memory dumper, sandbox applicative, patcher, tools per il monitoraggio del filesystem e di altre componenti del sistema (ad es. Windows Registry), process viewer, ecc...
  • analizzatori di rete e di protocollo: sniffer, emulatori di servizi di rete, honeypot, ecc...
  • risorse internet: archivi pubblici di malware, motori di ricerca degli hash crittografici, reverse engineering, ecc...

La Cassazione si pronuncia sulla vicenda delle modifiche alle Playstation

Con una sentenza destinata a far discutere (la nr. 33768 del 3 settembre 2007) la terza sezione penale della Corte di Cassazione ha stabilito che vendere i chip di modifica delle Playstation costituisce reato ai sensi dell'art. 171 ter della legge sul diritto d'autore che punisce una serie di fattispecie consistenti nella fabbricazione, importazione, distribuzione, vendita, noleggio, cessione a qualsiasi titolo, detenzione per scopi commerciali di attrezzature, prodotti o componenti che abbiano la prevalente finalità di eludere le misure tecnologiche di protezione del diritto d'autore applicate ai supporti.
Secondo il giudizio della Suprema Corte il tenore della legge è infatti tale da ricomprendere le fattispecie di elusione e rimozione dei sistemi di protezione integrati tra supporto informatico ed apparato destinato all'utilizzo.
Ciò anche nel caso di condotte perfezionatesi prima delle modifiche apportate alla legge sul diritto d'autore con il D.Lgs. 9 Aprile 2003 n. 68, poichè tale riforma non avrebbe introdotto nell'ordinamento italiano delle nuove fattispecie ma, semplicemente, specificato e chiarito la vecchia formulazione rendendola coerente con l'evoluzione tecnologica dei diritti digitali.

Fonte: APCom

Apertura dell'Olanda alle licenze Creative Commons

E' Olandese la prima organizzazione a tutela degli autori ed editori (in pratica l'equivalente della nostra SIAE) che ha compiuto un passo importante verso una migliore sincronia tra le esigenze di protezione del diritto d'autore e le nuove forme di comunicazione e diffusione digitale aprendosi al panorama delle licenze Creative Commons.
A sollecitare questo atteggiamento è stata una situazione di incongruenza, sotto il profilo della protezione, che, probabilmente, si registra anche in altri ordinamenti : chi si affidava infatti alle società di settore per la tutela dei propri diritti veniva a trovarsi di fronte alla impossibilità pratica di distribuire gratuitamente on line i propri lavori, dovendo rinunciare in tal modo ad acquisire un importante bacino di utenza da cui trarre comunque profitto mediante iniziative collaterali.
Al contrario chi reputava più conveniente affidarsi alle licenze CC (specialmente con la clausola di attribuzione Non commercial) doveva compiere una rinuncia a delegare alle società deputate la gestione dei propri diritti per usi commerciali.
A colmare tale divario interviene pertanto l'iniziativa citata che permetterà agli autori di poter usufruire, in modo complementare e non più esclusivo, delle licenze Creative Commons e dei tradizionali canali di gestione dei diritti.

Fonte: Punto Informatico

Interfaccia Firefox per GnuPG

FireGPG è una estensione per Firefox, rilasciata con licenza GPL, che rende disponibile nel browser, tramite un apposito menu contestuale, una comoda interfaccia per accedere ad alcune funzioni della suite crittografica GnuPG.


Tramite questa interfaccia viene dunque abilitato l'utilizzo diretto di tali funzionalità (firma, verifica, cifra, decifra, ecc...) con qualsiasi testo o porzione di testo presente all'interno delle pagine web.

Il software supporta inoltre direttamente l'interfaccia web di Google mail aggiungendovi alcune funzioni per la gestione dei contenuti crittografati delle email.

L'estensione è disponibile per il download all'indirizzo http://firegpg.tuxfamily.org/.

Anti-phishing Italia Net TV

Nasce la net TV di Anti-phishing Italia, il portale italiano interamente dedicato all'approfondimento delle tematiche relative al sempre più diffuso fenomeno del phishing e del cybercrime.
I contenuti tipici della nuova sezione saranno costituiti da news, interviste, approfondimenti e programmi tematici fruibili mediante l'apposito player presente nel sito oppure direttamente richiamabili all'interno di qualsiasi altro sito web o blog.
Inoltre, nell'ottica di accrescere la consapevolezza e l'attenzione del pubblico su questo pericoloso fenomeno, il sito ospiterà anche uno spazio aperto ai visitatori nel quale raccontare e denunciare le proprie truffe o disavventure informatiche, approfondire e commentare tematiche ed argomenti trattati da Anti-Phishing Italia o comunque di importante attualità.


Suite di strumenti di utilità su chiave USB

Recentemente mi sono imbattuto sul Web in una collezione di strumenti chiamata "USB PC Repair System".
Si tratta di una raccolta, sotto forma di archivio zip, di strumenti di uso libero che possono rivelarsi particolarmente utili nella esecuzione di attività di diagnostica o in interventi di manutenzione compiuti su personal computer.
Le applicazioni, quasi tutte per sistemi Windows NT/2000/XP, non richiedono installazione per cui l'archivio può essere semplicemente scompattato su un supporto removibile, come una chiavetta USB, per essere sempre disponibile in caso di necessità (l'occupazione totale è di circa 27 Mb).
Le applicazioni incluse sono 37, comodamente accedibili mediante un apposito menu, e vanno dalle semplici utilities per la gestione degli archivi compressi a quelle per il recupero dei file, alla creazione e gestione di immagini dei dischi fissi fino a strumenti più evoluti per l'ottimizzazione del sistema, la rimozione del malware o l'identificazione dei rootkit. Solo per citarne alcune, vi sono:

  • Filemon
  • Regmon
  • ProcessExplorer
  • File Assassin
  • Rootkit Revealer
  • Expore2fs
  • Active@ ISO Burner
  • DriveImage XML
L'archivio può essere liberamente scaricato al seguente indirizzo http://www.geekwithlaptop.com/projects/.


Nuovo tool anti-rootkit

McAfee ha rilasciato un nuovo tool ad uso gratuito per la rilevazione e la rimozione di rootkit.
Sulla base delle informazioni fornite dalla società questo strumento, che non utilizza alcun sistema di signatures, sarebbe in grado di:

  • rilevare processi, file e chiavi del registry nascoste
  • identificare tutti i processi attivi di sistema
  • identificare varie tipologie di hooking (Import/Export address table, SSDT)
  • permettere all'utente di rimuovere dal sistema gli oggetti nocivi cancellando o rinominando i relativi files o le chiavi del registry
  • permettere all'utente l'immediata interruzione dei processi nocivi
  • inviare campioni di rootkit per l'analisi ai laboratori di ricerca
Il tool può essere scaricato al seguente indirizzo: http://download.nai.com/products/mcafee-avert/McafeeRootkitDetective.zip
e non richiede installazione essendo sufficiente scompattare l'archivio in una cartella ed eseguirlo.
L'interfaccia utente si presente abbastanza semplice essendo dotata di un pulsante per avviare la scansione di sistema e di alcuni controlli di tipo radio button per permettere la visualizzazione dei vari tipi di oggetti nocivi eventualmente identificati.

L'esito della scansione viene memorizzato in un apposito file di log contenente le informazioni relative agli oggetti identificati.

Nel complesso si tratta di uno strumento utile per una prima scansione di base del sistema mentre per analisi più evolute è preferibile utilizzare strumenti più sofisticati (come ad es. IceSword).

Standard OASIS: Digital Signature Services

Il consorzio OASIS ha recentemente annunciato il rilascio della versione 1.0 dello standard DSS (Digital Signature Services).
Ciò che caratterizza questo standard e lo rende interessante è l'adozione di un approccio integrato nei confronti della firma digitale volto a superare alcuni degli ostacoli tradizionalmente connessi con la gestione di tale supporto, particolarmente onerosa soprattutto nelle grandi organizzazioni, nonchè una riduzione dei costi connessa con la localizzazione della sicurezza certamente da non sottovalutare.
Lo standard definisce una interfaccia XML in grado di processare le firme digitali relative ai servizi Web e ad altre applicazioni senza che ciò comporti l'adozione di particolari software o configurazioni lato client.
In pratica DSS semplifica l'utilizzo della tecnologia di firma digitale permettendo alle singole entità il controllo, su base organizzativa, delle applicazioni di firma digitale tramite un server di rete sicuro sottoposto a rigorosi controlli di accesso ed a misure di sicurezza dirette a minimizzare il rischio di compromissione.
Le signatures, mantenute su questo server, possono essere create dai soggetti debitamente autorizzati senza che ciò richieda l'uso di particolari dispositivi e potendo l'organizzazione continuare ad utilizzare i proprio meccanismi di autenticazione (password, biometria, ecc...).
Tutto questo permette dunque ad una organizzazione di gestire in modo efficiente la sicurezza dei propri documenti pur mantenendo un livello di "accountability" su base individuale.
Il DSS è basato su un set di componenti e procedure che si prestano anche ad utilizzi specifici come il timestamping o il supporto per i marchi o i sigilli aziendali.
I protocolli previsti basati su XML sono due di richiesta e di risposta: le interazioni tra i due protocolli permettono, ad esempio, di inviare un documento al server e ricevere un documento firmato, oppure di inviare un documento ed una firma e ricevere una risposta circa l'attendibilità della firma.


Il valore dei dati delle memorie volatili nelle indagini digitali

Per la prima volta nella storia giudiziaria degli Stati Uniti un giudice federale, in una controversia che vede come protagonista la Motion Picture Association contro uno dei più grandi provider di media digitali, ha decretato che le tracce elettroniche contenute all'interno della memoria RAM di un sistema informatico costituiscono, a tutti gli effetti, "informazioni conservate" e, pertanto, assurgono al valore di evidenza probatoria.

Questa pronuncia quindi sposterà in parte l'attenzione degli investigatori forensi su questa tipologia di dati sottolineando l'importanza cruciale, ai fini del buon esito di una investigazione, di acquisire e e gestire i dati volatili che altrimenti verrebbero persi nel tradizionale approccio basato sulla disattivazione del sistema sospetto.

Analisi degli eseguibili Windows mediante PE iDentifier

Segnalo un tool per l'analisi degli eseguibili Windows chiamato PE iDentifier.
Si tratta di una GUI, ma con pieno supporto per la linea di comando, in grado di identificare la presenza negli eseguibili di più di 600 signatures tra cui quelle di molti compilatori, compressori e cifratori.

Inoltre sono presenti delle caratteristiche interessanti perfettamente integrate come:
  • l'estendibilità delle funzionalità mediante plugins
  • la scansione multipla e ricorsiva di directory
  • un visualizzatore di processi
  • un visualizzatore esadecimale
  • un visualizzatore delle tabelle delle risorse nonchè di importazione, esportazione e TLS
  • una interfaccia delle signatures esterne aggiornabile su richiesta
Attualmente sono disponibili tre modalità principali di scansione e diversi plugins che possono essere scaricati direttamente dal sito citato.
Il tool si presenta leggero, versatile e abbastanza funzionale per poter essere impiegato in contesti particolari come l'analisi statica di malware.

Interrogazione da web della National Software Reference Library

Segnalo che a questo indirizzo è stata resa pubblicamente disponibile una interfaccia Web che consente di effettuare interrogazioni della National Software Reference Library (http://www.nsrl.nist.gov/) un database governativo, utilizzato soprattutto nel settore della digital investigation, che racchiude gli hash MD5 e SHA1 di circa 42 milioni di files conosciuti di uso lecito e meno lecito.

Al momento della scrittura di questo post la pagina citata si interfaccia con la versione 2.16 della RDS (Reference Data Set) rilasciata nel marzo del 2007.

Phishing/Malware e social networking

A differenza di quanto possa far pensare il titolo di questo post non c'è nessuna relazione tra phishing/malware e social networking se non per il fatto che l'aumento di popolarità degli spazi su Web, dedicati a forme di aggregazione sociale, comincia ad attirare, sempre di più, l'attenzione di phisher e creatori di malware.
Su SecurityFocus si legge la notizia di attacco di phishing portato nei confronti degli utenti del popolare sito MySpace.
L'attacco sfrutta una modifica di un foglio di stile associato al profilo di ciascun utente per posizionare una immagine trasparente sulla pagina, causando perciò una ridirezione dell'utente verso una falsa pagina di login.
Come sempre più spesso accade l'efficacia dell'attacco è in stretta relazione con il livello di sofisticazione delle pagine clone e con l'ormai onnipresente supporto delle botnets (reti di sistemi compromessi).
D'altra parte già da qualche tempo si erano cominciate a notare le avvisaglie di questo fenomeno in espansione come testimoniato anche dall'apparizione dei primi worm "specializzati" come JS.Qspace che, sfruttando una tipica vulnerabilità di cross-site scripting, mirava a colpire proprio gli utenti di MySpace abbinandosi proprio a forme di phishing.

Vincolare l'esecuzione di programmi

Spesso vi può essere l'esigenza di limitare gli effetti o le interazioni derivanti, a livello di sistema operativo, dalla esecuzione di programmi di dubbia provenienza/funzionalità o di applicazioni che, pur provenendo da una fonte abbastanza attendibile, interagiscono con ambienti caratterizzati da un certo livello di rischio (vedasi browser, email client, ecc...).

In questi casi una delle possibili soluzioni consiste nel creare degli ambienti vincolati all'interno dei quali circoscrivere l'esecuzione dell'applicativo/i.

Al riguardo esistono approcci differenti: alcuni limitano le interazioni dell'applicativo con le varie componenti del sistema operativo, sulla base di policies predefinite o comunque elaborate dall'utente finale. Generalmente questo è il principio di funzionamento dei cd. "behaviour blockers o HIPS (Host Intrusion Prevention System)".
A seconda del software vi può essere o meno una elevata granularità nel livello di definizione delle policies ma, comunque, occorre che l'utente abbia una consapevolezza sull'entità dei possibili rischi derivanti dalla esecuzione di codice sospetto.
Questo vuol dire che, se ad un applicativo viene erronamente attribuita una eccessiva capacità di interazione con il sistema, quest'ultimo ne può risultare irrimediabilmente compromesso.

Altre soluzioni, invece, cd. sandbox, permettono al programma la più ampia interazione con l'ambiente sottostante ma rendono inefficace qualsiasi modifica apportata al sistema preservando dunque l'integrità di quest'ultimo.

In quest'ultima categoria si colloca una soluzione software particolarmente leggera e gratuita chiamata Sandboxie.

Il funzionamento del software è molto semplice e si basa sull'interposizione di un'area di memoria transitoria tra il processo/i, eseguito/i nel contesto della sandbox, ed il filesystem sottostante così da rendere vane tutte quelle operazioni che comportano la modifica in scrittura del sistema.
Il programma si presta, in particolare, ad alcuni utilizzi specifici come l'analisi dinamica del malware oppure la predisposizione di un ulteriore "layer" di protezione relativamente alla navigazione su Internet, all'utilizzo della posta elettronica ed all'instant messaging.

Virtualizzazione mediante software GPL

VirtualBox è un software di virtualizzazione x86 rilasciato sotto licenza GPL per molteplici piattaforme tra le quali Windows, MacOSX, Linux e OpenBSD.

Finora non ho avuto modo di testarlo in modo approfondito, soprattutto in certe condizioni particolari di utilizzo ma, da una prima impressione, mi sembra abbastanza promettente. Sicuramente molto dipenderà dalla frequenza dei rilasci e dal coinvolgimento nel progetto di ampie comunità di sviluppatori.

Il software fornisce il supporto alle funzionalità di networking nelle modalità nat, internal lan e host bridge, alle periferiche USB, con possibilità di impostare filtri sui dispositivi utilizzabili, ed altre caratteristiche utili come come la possibilità di montare volumi ISO, il supporto degli snapshot, la possibilità di utilizzare immagini dei dischi create con VMWare, ecc...

Potrebbe effettivamente essere una alternativa ai software di tipo commerciale.

Sarebbe interessante testarne il funzionamento in modo dettagliato soprattutto in contesti particolari come la creazione di honeypots ad alta interazione o l'implementazione di ambienti segregati per l'analisi del malware.