Les pirates informatiques utilisent une nouvelle technique qui abuse des attributs étendus des fichiers macOS pour fournir un nouveau cheval de Troie que les chercheurs appellent RustyAttr.

L’auteur de la menace cache du code malveillant dans des métadonnées de fichier personnalisées et utilise également des documents PDF leurres pour échapper à la détection.

La nouvelle technique est similaire à la façon dont le logiciel publicitaire Bundlore en 2020 cachait ses charges utiles dans des fourches de ressources pour masquer les charges utiles pour macOS. Il a été découvert dans quelques échantillons de logiciels malveillants dans la nature par des chercheurs de la société de cybersécurité Group-IB.

Sur la base de leur analyse et parce qu’ils n’ont pu confirmer aucune victime, les chercheurs attribuent les échantillons à l’acteur menaçant nord-coréen Lazarus avec une confiance modérée. Ils pensent que l’attaquant expérimente peut-être une nouvelle solution de distribution de logiciels malveillants.

La méthode est rare et s’est avérée efficace contre la détection, car aucun des agents de sécurité de la plate-forme Virus Total n’a signalé les fichiers malveillants.

Dissimulation de code dans les attributs de fichier
Les attributs étendus macOS (EA) représentent des métadonnées cachées généralement associées aux fichiers et répertoires, qui ne sont pas directement visibles avec le Finder ou le terminal, mais peuvent être extraites à l’aide de la commande ‘xattr’ pour afficher, modifier ou supprimer des attributs étendus.

Dans le cas des attaques RustyAttr, le nom EA est « test » et contient un script shell.

Script shell dans l’attribut étendu de mac OS

Les applications malveillantes stockant l’EA sont construites à l’aide du framework Tauri, qui combine une interface Web (HTML, JavaScript) qui peut appeler des fonctions sur un backend Rust.

Lorsque l’application s’exécute, elle charge une page Web contenant un JavaScript (‘preload.js’) qui récupère le contenu de l’emplacement indiqué dans l’EA “test” et l’envoie à la fonction ‘run_command’ pour que le script shell soit exécuté.

Contenu de la précharge.js

Pour minimiser les soupçons des utilisateurs pendant ce processus, certains exemples lancent des fichiers PDF leurres ou affichent des boîtes de dialogue d’erreur.

Decoy PDF cache une activité malveillante en arrière-plan

Le PDF est récupéré à partir d’une instance pCloud pour le partage de fichiers publics qui contient également des entrées avec des noms liés à des sujets d’investissement en crypto-monnaie, ce qui correspond aux objectifs et objectifs de Lazarus.

Les quelques échantillons de RustyAttr apps Group-IB ont trouvé tous les tests de détection réussis sur Virus Total et les applications ont été signées à l’aide d’un certificat divulgué, qu’Apple a depuis révoqué, mais n’ont pas été notariées.

Détails du certificat d’application

Group-IB n’a pas été en mesure de récupérer et d’analyser le malware de la prochaine étape, mais a découvert que le serveur intermédiaire se connecte à un point de terminaison connu dans l’infrastructure Lazarus pour tenter de le récupérer.

Flux d’exécution

Expérimenter avec macOS evasion
Le cas rapporté par Group-IB est très similaire à un autre rapport récent de SentinelLabs, qui a observé l’acteur de la menace nord-coréen BlueNoroff expérimenter des techniques similaires mais distinctes d’évasion dans macOS.

BlueNoroff a utilisé le phishing sur le thème de la crypto-monnaie pour inciter les cibles à télécharger une application malveillante signée et notariée.

Les applications utilisaient une information modifiée.fichier plist ‘ pour déclencher furtivement une connexion malveillante au domaine contrôlé par l’attaquant à partir duquel la charge utile de deuxième étape est récupérée.

On ignore si les campagnes sont liées, mais il est courant que des clusters d’activités distincts utilisent les mêmes informations sur la manière de violer efficacement les systèmes macOS sans déclencher d’alarmes.

Laisser un commentaire

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