Windows

Détection de piratage de DLL Attacks, prévention et détection

My first virtual Kernel / OS - Microsf01 Cpcdos 4.5

My first virtual Kernel / OS - Microsf01 Cpcdos 4.5

Table des matières:

Anonim

DLL est l`abréviation de Dynamic Link Libraries et fait partie des applications externes exécutées sous Windows ou sur tout autre système d`exploitation. La plupart des applications ne sont pas complètes en elles-mêmes et stockent le code dans différents fichiers. Si le code est nécessaire, le fichier associé est chargé en mémoire et utilisé. Cela réduit la taille du fichier d`application tout en optimisant l`utilisation de la RAM. Cet article explique ce qu`est DLL Hijacking et comment le détecter et l`empêcher.

Qu`est-ce que DLL Files ou Dynamic Link Libraries

Les fichiers DLL sont des Dynamic Link Libraries et comme son nom l`indique, sont des extensions de différentes applications. Toute application que nous utilisons peut ou ne peut pas utiliser certains codes. Ces codes sont stockés dans des fichiers différents et sont appelés ou chargés dans la RAM uniquement lorsque le code associé est requis. Ainsi, il évite qu`un fichier d`application ne devienne trop volumineux et empêche l`application de déranger les ressources

Le chemin d`accès aux fichiers DLL est défini par le système d`exploitation Windows. Le chemin est défini à l`aide de variables environnementales globales. Par défaut, si une application demande un fichier DLL, le système d`exploitation recherche dans le même dossier dans lequel l`application est stockée. S`il n`y est pas trouvé, il va vers d`autres dossiers tels que définis par les variables globales. Des priorités sont associées aux chemins et cela aide Windows à déterminer les dossiers à rechercher pour les DLL. c`est là que le détournement de DLL entre en jeu.

Qu`est-ce que DLL Hijacking

Puisque les DLL sont des extensions et nécessaires pour utiliser presque toutes les applications sur vos machines, elles sont présentes sur l`ordinateur dans différents dossiers. Si le fichier DLL d`origine est remplacé par un faux fichier DLL contenant du code malveillant, il s`agit de DLL Hijacking.

Comme indiqué plus haut, le système d`exploitation recherche les fichiers DLL. Tout d`abord, il regarde dans le même dossier que le dossier de l`application, puis va chercher, en fonction des priorités définies par les variables d`environnement du système d`exploitation. Ainsi, si un fichier good.dll se trouve dans le dossier SysWOW64 et que quelqu`un place un fichier bad.dll dans un dossier ayant une priorité plus élevée par rapport au dossier SysWOW64, le système d`exploitation utilisera le fichier bad.dll, car il a le même nom que la DLL demandé par l`application. Une fois en RAM, il peut exécuter le code malveillant contenu dans le fichier et peut compromettre votre ordinateur ou vos réseaux

Comment détecter DLL Hijacking

La méthode la plus simple pour détecter et empêcher le détournement de DLL est d`utiliser des outils tiers. Il y a quelques bons outils gratuits disponibles sur le marché qui aident à détecter une tentative de piratage DLL et à l`empêcher.

Un tel programme est DLL Hijack Auditor mais il ne supporte que les applications 32 bits. Vous pouvez l`installer sur votre ordinateur et analyser toutes vos applications Windows pour voir ce que toutes les applications sont vulnérables au piratage de DLL. l`interface est simple et auto-explicative. Le seul inconvénient de cette application est que vous ne pouvez pas analyser les applications 64 bits.

Un autre programme, pour détecter le détournement de DLL, DLL_HIJACK_DETECT, est disponible via GitHub. Ce programme vérifie les applications pour voir si certaines d`entre elles sont vulnérables au détournement de DLL. Si c`est le cas, le programme informe l`utilisateur. l`application a deux versions - x86 et x64 de sorte que vous pouvez utiliser chacun pour analyser les applications 32 bits et 64 bits respectivement.

Il convient de noter que les programmes ci-dessus analysent simplement les applications sur la plate-forme Windows pour les vulnérabilités et ne empêcher le piratage des fichiers DLL

Comment empêcher le détournement de DLL

Le problème devrait être abordé par les programmeurs en premier lieu car il n`y a pas grand-chose que vous pouvez faire, sauf pour renforcer vos systèmes de sécurité. Si, au lieu d`un chemin relatif, les programmeurs commencent à utiliser le chemin absolu, la vulnérabilité sera réduite. En lisant le chemin absolu, Windows ou tout autre système d`exploitation ne dépendra pas des variables système pour le chemin et ira directement à la DLL prévue, ce qui écarte les chances de charger le même nom DLL dans un chemin de priorité plus élevée. Cette méthode n`est pas non plus infaillible car si le système est compromis et que les cybercriminels connaissent le chemin exact de la DLL, ils remplaceront la DLL d`origine par la fausse DLL. Cela écraserait le fichier afin que la DLL d`origine soit modifiée en code malveillant. Mais encore une fois, le cybercriminel aura besoin de connaître le chemin absolu exact mentionné dans l`application qui appelle la DLL. Le processus est difficile pour les cybercriminels et peut donc compter sur eux.

Pour en revenir à ce que vous pouvez faire, essayez d`augmenter vos systèmes de sécurité pour mieux sécuriser votre système Windows. Utilisez un bon pare-feu. Si possible, utilisez un pare-feu matériel ou activez le pare-feu du routeur. Utilisez de bons systèmes de détection d`intrusion pour savoir si quelqu`un essaie de jouer avec votre ordinateur.

Si vous souhaitez dépanner des ordinateurs, vous pouvez également améliorer la sécurité de votre ordinateur:

  1. Désactiver le chargement de DLL à partir de partages réseau distants
  2. Désactiver le chargement des fichiers DLL à partir de WebDAV
  3. Désactiver complètement le service WebClient ou le paramétrer sur manuel
  4. Bloquer les ports TCP 445 et 139 tels qu`ils sont utilisés pour compromettre les ordinateurs
  5. Installer les dernières mises à jour logiciel système et de sécurité.

Microsoft a publié un outil pour bloquer les attaques de détournement de chargement DLL. Cet outil réduit le risque de détournement de DLL en empêchant les applications de charger de manière non sécurisée du code à partir de fichiers DLL.

Si vous souhaitez ajouter quelque chose à l`article, veuillez commenter ci-dessous.