Quelques réglages qui peuvent améliorer sensiblement la sécurité de
Windows.
Le pare-feu de Windows peut être largement suffisant si vous suivez toutes les règles de sécurité élémentaires.
Par défaut, le pare-feu de
Windows n’est pas forcément bien réglé.
Voici quelques règles à ajouter afin d’obtenir les réglages optimales du
firewall de
Windows.
Introduction au réglage du pare-feu de Windows
Avant de commencer, il faut plutôt être à l’aise avec
le pare-feu de Windows.
Dans le tuto suivant, j’avais expliqué comment ajouter des règles sur une application afin de la bloquer :
Autoriser/Bloquer une application sur le pare-feu Windows
Vous
pouvez suivre ce tuto.. ici nous utiliserons les options avancés. Il
existe d’ailleurs aussi un tuto sur les options avancées du pare-feu de
Windows :
Autoriser/Bloquer une application sur le pare-feu Windows
En résumé, ce qu’il faut bloquer :
- C:\Windows\System32\WindowsPowerShell\v1.0\Powershell.exe (utilisé pour télécharger et installer des logiciels malveillants, ou utiliser comme logiciel malveillants, voirLes virus ou trojan Powershell)
- C:\Windows\system32\wscript.exe : lié au Virus par clé USB ou virus raccourcis USB et Malware par VBS / WSH, peut-être utilisé pour télécharger et installer des logiciels malveillants.
- C:\Windows\explorer.exe – autoriser que les connexions vers le port 443
- C:\Windows\system32\mshta.exe
– permet d’exécuter des applications HTML (extension .hta), ces
derniers peuvent télécharger et installer des cheval de troie.
- C:\Windows\rundll32.exe – en chargeant une DLL via rundll32.exe, un trojan peut télécharger d’autres malwares.
- Les processus de Word et Excel, ceci afin de vous protéger des macros malicieuses :
- C:\Program Files (x86)\Microsoft Office\Office15\Winword.exe
- C:\Program Files (x86)\Microsoft Office\Office15\Excel.exe
Importer des règles du pare-feu de Windows
Pour ceux qui ne veulent pas se prendre la tête à créer chaque règle de blocage sur le pare-feu de Windows.
Je fournis un fichier zip qui peut-être importé sur votre pare-feu.
Attention, cela va écraser toutes vos règles, donc si vous avez des
règles d’acceptation pour certaines applications, elles seront perdues.
Le lien vers ces règles :
http://www.malekal.com/download/firewall_Windows10_bon_reglage.zip
Ce zip est composé de :
- fw_windows10_bon_reglage.wfw : qui contient les règles à importer sur le pare-feu de Windows
- testconnexion.ps1 : qui vous permet de tester le blocage de PowerShell
Faites un clic droit puis « importer la stratégie »
Sur le message d’avertissement qui demande une confirmation pour importer les règles, faites oui.
Puis naviguez dans les dossiers pour sélectionner le fichier fw_windows10_bon_reglage.wfw.
Si l’import réussi, vous obtenez le message suivant.
Dans les règles sortantes, vous devez obtenir ceci.
Vous pouvez alors tester le blocage de connexion sur Powershell avec le script testconnexion.ps1 fourni.
Faites un clic droit dessus puis
Exécuter avec PowerShell.
Faire Oui en appuyant sur O (O comme Oui) puis Entrée sur le message d’avertissement.
Un message rouge doit vous indiquer « Impossible de se connecter au serveur distant ».
Dans ce cas, les règles de pare-feu sont effectives.
Créer les règles manuellement
Si vous ne souhaitez pas importer les règles, vous pouvez créer les règles manuellement.
PowerShell
PowerShell est une invite de commandes qui intègre son propre langage.
PowerShell permet donc de créer des scripts, il est tout à fait
possible à partir d’un script de télécharger un fichier distant et de
l’exécuter sur l’ordinateur.
En clair, donc PowerShell peut servir de tremplin pour installer un
virus sur l’ordinateur, comme Trojan-Downloader.
Exactement comme c’est le cas actuellement des scripts VBS ou JS utilisés dans
des campagnes d’emails malicieux qui ont permis l’avènements des
crypto-ransomware.
La vidéo suivante montre le cas d’un
Trojan Downloader PowerShell qui installe
le ransomware Locky :
PowerShell est déjà utilisé par des
Malware ‘FileLess’ : PoweLiks, Kovter, Gootkit… il est fort probable que 2017 soit l’année PowerShell… avec une utilisation beaucoup plus accru.
Pour tester le téléchargement, vous pouvez utiliser la commande suivante depuis
une invite de commandes classiques :
PowerShell (New-Object System.Net.Webclient).DownloadFile
('http://www.malekal.com/download/FRST.zip', '%USERPROFILE%\Desktop\FRST.zip');
La commande ci-dessous, permet de télécharger le fichier FRST.zip et de le placer sur le bureau.
Un programme malveillant, peut donc facilement être sous la forme d’un script qui télécharge un exécutable dans le dossier TEMP pour l’exécuter.
Plus d’informations, lire :
les Trojan ou virus PowerShell
Bloquer PowerShell
En suivant, le tuto
Autoriser/Bloquer une application sur le pare-feu Windows Vous devez bloquer l’application :
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe (version 32-bits) %SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe (version 64-bits)
%SystemRoot% = C:\Windows
En créant une règle avancée :
Par défaut donc, le pare-feu de
Windows autorise PowerShell.
Il est tout à fait possible de bloquer ce dernier.
Rendez-vous dans le Panneau de configuration de Windows puis Pare-feu.
A gauche, cliquez sur Paramètres avancés.
Dans la nouvelle fenêtre, cliquez sur
Règles de trafic sortant
Nouvelle règle.
Laissez sur Programme puis cliquez sur Suivant.
Ensuite, il faut aller chercher le fichier PowerShell.
Pour cela, choisissez la seconde option puis cliquez sur Parcourir.
Naviguez dans les dossiers pour ouvrir Windows > system32 >
WindowsPowerShell > v1.0> powershell.exe
Laisser sur «
Bloquer la connexion » afin de pouvoir bloquer la connexion provenant de powershell.exe
Laissez tout coché puis cliquez sur Suivant.
Nommez la règle, par exemple Blocage PowerShell ou Blocage PowerShell (32-bits).
La règle est alors visible dans la liste.
Si on relance notre commande, on obtient une erreur. Le téléchargement de fichiers à partir de PowerShell est alors bloqué :
Exception lors de l'appel de « DownloadFile » avec « 2 » argument(s) :
« Impossible de se connecter au serveur distant »
Pensez à bloquer les deux versions 32-bits et 64-bits, si votre Windows est en version 64-bits.
Wscript
Wscript.exe
est le processus système lié à Windows Script Hosting qui donne la
possibilité d’exécuter des scripts de type JavaScript (sisi!) et VBS.
Des scripts malicieux existent depuis longtemps. Une recrudescence depuis Décembre 2015 a lieu, via
des campagnes d’emails malicieux pour pousser des
crypto-ransomware.
Pour obtenir plus d’informations sur les malwares basés sur ces scripts malicieux, lire la page :
Malware par VBS / WSH ( Windows Scripting Host )
Voici un exemple de script qui permet de télécharger un fichier sur Windows.
Ensuite, on peut le faire exécuter sans problème.
HTTPDownload "http://www.malekal.com/download/FRST.zip",
"C:\Users\VincentPC\AppData\Local\Temp"
Sub HTTPDownload( myURL, myPath )
' Standard housekeeping
Dim i, objFile, objFSO, objHTTP, strFile, strMsg
Const ForReading = 1, ForWriting = 2, ForAppending = 8
' Create a File System Object
Set objFSO = CreateObject( "Scripting.FileSystemObject" )
' Check if the specified target file or folder exists,
' and build the fully qualified path of the target file
If objFSO.FolderExists( myPath ) Then
strFile = objFSO.BuildPath( myPath, Mid( myURL, InStrRev( myURL, "/" ) + 1 ) )
ElseIf objFSO.FolderExists( Left( myPath, InStrRev( myPath, "\" ) - 1 ) ) Then
strFile = myPath
Else
WScript.Echo "ERROR: Target folder not found."
Exit Sub
End If
' Create or open the target file
Set objFile = objFSO.OpenTextFile( strFile, ForWriting, True )
' Create an HTTP object
Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )
' Download the specified URL
objHTTP.Open "GET", myURL, False
objHTTP.Send
' Write the downloaded byte stream to the target file
For i = 1 To LenB( objHTTP.ResponseBody )
objFile.Write Chr( AscB( MidB( objHTTP.ResponseBody, i, 1 ) ) )
Next
' Close the target file
objFile.Close( )
End Sub
On peut alors créer une règle sortante filtrante, exactement dans le même principe que précédemment.
Avec le script ci-desous, on obtient une Erreur
WinHTTP.WinHTTPRequest
Le fichier FRST.zip est créé mais il fait 0 octet.
Injection processus
L’injection de processus consiste à charger une DLL dans un processus afin de pouvoir contrôler ce dernier.
Ainsi des
virus/malwares
peuvent utiliser des processus système explorer.exe, svchost.exe,
spoolsv.exe afin de se connecter à des serveurs distants pour recevoir
les informations de contrôle.
Le pare-feu de Windows peut éventuellement aider à bloquer certaines de ces connexions.
Contrairement, au paragraphe précédent où il s’agit de bloquer un
Trojan Downloader afin de bloquer le téléchargement et l’installation
del a charge utile… ici la charge utile est déjà installée… De ce fait,
il est plus difficile de bloquer le fonctionnement du Trojan.
Voici un exemple d’injection de processus Windows avec
le malware Bedep :
Ainsi si on bloque explorer.exe, le Trojan Bedep devient inactif :
Comprenez aussi, qu’il est impossible de bloquer tout l’accès réseau aux processus Windows.
Par exemple :
- explorer.exe doit pouvoir se connecter aux ordinateurs du réseau LAN pour accéder aux ressources partages (fichiers/dossiers etc)
- svchost.exe est utilisé, par divers services Windows et notamment Windows Update pour se connecter au service et télécharger les mises à jour de Windows.
Toutefois,
vous pouvez bloquer certains ports. Par exemple, il est tout à fait
inutile qu’explorer.exe puisse se connecter à des sites WEB (port
distant 80 et 443).
Par contre, explorer.exe doit pouvoir se connecter aux partages réseaux, cela se fait sur le port 445 (SMB).
Pour mettre en place un filtrage, nous allons créer deux règles sur explorer.exe
- La première règle autorise les connexions sur le port 445.
- La seconde règle interdit toutes les connexions sortantes.
Ainsi, si la première règle est vrai, on s’arrête là.
Si elle est fausse, on continue, la seconde règle qui bloque toutes les
connexions sortantes pour explorer.exe est alors appliquée.
Créez la règle sur explorer.exe qui autorise les connexions puis faites un clic droit / Propriétés sur celle-ci.
Dans l’onglet Protocoles et ports, vous pouvez régler ces derniers, comme ceci.
A savoir :
- Protocole TCP
- Port, mettre 445
Puis créer la seconde règle qui interdit toutes les connexions explorer.exe
Ci-dessous, les deux règles explorer.exe sur le pare-feu Windows.
Il est tout à fait possible de lister les partages et accéder aux fichiers distants.
Autres processus à bloquer
Vous pouvez aussi bloquer d’autres processus, comme :
- C:\Windows\rundll32.exe – en chargeant une DLL via rundll32.exe, un trojan peut télécharger d’autres malwares.
- Les processus de Word et Excel, ceci afin de vous protéger des macros malicieuses :
- C:\Program Files (x86)\Microsoft Office\Office15\Winword.exe
- C:\Program Files (x86)\Microsoft Office\Office15\Excel.exe
Par exemple,
le pare-feu ZoneAlarm par défaut, autorise les connexions provenant de Word et rundll32.
Une macro Word peut donc télécharger une DLL et la lancer depuis rundll32… c’est notamment le fonctionnement du
ransomware Locky.
Winword.exe est autorisé :
Windows Firewall Control
Windows
Firewall Control est un programme qui permet de gérer simplement les
règles et autorisations de processus sur le pare-feu de Windows.
En outre, il permet de lire le journal de connexion ou blocage.
Je vous conseille vivement de l’installer, plus d’informations, se reporter au tuto :
Tutoriel Windows Firewall Control
GlassWire est aussi une bonne alternative, voir aussi son tuto :
Tutoriel Glasswire
Présentation et tuto de Windows Firewall Control en vidéo :
Plus loin dans la sécurité Windows
Pour sécuriser Windows, vous pouvez lire et suivre les conseils du tutoriel suivant :
Comment sécuriser son ordinateur ?
OSArmor est un complément idéal à ces règles de blocages du pare-feu de Windows, plus d’informations sur la page :
OSArmor : Bloquer l’exécution de processus et connexions malveillantes
SysHardener
permet de sécuriser Windows facilement en désactivant certaines
fonctions de Windows qui peuvent être utilisées par des logiciels
malveillants.
Pour toutes les explications de SysHardener, lire notre article dédié :
SysHardener : sécuriser Windows facilement contre les virus
Liens autour du pare-feu de Windows
REF.: