mercoledì 10 aprile 2019

Ransomware Hacked (HKCrypt): Recupero dei dati

Scoperto nel 2017, il ransomware HKCrypt (conosciuto anche con il nome di Hacked) prende di mira gli utenti inglesi, turchi, spagnoli e italiani. I vettori di infezione sono i soliti già visti per gli altri ransomware: email, link a siti compromessi, file infetti, ecc. Una volta installato, il ransomware visualizza una finestra di Windows Update fasulla mentre provvede a cifrare i file della vittima utilizzando l'algoritmo RC4 e aggiungendo a questi l'estensione .hacked. Al termine della procedura visualizza un messaggio come quello mostrato in figura per informare la vittima che i file sono stati cifrati e su come pagare il riscatto.
Ransomware Hacked (HKCrypt)
FIG 1 - Ransomware Hacked (HKCrypt)

Il ransomware crea anche più file contenenti le note per il riscatto in diverse lingue: in inglese (@readme_English.txt o How_to_decrypt_files.txt), spagnolo (@Readme_Spanish.txt), e italiano (@Leggimi_decrypt_Italian.txt). La versione inglese delle note è analoga a quella riportata di seguito:

All of your files were protected by a strong encryption with RSA4096

What happened to my files ?
Decrypting of your files is only possible with the help of private key and decryp

How can i get my files back ? 
the only way to restore your files So, there are two ways you can choose
1- wait for a miracle and get your price doubled
2- or restore your data easy way if you have really valuable data
you better not waste your time, because there is no other way to get your files, except make 
a payment

What should i do next ? Buy decryption key
1. Buy Bitcoin (https://blockchain.info)
2. Send amount of  0.5 BTC to address: 131mixVnmnijg1DPJZrTTakX3qJLpb675o
3. Transaction will take about 15-30 minutes to confirm.
4. When transaction is confirmed, send email to us at 
payment.hkdecryp@protonmail.com
5. Write subject of your mail with :  HACKED
6. Write content of your mail with : - Restore my files Bitcoin payment : (YOUR BITCOIN 
TRANSACTION ID)


Ad oltre 1 anno e mezzo dalla scoperta del ransomware, l'esperto di sicurezza Michael Gillespie di Emsisoft è riuscito a scovare il punto debole del ransomware Hacked che gli ha permesso di creare un tool per decriptare e recuperare i dati cifrati.


Rimozione del ransomware

Prima di tentare il recupero dei dati è necessario assicurarsi che il ransomware sia stato rimosso dal sistema eseguendo una scansione con un antivirus o antimalware aggiornato. Un buon prodotto gratuito e utile in questi casi è  Kaspersky Rescue Disk scaricabile da QUESTA PAGINA. Scaricata l'immagine è possibile masterizzarla su CD\DVD oppure creare una pendrive bootable tramite il tool rescue2USB. Eseguendo il boot con Kaspersky Rescue Disk è possibile fare in modo che l'antivirus scarichi automaticamente da Internet gli aggiornamenti prima di procedere alla scansione dell'intero sistema.
Terminata la scansione ed eliminati eventuali virus trovati, avviare il sistema in modalità provvisoria quindi installare ed eseguire una scansione con una versione di Malwarebytes e/o SpyHunter aggiornata.


Recupero dei dati

Il tool scritto da Michael Gillespie può essere scaricato dal seguente link
DOWNLOAD

Il tool va eseguito con i privilegi di amministratore. Una volta accettate le condizioni di utilizzo, basta selezionare il disco dove risiedono i file cifrati (o specificare una determinata cartella tramite il pulsante Add folder), cliccare sul tasto Decrypt e attendere che il tool completi il suo lavoro. Al termine, nel tab Results, verranno visualizzate le informazioni sul recupero dei dati cifrati.


Emsisoft Decrypter for HKCrypt
FIG 2 - Emsisoft Decrypter for HKCrypt





martedì 9 aprile 2019

PowerShell: Visualizzare lo stato dei servizi di Windows

Per visualizzare i servizi di Windows tramite Powershell si può utilizzare il cmdlet Get-Service


Sintassi

Get-Service [[-Name] <String[]>] [-DependentServices] [-RequiredServices] [-Include <String[]>] [-Exclude <String[]>]

Get-Service [-DependentServices] [-RequiredServices] -DisplayName <String[]> [-Include <String[]>] [-Exclude <String[]>]

Get-Service [-DependentServices] [-RequiredServices] [-Include <String[]>] [-Exclude <String[]>] [-InputObject <ServiceController[]>]



Parametri


-DependentServices
Visualizza solo i servizi che dipendono dal servizio specificato.

-DisplayName
Permette di specificare, come un array di stringhe, il nome o i nomi dei servizi da ricercare. Sono consentiti i caratteri Wildcards.

-Exclude
Permette di specificare, come un array di stringhe, il nome o i nomi dei servizi da escludere dall'operazione. Sono consentiti i caratteri Wildcards.

-Include
Permette di specificare, come un array di stringhe, il nome o i nomi dei servizi da includere nell'operazione. Sono consentiti i caratteri Wildcards.

-InputObject
Specifica gli oggetti ServiceController che rappresentano i servizi da visualizzare. 

-Name
Specifica i nomi dei servizi da ricercare. Sono consentiti i caratteri Wildcards.

-RequiredServices
Mostra i servizi da cui dipende il servizio specificato.



Esempi


Esempio 1
Get-Service
Visualizza tutti i servizi sul computer:  stato, nome servizio e display name.

Esempio 2
Get-Service "LanMan*" 
Visualizza tutti i servizi presenti sulla postazione il cui nome inizia per "LanMan".

Esempio 3
Get-Service -Displayname "*rete*"
Visualizza tutti i servizi presenti sulla postazione il cui display name contiene la parola "rete".
PowerShell, Get-Service visualizzazione servizi con un particolare display name
FIG 1 - PowerShell, Get-Service visualizzazione servizi con un particolare display name

Esempio 4
Get-Service | Where-Object {$_.Status -eq "Stopped"}
Visualizza tutti i servizi che sono arrestati (in stato Stopped).

Esempio 5
Get-Service | Where-Object {$_.Status -eq "Running"}
Visualizza l'elenco dei servizi attivi (in stato Running).

Esempio 6
Get-Service | Sort-Object status
Elenca i servizi ordinandoli per il campo Status crescente. Attenzione, non si tratta di ordine alfabetico infatti i servizi in stato Stopped vengono visualizzati prima di quelli che sono in stato Running. Questo accade perché il campo Status è un'enumerazione: Stopped ha valore 1 mentre Running ha valore 4.

Esempio 7
"LanMan*" | Get-Service
Il comando visualizza tutti i servizi presenti sulla postazione il cui nome inizia per "LanMan" come visto per l'Esempio 2. Questo esempio dimostra che è possibile passare il nome del servizio a Get-Service tramite il pipe.

Esempio 8
Get-Service -Name "win*" -Exclude "WinRM"
Visualizza tutti i servizi presenti sulla postazione il cui nome inizia per "win" ad esclusione del servizio WinRM.

Esempio 9
Get-Service | Where-Object {$_.DependentServices} |  Format-List -Property Name, DependentServices, @{ Label="NoOfDependentServices"; Expression={$_.dependentservices.count} }
Il comando visualizza, per ciascun servizio presente sulla postazione, il nome dei servizi dipendenti e il loro numero.
PowerShell, Get-Service visualizzazione servizi e relative dipendenze
FIG 2 - PowerShell, Get-Service visualizzazione servizi e relative dipendenze

Esempio 10
Get-Service "WinRM" -RequiredServices
Il comando visualizza i servizi da cui dipende WinRM.





lunedì 8 aprile 2019

PowerShell: Disabilitare temporaneamente le schede di rete attive

Chi lavora nel campo IT può trovarsi nella situazione di essere connesso ad un computer da remoto (ad esempio tramite desktop remoto) e doverlo scollegare/ricollegare alla rete. Disabilitando manualmente la scheda di rete tramite GUI, la connessione verrebbe bruscamente terminata impedendo la riconnessione al computer.
Un modo semplice per evitare di essere tagliati fuori in maniera permanente consiste nel disabilitare temporaneamente le schede di rete connesse tramite il seguente comando PowerShell

$nic = Get-WmiObject Win32_NetworkAdapter | Where-Object {($_.NetEnabled -eq $true) -and ($_.PhysicalAdapter -eq $true) -and (($_.AdapterTypeID -eq 0) -or ($_.AdapterTypeID -eq 9))};$nic.disable();$nic.enable()

Il comando agisce su tutte le connessioni di rete attive (sia connessioni Wi-Fi che wired) e provvede a disattivarle e a riattivarle subito dopo.


PowerShell, Disabilita/Abilita connessioni di rete
FIG 1 - PowerShell, Disabilita/Abilita connessioni di rete




venerdì 5 aprile 2019

MS Word: Recuperare le immagini da un file .docx

Le applicazioni del pacchetto MS Office utilizzano la tecnologia Office Open Xml per il salvataggio dei documenti e ciò si traduce nell'estensione .docx per quanto riguarda i documenti di MS Word. Tale tecnologia si basa sul linguaggio XML: il testo, la formattazione e i metadati vengono salvati in singoli file che è possibile visionare tramite un comune editor di testo come Blocco Note. Un file .docx non è altro che un archivio compresso contenente i diversi file che insieme costituiscono il documento. Per visualizzare i file contenuti nell'archivio basta rinominare l'estensione .docx in .zip ed estrarre il contenuto.
Rinominare l'estensione .docx in .zip
FIG 1 - Rinominare l'estensione .docx in .zip

Ogni archivio è costituito da 3 cartelle: _rels, docProps e word.
  • _rels
    Contenente i metadati relativi alle connessioni che intercorrono tra i file dell'archivio.
  • docProps
    Cartella che contiene le proprietà del documento.
  • word
    La cartella word ospita i contenuti veri e propri del documento comprese le immagini che sono memorizzate all'interno di una sottocartella generalmente chiamata media.
Cartelle contenute all'interno del file docx
FIG 2 - Cartelle contenute all'interno del file docx
All'interno della cartella word è presente la cartella media che contiene le immagini del documento
FIG 3 - All'interno della cartella word è presente la cartella media che contiene le immagini del documento


Dunque per estrarre le immagini da un file .docx basta modificare l'estensione in .zip e navigare nella struttura dell'archivio fino a trovare e salvare i file delle immagini. Tale trucco può essere utile anche per recuperare parte dei contenuti di un file .docx corrotto e non apribile tramite MS Word.


Immagine contenuta all'interno del documento docx nella cartella word\media
FIG 4 - Immagine contenuta all'interno del documento docx nella cartella word\media



giovedì 4 aprile 2019

Google Chrome: Aumentare il numero di suggerimenti mostrati dal completamento automatico

Quando nella barra di Google Chrome si inizia a digitare un indirizzo o una parola da ricercare, la funzione di autocompletamento visualizza da 4 a 6 suggerimenti. Per modificare tale comportamento e aumentare il numero di suggerimenti visualizzati:
  • Nella barra di indirizzi di Chrome digitare chrome://flags seguito da invio;
  • Ricercare la voce Omnibox UI Max Autocomplete Matches e cliccare sul relativo pulsante presente sulla destra per modificare il numero di suggerimenti visualizzati (da 3 a 12) oppure disabilitare/abilitare tale funzione;
  • Riavviare Chrome manualmente o cliccando sul pulsante RELAUNCH NOW che apparirà in basso a destra.
Chrome, Omnibox UI Max Autocomplete Matches
FIG 1 - Chrome, Omnibox UI Max Autocomplete Matches




mercoledì 3 aprile 2019

Windows Quick Tip: Gestione nomi utente e password archiviati

Quando il computer si connette ad un dispositivo della propria rete locale che richiede user e password, Windows tenta di accedervi utilizzando le credenziali con cui l'utente ha eseguito il logon al sistema. Se tali credenziali non funzionano, Windows tenta di reperirle tra quelle memorizzate localmente e, nel caso in cui non vengano trovate o non risultino valide, il sistema operativo richiederà all'utente di inserirle tramite un'apposita finestra di dialogo.
Se, dopo aver inserito le credenziali, viene selezionata la casella memorizza credenziali presente nella stessa finestra, queste verranno memorizzate e archiviate localmente e riutilizzate da Windows per i futuri accessi alla risorsa.

Per visualizzare l'archivio delle user e password memorizzate localmente, dalla finestra di dialogo Esegui (WIN+R) digitare il comando
rundll32.exe keymgr.dll, KRShowKeyMgr seguito da invio.
Windows, Gestione nomi utente e password archiviati
FIG 1 - Windows, Gestione nomi utente e password archiviati

Dalla finestra Gestione nomi utente e password archiviati è possibile effettuare/ripristinare un backup delle credenziali memorizzate, modificarle, eliminarle o aggiungerne di nuove.





martedì 2 aprile 2019

Windows Quick Tip: Disinstallare/Installare un aggiornamento da riga di comando tramite WUSA

Nell'articolo PowerShell: Visualizzare  gli hotfix installati sul pc locale o su un pc remoto è stato mostrato come elencare gli hotfix/aggiornamenti installati sul computer. Per disinstallare/installare un particolare aggiornamento sul computer è possibile utilizzare, da riga di comando, WUSA (Windows Update Standalone Installer) il Programma di installazione Windows Update autonomo.

Il file Wusa.exe si trova nella cartella %windir%\System32 e può essere utilizzato sia per disinstallare un'hotfix/aggiornamento sia per installare pacchetti di aggiornamento MSU


Sintassi


wusa /extract: [/log:]
wusa [/quiet] [/norestart | /warnrestart: | /promptrestart | /forcerestart] [/log:]
wusa / uninstall  < | /kb:> [/quiet] [/norestart | /warnrestart: | /promptrestart | /forcerestart ][/log:]



Parametri


/?, /h, /help
Visualizzano la guida.

/quiet
Tramite tale parametro WUSA.exe viene eseguito in modalità silente (non interattiva).

/norestart
Impedisce a Wusa.exe di eseguire il riavvio del computer. L'opzione /norestart viene ignorata se l'opzione /quiet non è presente. 

/uninstall
Disinstalla il pacchetto o il numero KB specificato.

/kb
Specifica il pacchetto da disinstallare tramite il relativo numero KB. Può essere passato solo insieme all'opzione /uninstall.

/extract
Wusa.exe estrae il contenuto del pacchetto in una cartella di destinazione.

/warnrestart
Quando questa opzione viene combinata con l'opzione /quiet, Wusa.exe visualizza una richiesta all'utente prima di eseguire un riavvio per le operazioni di installazione e disinstallazione.


/forcerestart
Quando questa opzione viene combinata con l'opzione /quiet, Wusa.exe chiude in modo forzato l'applicazione e quindi esegue un riavvio.




Esempi


Esempio 1
wusa.exe /uninstall /kb:4489899 /quiet /norestart
Disinstalla il pacchetto KB4489899 in maniera silente e senza riavviare il sistema.
Windows, Disinstallare un'aggiornamento tramite wusa.exe
FIG 1 - Windows, Disinstallare un'aggiornamento tramite wusa.exe

Esempio 2 
wusa.exe Windows6.0-KB928439-x86.msu /quiet /norestart
Installa il pacchetto Windows6.0-KB928439-x86.msu in maniera silente e senza riavviare il sistema.

Esempio 3
wusa.exe /uninstall /kb:4489899 /quiet /forcerestart
Disinstalla il pacchetto KB4489899 in maniera silente e forza il riavvio del sistema al termine della disinstallazione.