0

Nouvelle fonctionnalité IIS pour aider à identifier une version TLS obsolète / New IIS functionality to help identify weak TLS usage

Go to English version

L’article https://www.microsoft.com/security/blog/2017/09/07/new-iis-functionality-to-help-identify-weak-tls-usage/ explique comment utiliser les champs de log personnalisés pour récupérer des informations (en provenance des variables serveurs IIS) relatives aux requêtes chiffrées. Les informations renvoyées sont très utiles mais non exploitables directement sous leur forme hexadécimales. Je me propose ici de vous fournir dans un premier temps le code permettant de mettre en place ces 4 champs dans vos logs IIS (au niveau des valeurs par défaut des sites web) et ensuite de vous fournir le script Logparser afin de les exploiter plus simplement.

Le code PowerShell permettant d’activer les 4 enregistrements dans les logs IIS est le suivant :

Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.applicationHost/sites/siteDefaults/logFile/customFields" -name "." -value @{logFieldName='crypt-protocol';sourceName='CRYPT_PROTOCOL';sourceType='ServerVariable'}
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.applicationHost/sites/siteDefaults/logFile/customFields" -name "." -value @{logFieldName='crypt-cipher';sourceName='CRYPT_CIPHER_ALG_ID';sourceType='ServerVariable'}
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.applicationHost/sites/siteDefaults/logFile/customFields" -name "." -value @{logFieldName='crypt-hash';sourceName='CRYPT_HASH_ALG_ID';sourceType='ServerVariable'}
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.applicationHost/sites/siteDefaults/logFile/customFields" -name "." -value @{logFieldName='crypt-keyexchange';sourceName='CRYPT_KEYEXCHANGE_ALG_ID';sourceType='ServerVariable'}

Le script Logparser, disponible ici, vous renverra un mot clé au lieu du code hexadécimal renvoyé pour chaque champ. Par exemple SP_PROT_TLS1_2_SERVER au lieu 400 (en réalité 0x400 soit 1024 en décimal). Il en sera ainsi pour chaque ligne du ficher de logs.

La commande à exécuter sera simplement (En plaçant, au préalable, le fichier SQL dans le répertoire de vos logs IIS et en exécutant la commande depuis ce même répertoire)

 
LogParser file:IISTLSUsage.sql -i:W3C -rtp:-1

Quelques liens utiles :

Aller à la version française

The article https://www.microsoft.com/security/blog/2017/09/07/new-iis-functionality-to-help-identify-weak-tls-usage/ explains how to use custom log fields for retrieve information (from IIS server variables) relating to encrypted requests. The information returned is very useful but cannot be used directly in its hexadecimal form. I propose here to first provide you with the code allowing to set up these 4 fields in your IIS logs (at the level of the default values of websites) and then to provide you with the Logparser script in order to exploit them more simply.

The PowerShell code for activating the 4 records in the IIS logs is as follows:

The Logparser script, available here, will return a keyword instead of the hex code returned for each field. For example SP_PROT_TLS1_2_SERVER instead of 400 (in reality 0x400 or 1024 in decimal). This will be the case for each line of the log file.

The command to run will simply be (By putting, beforehand, the SQL file in the directory of your IIS logs and by running the command from this same directory)

 LogParser file:IISTLSUsage.sql -i:W3C -rtp:-1 

Some useful links :

Laurent.

Feel free to share:)

Laurent VAN ACKER

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *