sabato 25 febbraio 2017

Ransomware CryptoMix: Recuperare i dati cifrati in modalità offline

Avast, la nota software house di sicurezza informatica, ha di recente rilasciato un tool per recuperare i dati cifrati dal ransomware CryptoMix (conosciuto anche come CryptFile2, Zeta, CryptoShield) in modalità offline. Il tool è efficace solo se il ransomware ha cifrato i dati in modalità offline e si dispone della versione non cifrata di almeno un file: CryptoMix effettua la cifratura in modalità offline quando non è presente una connessione ad Internet oppure quando non riesce a contattare i server Command & Control e, in queste situazioni, viene utilizzata una chiave di cifratura che può essere calcolata dal tool fornito da Avast. Se non si dispone di una versione non cifrata di un file si può provare ad usare un file presente nelle cartelle:
C:\Windows\Web
C:\Windows\Media
C:\Users\Public\Pictures\Sample Pictures
La versione non cifrata di tali file possiamo recuperarla da un altro PC su cui è installata la stessa versione di Windows.
Al momento il tool permette di decriptare i file cifrati con le seguenti estensioni .CRYPTOSHIELD, .rdmk, .rscl, .scl, .lesli,  .code.rmd.

Recupero dei file
  • CryptoMix oltre a cifrare il contenuto del file e ad aggiungere la propria estensione, ne modifica anche il nome. Il primo passo, quindi, consiste nello scoprire il reale nome del file cifrato. Accedere al sito http://rumkin.com/tools/cipher/rot13.php e, nell'apposita casella, inserire il nome, esclusa l'estensione (.CRYPTOSHIELD, .rdmk ecc), di un file cifrato (ad es vzzntvar.wct). Nella casella sottostante verrà visualizzato il nome reale. Verificare se si dispone della versione non cifrata del file.

    http://rumkin.com
    FIG 1 - http://rumkin.com
  • Eseguire il download del tool Avast Decryption Tool for CryptoMix da http://files.avast.com/files/decryptor/avast_decryptor_cryptomix.exe;
  • Avviare il tool e cliccare sul pulsante Avanti;
    Avax Decryption Tool for CryptoMix, schermata benvenuto
    FIG 2 - Avax Decryption Tool for CryptoMix, schermata benvenuto
  • Selezionare il disco o specificare una cartella contenente i dati da decriptare quindi cliccare su Avanti;
    Avax Decryption Tool for CryptoMix, selezione cartelle da decriptare
    FIG 3 - Avax Decryption Tool for CryptoMix, selezione cartelle da decriptare
  • Indicare, nelle apposite caselle, la versione cifrata e quella non cifrata dello stesso file quindi cliccare su Avanti;
    Avax Decryption Tool for CryptoMix, selezione file cifrato e non cifrato
    FIG 4 - Avax Decryption Tool for CryptoMix, selezione file cifrato e non cifrato
  • Cliccare sul pulsante Start per avviare la ricerca della chiave;
  • Se la chiave viene trovata, cliccare sul pulsante Avanti per proseguire;
  • Nella schermata successiva è consigliabile selezionare le opzioni Backup encrypted files e Run the decryption process as addministrator quindi cliccare sul pulsante Decrypt per avviare la decriptazione dei propri file;
  • Al termine è possibile visualizzare il log dell'operazione cliccando sull'apposito pulsante Show Log.
Nel caso in cui il tool di Avast non riesca a decriptare i file, allora questi non sono stati cifrati in modalità offline e al momento non è possibile recuperarli.




martedì 21 febbraio 2017

Windows Quick Tip: Creare Symbolic link e junction tramite il comando MKLINK

In tutti i file system moderni è possibile creare un Symbolic Link (Collegamento Simbolico): un collegamento di tipo avanzato a file e cartelle presenti generalmente in altri percorsi.  Anche se concettualmente simili ai collegamenti tradizionali con estensione .lnk, i Symbolic Link si differenziano da questi ultimi in quanto sono un tipo di oggetto del file system (come lo sono file e cartelle) mentre i link tradizionali sono oggetti della shell.

Per chiarire la differenza tra i due tipi di collegamento possiamo fare un'esempio pratico: provando a copiare un link tradizionale con estensione .lnk su una pendrive, verrà copiato il collegamento stesso e non il file puntato. Ciò avviene in quanto, come precedentemente accennato, i collegamenti .lnk sono riconosciuti solo a livello di shell ma non dal file system sottostante. Eseguendo la stessa operazione con un collegamento simbolico verrà, invece, copiato il file puntato e non il suo puntatore.

La possibilità di creare link simbolici è stata introdotta nel file system NTFS a partire da Windows 2000 tuttavia l'utility linkd.exe necessaria per la creazione di questo tipo di collegamenti non veniva fornita insieme al sistema operativo ma era necessario procurarsi il Resource Kit; inoltre era possibile creare link simbolici solo alle cartelle e non ai file.

Da Windows Vista in poi, l'utility a riga di comando per la creazione dei collegamenti simbolici è stata integrata all'interno del sistema operativo e prende il nome di mklink. Anche il sistema operativo fa uso dei collegamenti simbolici come ad es. le cartelle Programmi e Documents and Settings utilizzate nelle recenti versioni di Windows.

Per visualizzare i collegamenti simbolici presenti all'interno di una cartella basta utilizzare il comando
dir /al

Collegamenti simbolici utilizzati da Windows
FIG 1 - Collegamenti simbolici utilizzati da Windows

Come si può notare dalla FIG 1, nella root del disco di sistema sono presenti 2 collegamenti simbolici (di tipo junction): Documents and settings che punta alla cartella c:\Users e Programmi che punta alla cartella C:\Program Files. I collegamenti simbolici possono essere di tipo:
- JUNCTION  nel caso di giunzioni;
- SYMLINK  nel caso di collegamento simbolico a file;
- SYMLINKD  nel caso di collegamento simbolico a directory.

La creazione di link e junction in ambiente Windows non è molto diffusa, probabilmente perché è necessario agire tramite riga di comando e non tramite GUI (a meno che non si utilizzano programmi di terze parti). La creazione di link simbolici avviene tramite il comando mklink eseguito dal prompt dei comandi come amministratore.

La sintassi del comando mklink è molto semplice:

MKLINK [[/D] | [/H] | [/J]] Collegamento Destinazione
 /D      Crea un collegamento simbolico a una directory. L'impostazione predefinita è il collegamento simbolico a un file.
 /H      Crea un collegamento reale anziché un collegamento simbolico.
 /J      Crea una giunzione di directory.
Collegamento    specifica il nome del nuovo collegamento simbolico.
Destinazione    specifica il percorso (relativo o assoluto) a cui fa riferimento il nuovo collegamento.


Come è possibile notare dalla sintassi del comando esistono diversi tipi di link: collegamento simbolico, collegamento reale e junction (giunzione).

I collegamenti simbolici e le giunzioni vengono anche chiamati Soft Link mentre i collegamenti Reali sono chiamati Hard Link.


Soft Link
I Soft Link consentono di linkare file e cartelle presenti sullo stesso volume o su volumi diversi. Le differenze sostanziali tra collegamenti simbolici e giunzioni sono:
  • I collegamenti simbolici possono essere creati anche per i file oltre che per le cartelle mentre le giunzioni sono possibili solo per le cartelle;
  • I collegamenti simbolici utilizzano sia percorsi relativi che assoluti mentre le giunzioni lavorano esclusivamente con i percorsi assoluti.


Hard Link
Gli Hard Link sono associazioni N:1 tra un nome del file e i dati che esso contiene. Questo tipo di collegamenti consente di creare più nomi di file che puntano allo stesso oggetto dati sul disco. Ogni oggetto dati ha al suo interno un contatore di quanti file fanno riferimento ad esso. L'oggetto dati verrà rimosso solo quando tutti i riferimenti verranno eliminati.
Ad es.
Creando un Hard Link al file notepad.exe questo verrà visualizzato come fosse un file eseguibile a se stante. Cancellando il file eseguibile originale, notepad.exe, l'Hard Link continuerà a funzionare.


Alcuni esempi:

Esempio 1
MKLINK "Collegamento Immagine" c:\immagine.jpg
Crea un collegamento chiamato Collegamento Immagine al file c:\immagine.jpg

Esempio 2
MKLINK /D "Collegamento Temp" c:\temp
Crea un collegamento chiamato Collegamento Temp alla cartella c:\temp. Come si evince dal comando, per creare il collegamento ad una cartella è necessario specificare l'argomento /D.

Esempio 3
MKLINK /H "NotePad HL.exe" Notepad.exe
L'argomento /H permette di creare un collegamento reale (Hard Link): un nuovo puntatore al file che ha lo stesso valore del percorso originale. Un Hard Link deve risiedere sullo stesso volume del file originale ed è possibile creare più Hard Link ad uno stesso file. Ogni file è collegato almeno ad un Hard Link che è il percorso originale. L'Hard Link continuerà ad esistere e a funzionare anche se il file originale viene cancellato.

Esempio 4
MKLINK /J d:\Cartella1 c:\temp
Con l'argomento /J è possibile creare una junction (o giunzione), ossia un collegamento ad una cartella che può essere memorizzato anche su un volume diverso.


Creazione collegamenti simbolici e collegamenti reali
FIG 2 - MKLINK, Creazione collegamenti simbolici e collegamenti reali


Visualizzazione collegamenti simbolici
FIG 3 - Visualizzazione collegamenti simbolici





lunedì 13 febbraio 2017

Windows Quick Tip: Creare unità virtuali con SUBST

In alcuni contesti può essere utile definire delle unità virtuali (virtual drives): unità disco che non esistono fisicamente ma costituiti da porzioni di RAM oppure da un particolare percorso/cartella del disco fisico. L'unità virtuale può, ad esempio, essere utilizzata per abbreviare un percorso molto lungo oppure per ingannare alcuni software che tentano di accedere ad un'unità disco non più presente nel sistema.

In questo articolo vedremo come creare un'unità virtuale utilizzando il comando SUBST

Il comando SUBST fu introdotto a partire dalla release 3.1 del MS-DOS ed è presente anche nelle versioni più recenti di Windows.

La sintassi del comando è molto semplice. Lanciando il comando senza alcun parametro:
SUBST
verranno elencate tutte le unità virtuali già definite complete di lettere di unità e path.


Subst, elenco unità virtuali definite
FIG 1 - Subst, elenco unità virtuali definite


Creare un'unità virtuale

Per creare una nuova unità virtuale è necessario passare al comando SUBST la lettera dell'unità, comprensivo dei due punti, e il percorso da assegnarle racchiuso tra apici (soprattutto in caso in cui nel percorso siano presenti spazi).
Ad es.
SUBST X: "C:\Temp"
Subst, creazione unità virtuale
FIG 2 - Subst, creazione unità virtuale
Le unità virtuali create in questo modo vengono mantenute fino alla disconnessione dell'utenza. Al successivo logon è necessario procedere nuovamente alla loro creazione.

Sulle unità virtuali definite tramite SUBST non è possibile utilizzare alcuni comandi come: CHKDSKDISKCOMPDISKCOPYFORMAT, LABELRECOVER.


Eliminare un'unità virtuale

Per eliminare un'unità virtuale basta far seguire al comando la lettera dell'unità virtuale con i due punti e il parametro /D
Ad es.
SUBST X: /D
Subst, eliminazione di un'unità virtuale
FIG 3 - Subst, eliminazione di un'unità virtuale


