17 points par GN⁺ 2023-09-14 | 5 commentaires | Partager sur WhatsApp
  • En cherchant la cause d’une forte hausse des crashs de l’Explorateur, on a trouvé dans la pile un pointeur de fonction ressemblant à quelque chose de similaire à un malware
  • En creusant, il s’est avéré que ce n’était pas un malware mais un programme de désinstallation
  • Une fois terminé, le programme de désinstallation attend de pouvoir supprimer son propre binaire (self-deleting)
    • Ce code utilisait une méthode présentée sur CodeProject il y a 10 ans
  • Il fallait probablement appeler une fonction d’une certaine DLL, mais cela s’est produit parce qu’elle avait été détournée (Detour)
  • Pour se supprimer soi-même, au lieu d’injecter du code ou de faire un détournement dans un autre processus (l’Explorateur), mieux vaut utiliser un fichier temporaire comme cleanup.js, comme ci-dessous
    • Ce code se supprime lui-même et tente aussi de supprimer le programme de désinstallation pendant 20 secondes
var fso = new ActiveXObject("Scripting.FileSystemObject");  
fso.DeleteFile("C:\\Users\\Name\\AppData\\Local\\Temp\\cleanup.js");  
  
var path = "C:\\Program Files\\Contoso\\contoso_update.exe";  
for (var count = 0; fso.FileExists(path) && count < 40; count++) {  
    try { fso.DeleteFile(path); break; } catch (e) { }  
    WSH.Sleep(500);  
}  

5 commentaires

 
[Ce commentaire a été masqué.]
 
kuroneko 2023-09-14

Je me souviens de l’époque où j’utilisais des programmes pour nettoyer les résidus…
Cela dit, comme Windows améliore peu à peu ses outils de gestion de paquets de nos jours, j’en attends beaucoup. +_+

 
botplaysdice 2023-09-14

J’ai l’impression qu’on a beaucoup utilisé le mot « hautement ». Une science suffisamment avancée est indiscernable de la magie.

 
xguru 2023-09-14

Le titre de l’article vient d’une célèbre citation de l’écrivain de science-fiction Arthur C. Clarke.

"Any sufficiently advanced technology is indistinguishable from magic."
"Toute technologie suffisamment avancée est indiscernable de la magie."

 
GN⁺ 2023-09-14
Commentaire Hacker News
  • Discussion sur les similitudes entre les désinstalleurs avancés et les malwares, avec un focus sur les exécutables auto-supprimants
  • Lien fourni vers un projet de code incluant le code d’un exécutable auto-supprimant
  • L’auteur suggère que le binaire ressemble à un malware parce qu’il se supprime lui-même, se met en veille et interagit avec le désinstalleur
  • Débat autour de la solution proposée, certains se demandant si elle est meilleure que l’originale et si elle juge la malveillance à partir de mauvaises heuristiques
  • Certains commentaires s’interrogent sur la raison pour laquelle les programmes Windows ont besoin d’un installateur/désinstalleur spécial, et pourquoi cela n’est pas géré directement par Windows
  • Mention de l’usage de wscripts, qui peut être catalogué comme malware en raison de l’absence de signature de code ou de la difficulté à vérifier son comportement avant exécution
  • Évocation du concept de « detours », comparé à la commande LD_PRELOAD sous Linux
  • Souvenir d’une application simple pour Windows 95/98 qui ajoutait tous les répertoires à la liste des désinstalleurs sans être repérée par les antivirus
  • Certains commentateurs disent préférer l’approche d’AmigaOS, où les applications sont des dossiers autonomes faciles à installer ou à supprimer
  • L’article se termine sur le fait surprenant que Windows prend en charge l’exécution de JavaScript comme script shell