Comment bloquer les macros dans les documents Office en provenance d’Internet ?

I. Présentation

Dans ce tutoriel, nous allons voir qu'il est possible de configurer la suite Microsoft Office par GPO afin de bloquer l'exécution des macros au sein des documents téléchargés à partir d'Internet. Ce paramètre est recommandé pour se protéger contre certains logiciels malveillants. Dernièrement, Microsoft s'est montré un peu indécis à ce sujet : après avoir annoncé vouloir bloquer les macros par défaut dans Office, pour ensuite revenir sur cette décision et finalement préciser que ce retour arrière est temporaire, sachez que vous pouvez mettre en place cette configuration vous-même, dès à présent.

Par défaut, Microsoft Office permet à l'utilisateur d'activer le contenu du document Office pour activer les macros. Grâce à cette nouvelle configuration, les macros sont automatiquement désactivées pour les documents Office en provenance d'Internet, notamment les fichiers Excel, Word et PowerPoint. Si le document est créé localement ou qu'il provient d'une source - normalement - fiable (par exemple, le serveur de fichiers de l'entreprise), on autorise les macros.

Note : pour suivre ce tutoriel, vous devez au préalable intégrer les modèles d'administration Microsoft Office à votre annuaire Active Directory - Voir ce tutoriel.

II. Mark-of-the-Web : c'est quoi ?

Comment Windows fait-il pour déterminer si un fichier provient d'Internet ou du réseau local ? Pour déterminer l'origine d'un fichier, Windows s'appuie sur une fonctionnalité nommée "Mark-of-the-Web" (MOTW), que l'on pourrait traduire par "Marque du Web" en français. Une manière de dire qu'un fichier en provenance d'Internet est taggué par Windows de manière à ce que les différentes applications puissent exploiter cette information pour adapter leur comportement.

Quand un fichier provient d'Internet, cet attribut est associé au fichier. Dans le cas d'un fichier Excel avec des macros, l'application Excel est capable d'interpréter cet attribut "MOTW" pour adapter son comportement, en l'occurrence ici, bloquer les macros. À l'inverse, si le fichier n'a pas cet attribut, c'est qu'il provient d'une source locale, donc le niveau de confiance est plus élevé.

III. Bloquer les macros par GPO

Ouvrez la console de gestion des stratégies de groupe, créez une nouvelle GPO que je vous invite à modifier dans la foulée pour parcourir les paramètres de cette façon :

Configuration utilisateur > Stratégies > Modèles d'administration > Microsoft Excel 2016 > Options Excel > Sécurité > Centre de gestion de la confidentialité

Comme ceci :

Bloquer macros GPO

Vous devez activer le paramètre "Bloquer l'exécution des macros dans les fichiers Office provenant d'Internet" : le titre parle de lui-même.

Bloquer l'exécution des macros dans les fichiers Office provenant d'Internet

Attention, ce paramètre s'applique uniquement à Excel, donc vous devez répéter l'opération pour Access, PowerPoint, Word et Visio pour que la protection soit complète. Il suffit de parcourir les autres catégories de paramètres, pour chaque application, et le reste du chemin est le même. Si vous appliquez uniquement ce paramètre, la sécurité sera effective uniquement dans Excel, ce qui n'est pas l'objectif.

À partir de là, la GPO est déjà prête, même si nous verrons après avoir fait un premier test, qu'il y a un autre paramètre que l'on peut utiliser. Pensez à lier la GPO sur une OU qui contient les comptes utilisateurs à protéger.

IV. S'assurer que les macros sont bien bloquées

Connectez-vous sur une machine avec un compte concerné par la GPO et où la suite Office est installée. Pour tester la protection, il faut récupérer un fichier Excel avec des macros qui provient d'Internet, peut-être que vous en avez déjà un.... Si ce n'est pas le cas, une requête Google du style "excel macro filetype:xlsm" est suffisante pour trouver rapidement un fichier Excel avec des macros, en provenance d'Internet. Attention tout de même sur quel site vous le récupérez...

Sinon, vous pouvez prendre un fichier local avec des macros et lui ajouter le marqueur "Internet" en changeant l'identifiant de zone avec PowerShell. Voici un exemple pour le faire sur le fichier nommé "TestMacro.xlsm".

Set-Content -Path ".\TestMacro.xlsm" -Stream Zone.Identifier -Value '[ZoneTransfer]','ZoneId=3'

Ensuite, quand vous ouvrez le fichier, le message "CONTENU BLOQUE - Les macros de ce document ont été désactivées par l'administrateur de votre entreprise pour des raisons de sécurité" s'affiche, car ce document provient d'Internet ! Si vous ouvrez un document local, vous verrez que ce message ne s'affiche pas. Dans le cas où c'est bloqué, l'utilisateur n'a pas la possibilité d'activer les macros malgré tout.

Bloquer les macros Office par GPO

V. Le paramètre "Paramètre de notification de macro"

Une alternative consiste à activer le paramètre intitulé "Paramètres de notification de macro" pour Excel et "Paramètres de notification de macro VBA" pour les autres applications. Si l'on prend l'exemple d'Excel, il se situe au même endroit que le paramètre précédent.

Configuration utilisateur > Stratégies > Modèles d'administration > Microsoft Excel 2016 > Options Excel > Sécurité > Centre de gestion de la confidentialité

Le paramètre "Paramètres de notification de macro" doit être activé et configuré sur le mode "Désactiver les macros VBA à l'exception des macros signées numériquement". L'option "Exiger la signature des macros par un éditeur approuvé" doit aussi être cochée si l'on se réfère aux recommandations de Microsoft.

Avec ce paramétrage, les macros non signées par un éditeur approuvé sont bloquées systématiquement, que ce soit un fichier provenant du réseau local ou d'Internet. Quand il s'agit d'un fichier local, le message "CONTENU BLOQUE - Les paramètres de document approuvé ont été modifiés. Tout le contenu de ce fichier n'est pas autorisé à s'exécuter. Vérifiez vos paramètres du Centre de gestion de la confidentialité ou contactez votre administrateur informatique" s'affiche, sans qu'il soit possible d'activer les macros. Quand le fichier provient d'Internet, aucun bandeau ne s'affiche, mais les macros sont bloquées.

Sachez que ce n'est pas nécessaire d'appliquer les deux paramètres. Si vous activez les deux, c'est celui intitulé "Paramètres de notification de macro" qui s'appliquera.

VI. Conclusion

La sécurité des macros est importante, car c'est très fréquemment utilisé par des logiciels malveillants, même si l'on a vu récemment par l'intermédiaire de la vulnérabilité Follina, qu'il y avait d'autres alternatives pour les pirates afin d'exécuter du code malveillant via un document Office.

En complément, vous pouvez consulter la documentation de Microsoft sur le sujet "Macros from the internet will be blocked by default in Office".

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5571.Voir tous les posts

2 thoughts on “Comment bloquer les macros dans les documents Office en provenance d’Internet ?

  • Hello,
    Bon article, juste un petit ajout peut-être : indiquer qu’il est aussi possible de piloter cela aussi avec une politique définie dans « Microsoft 365 Apps admin center ».
    Le nom du setting est « Block macros from running in Office files from the Internet ».
    Ce setting fait partie de la baseline de sécurité de MS.

    Il existe au total 26 settings relatifs au macro 🙂

    Répondre

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.