Assegnare un'etichetta all'unità virtuale

Per assegnare all'unità virtuale un'etichetta personalizzata è necessario procedere tramite il registro di sistema.

  • Avviare l'editor del registro di sistema (WIN+R e digitare regedit seguito da invio); 
  • posizionarsi su
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\
    quindi creare una nuova chiave nominandola con la lettera dell'unità virtuale a cui si intende assegnare l'etichetta. All'interno della nuova chiave creare una sottochiave e rinominarla in DefaultLabel. Al valore stringa (Predefinito) presente in quest'ultima assegnare l'etichetta da dare all'unità.
    Ad es. nel caso dell'unità virtuale X il percorso sarà 
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\X\DefaultLabel

    Assegnare l'etichetta ad un unità virtuale
    FIG 4 - Assegnare l'etichetta ad un unità virtuale



Rendere permanenti le unità virtuali

Per rendere permanente un'unità virtuale (senza l'utilizzo di tool di terze parti) e ritrovarla anche dopo il riavvio del sistema è possibile utilizzare uno dei seguenti metodi.

Metodo 1
Creare un file Batch con i comandi per la creazione dell'unità virtuale e inserirlo in esecuzione automatica. Ad es.
@ECHO off
SUBST X: C:\Temp


Metodo 2
Inserire il comando SUBST per la creazione di unità virtuali direttamente all'interno della chiave di registro RUN.  Il modo più semplice è quello di creare un file .reg con all'interno le stringhe per creare il nuovo valore all'interno della chiave RUN.

Se si intende creare l'unità virtuale per tutti gli utenti che accedono al sistema il contenuto del file .reg sarà simile al seguente:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Unità virtuale X"="SUBST X: d:\\Temp"

Se, invece, si intende creare l'unità virtuale solo per l'utente corrente allora il contenuto del file .reg sarà 
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Unità virtuale X"="SUBST X: d:\\Temp"


Metodo 3
Anche in questo metodo prevede di agire tramite il registro di sistema ma questa volta l'unità virtuale verrà specificata all'interno della chiave DOS Devices. Il contenuto di un'eventuale file .reg avrà un aspetto simile al seguente
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices]
"X:"="\\??\\C:\\Temp"




giovedì 9 febbraio 2017

Ransomware Zyka, come recuperare i propri dati

Nell'ultimo anno il numero dei ransomware che circolano in rete è aumentato in maniera esponenziale. Ogni giorno vengono scoperti nuovi ransomware o nuove varianti di quelli già esistenti che tentano di rendere la vita degli utenti un inferno. Il ricercatore indipendente noto come CyberSecurity ha di recente scoperto un nuovo ransomware chiamato Zyka

Il ransomware in questione infetta il PC attraverso un trojan: la vittima riceve un'email di spam contenente un allegato che, una volta aperto, provvede a scaricare e ad installare il ransomware vero e proprio. Una volta avviato Zyka provvede a crittografare i dati dell'utente aggiungendo l'estensione .lock. Terminata la cifratura dei file della vittima, viene visualizzato il messaggio del riscatto contenente informazioni sul tipo di algoritmo utilizzato (AES), l'ammontare del riscatto (170$) e come pagarlo (tramite bitcoin al wallet indicato). Il messaggio invita anche a pagare il riscatto entro 72h altrimenti la chiave privata conservata sui server verrà cancellata e non sarà più possibile riavere i propri dati.


Ransomware Zyka, messaggio del riscatto
FIG 1 - Ransomware Zyka, messaggio del riscatto



Come recuperare i dati

Prima di procedere a decriptare i dati, consiglio di effettuare una scansione approfondita con un antivirus e un antimalware (come Malwarebytes) aggiornati.
Il recupero dei dati è possibile grazie al tool StupidDecrypter sviluppato da Michael Gillespie (Demonslay335) e scaricabile da https://download.bleepingcomputer.com/demonslay335/StupidDecrypter.zip

