Nick Harbour, dans un article publié sur M-unition, s’intéresse aux différentes méthodes permettant de lancer un exécutable sans toucher ni à la base de registre, ni au répertoire de démarrage, ni aux autres méthodes conventionnelles connues à ce jour.
Le principe de son « lanceur de malware » est assez subtil : il repose sur l’ordre de recherche et d’exécution des dll appelées par un programme. Car si bon nombre de dll sont confinées dans le répertoire System32 ou dans des emplacements précis répertoriés par la table des dll « connues » (HKLM\System\CurrentControlSet\Control\Session Manager\KnownDLLs), rien n’interdit d’installer une « fausse dll » homonyme dans le répertoire où se situe l’exécutable appelant. Et c’est cette fausse dll qui sera prise en compte, prioritairement à celle située a priori dans ce fameux répertoire system32… avec des conséquences qui font froid dans le dos. Et des emplacements privilégiés et prioritaires, il n’y en a pas qu’un. Sur un noyau 32 bits nouvellement installé, il en existe plus de 1300… et le nombre augmente avec les systèmes 64 bits.
Pour achever de convaincre son auditoire, l’auteur offre un court programme chargé de lister tous les emplacements exploitables dans lesquels l’on peut cacher une dll empoisonnée.
merci pour l’info.