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





lunedì 30 gennaio 2017

Outlook: Visualizzare l'indirizzo email del mittente nel riquadro elenco messaggi

Nel riquadro in cui vengono elencati i messaggi, Outlook visualizza il Display Name del mittente (quando presente). Per fare in modo che al posto del Display Name venga visualizzato sempre l'indirizzo email del mittente è necessario procedere alla creazione di un nuovo Modulo personalizzato.

In questo articolo non mi soffermerò su come creare un modulo personalizzato. Dal seguente link è possibile scaricare il Modulo da me creato per la visualizzazione dell'indirizzo email del mittente nel riquadro elenco messaggi:
DOWNLOAD

Eseguire il download del file VisualizzaIndirizzoMittente.cfg e copiarlo nella cartella di Office contenente gli altri Moduli. 
Il path contentente gli altri moduli è simile al seguente
C:\Programmi\Microsoft Office\Office<versione>\FORMS\<ID locale>
oppure
C:\Programmi\Microsoft Office\root\Office<versione>\FORMS\<ID locale> (da Office 2016)
dove <versione> indica la versione di Office e <ID locale> indica la lingua (1040 italiana, 1033 inglese, ecc).


Il file VisualizzaIndirizzoMittente.cfg non è altro che un file di testo: per visualizzarne il contenuto basta aprirlo con un comune editor di testo come Blocco Note.


Installare il modulo personalizzato in Outlook

  • Accedere alla finestra Gestione Moduli 
    In Outlook 2007 e precedenti dal menu Strumenti -> Opzioni -> scheda Altro -> pulsante Opzioni avanzate… -> pulsante Personalizza moduli -> pulsante Gestione moduli… 
    In Outlook 2010 e successivi dal menu File -> Opzioni -> Avanzate -> sezione Sviluppatori -> pulsante Personalizza moduli... -> pulsante Gestione moduli...

    Outlook, Opzioni avanzate
    FIG 1 - Outlook, Opzioni avanzate

    Outlook, Moduli personalizzati
    FIG 2 - Outlook, Moduli personalizzati
  • Nella finestra Gestione moduli cliccare sul pulsante Installa, selezionare il file VisualizzaIndirizzoMittente.cfg  quindi cliccare su Apri
    Outlook, Gestione moduli
    FIG 3 - Outlook, Gestione moduli
  • Nella finestra delle Proprietà modulo, cliccare sul pulsante OK;
    Outlook, Proprietà modulo
    FIG 4 - Outlook, Proprietà modulo
  • Cliccare sul pulsante Chiudi per chiudere la finestra di dialogo Gestione Moduli;
  • Chiudere le restanti finestre di dialogo cliccando su OK.




Impostare le colonne presenti nel Modulo personalizzato 

  • Aprire la finestra Impostazioni visualizzazione
    In Outlook 2007 dal menu Visualizza -> Disponi per -> Personalizza...
    In Outlook 2010 e successivi cliccare su Visualizza -> Impostazioni visualizzazione
  • Cliccare sul pulsante Colonne... (Campi... in Outlook 2007 e precedenti);
    FIG 5 - Outlook, Impostazioni visualizzazione
  • Dalla casella combinata Seleziona colonne disponibili da, selezionare Moduli...
    Outlook, Seleziona colonne disponibili da
    FIG 6 - Outlook, Seleziona colonne disponibili da
  • Selezionare Indirizzo Email Mittente e cliccare su Aggiungi quindi sul pulsante Chiudi;
    Outlook, Seleziona moduli per cartella
    FIG 7 - Outlook, Seleziona moduli per cartella
  • In Colonne disponibili selezionare E-mail Mittente e cliccare su Aggiungi;

    Outlook, Mostra colonne
    FIG 8 - Outlook, Mostra colonne
  • Cliccare sui pulsanti Sposta su e Sposta giù per spostare la nuova colonna nel punto desiderato.


Nel caso in cui Outlook si connetta ad un server Exchange non verrà visualizzato l'indirizzo email (SMTP) del mittente ma l'indirizzo X500.







martedì 24 gennaio 2017

Windows Quick Tip: Catturare lo schermo tramite scorciatoia da tastiera

Catturare l'immagine di tutto quello che viene visualizzato sullo schermo o su parte di esso è una funzionalità molto utile a diversi scopi, ad es. per mostrare l'errore comparso a video o semplicemente per mostrare il dettaglio di un menu, di un'applicazione o di un comando. Per catturare rapidamente ciò che viene mostrato a video è possibile utilizzare diverse scorciatoie da tastiera: Stamp, ALT+Stamp, WIN+Stamp. Vediamole in dettaglio.

Stamp: premendo il tasto Stamp viene catturato tutto quello visualizzato sullo schermo. L'immagine risultante viene memorizzata all'interno degli appunti di sistema e va incollata in un documento (come ad es. all'interno di Paint o Word) prima di poter essere salvata.

ALT+Stamp: con tale combinazione di tasti viene catturata l'immagine della sola finestra attiva. Anche in questo caso l'immagine viene memorizzata all'interno degli appunti e va incollata in altre applicazioni per poter essere salvata.

WIN+Stamp: questa nuova combinazione di tasti è stata introdotta a partire da Windows 8. L'immagine dell'intero schermo viene salvata automaticamente all'interno di un file della cartella Immagini\Screenshot  in formato png. Ciò consente di salvare velocemente le schermate catturate senza passare per altri programmi.

Screenshot tramite la combinazione di tasti WIN+Stamp
FIG 1 - Screenshot tramite la combinazione di tasti WIN+Stamp