Il tool permette di decriptare file cifrati con le seguenti estensioni: .deria, .fucked, .killedXXX, .lock, .Nazi, _crypt0, _nullbyte


Scompattare il file .zip ed avviare l'unico file eseguibile StupidDecrypter.exe


StupidDrecypter, recuperare i dati cifrati da Zyka
FIG 2 - StupidDrecypter, recuperare i dati cifrati da Zyka

Cliccare sul pulsante Select Directory e selezionare la cartella o il disco contenente i dati cifrati quindi cliccare su Decrypt per avviare il processo di recupero dati. I dettagli dell'operazione verranno indicati nel riquadro alla sinistra dei pulsanti inoltre, all'interno della cartella in cui risiede l'eseguibile del tool, verrà generato un file di log.

Il tool consente anche di eliminare i file cifrati selezionando l'apposita opzione dal menu Settings.


StupidDecrypter, Delete Encrypted Files
FIG 3 - StupidDecrypter, Delete Encrypted Files



martedì 7 febbraio 2017

Windows 10: Disabilitare l'aggiornamento automatico delle App

In Windows 10, per default, gli aggiornamenti delle App vengono scaricati e installati automaticamente senza alcun intervento da parte dell'utente. Ciò può portare a situazioni spiacevoli come a non poter utilizzare una o più App in quanto in fase di aggiornamento. A differenza degli aggiornamenti del sistema operativo, in questo caso Microsoft permette all'utente di modificare tale comportamento con semplici passaggi.
  • Avviare Windows Store cliccando sull'apposita icone presente sulla barra delle applicazioni(oppure digitare Store nella casella di ricerca di Windows e selezionare il primo dei risultati);

    Windows 10, Icona store nella barra delle applicazioni
    FIG 1 - Windows 10, Icona store nella barra delle applicazioni
  • All'interno dell'interfaccia dello Store, cliccare sull'icona del proprio account;
  • Dal menu che appare cliccare su Impostazioni;
    Windows 10, Impostazioni Store
    FIG 2 - Windows 10, Impostazioni Store
  • Nella sezione Aggiornamenti delle app disattivare l'opzione Aggiorna le app automaticamente;
    Windows 10, Disabilita aggiornamento automatico App
    FIG 3 - Windows 10, Disabilita aggiornamento automatico App

A questo punto gli aggiornamenti non saranno più scaricati  e installati automaticamente. Quando saranno disponibili nuovi aggiornamenti, all'interno dello Store, apparirà una nuova icona accanto a quella dell'account. Cliccando su questa nuova icona is accederà alla pagina Download e aggiornamenti che elencherà gli aggiornamenti disponibili per le app. Per procedere con l'installazione dell'aggiornamento basta cliccare sull'elemento interessato.



domenica 5 febbraio 2017

Windows 10: Abilitare la visualizzazione della taskbar quando è attiva la tastiera su schermo su dispositivo touch

Chi utilizza Windows 10 su un dispositivo touch, come ad es. Surface Pro, avrà sicuramente notato che avviando la tastiera su schermo, la barra delle applicazioni scompare. Per mantenere visibile la barra delle applicazioni anche quando si attiva la tastiera sullo schermo è necessario intervenire tramite registro di sistema:
  • Avviare l'editor del registro di sistema (WIN+R e digitare regedit seguito da invio); 
  • Posizionarsi su
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StigRegKey\Typing\TaskbarAvoidanceEnabled
    Se le chiavi Typing
    TaskbarAvoidanceEnabled non sono presenti crearle manualmente
  • Creare un nuovo valore DWORD (32 bit)rinominarlo in Enable e valorizzarlo ad 1.
Affinché la modifica diventi effettiva è necessario riavviare il sistema.

Dal seguente link è possibile scaricare i file .reg per abilitare/disabilitare la visualizzazione della barra delle applicazioni quando è attiva la tastiera su schermo
DOWNLOAD