Une nouvelle campagne, baptise Dev Popper, vise les dveloppeurs de logiciels avec de faux entretiens dembauche dans le but de les tromper et de les inciter installer un cheval de Troie Python distance (RAT). Les dveloppeurs sont invits effectuer des tches supposment lies lentretien, telles que le tlchargement et lexcution de code depuis GitHub, dans le but de rendre lensemble du processus lgitime. Cependant, lobjectif des acteurs de la menace est de faire en sorte que leurs cibles tlchargent un logiciel malveillant qui collecte des informations systme et permet un accs distance lhte. Selon les analystes de Securonix, la campagne est probablement orchestre par des cybercriminels nord-corens, bien que les connexions ne soient pas suffisamment solides pour lattribution.
L’ingnierie sociale est une tactique avance utilise par les cybercriminels pour manipuler les individus afin qu’ils divulguent des informations confidentielles ou effectuent des actions qu’ils n’auraient normalement pas faites. L’objectif de l’attaquant est de tromper l’utilisateur pour qu’il se compromette son insu ou compromette son lieu de travail. Contrairement aux mthodes de piratage traditionnelles qui reposent sur l’exploitation, l’ingnierie sociale cible les vulnrabilits humaines en exploitant la manipulation psychologique. Cette mthode joue sur les traits humains fondamentaux tels que la confiance, la peur ou le dsir d’tre simplement utile.
Dans le cas de la campagne d’attaque Dev Popper que Securonix a observe, une autre forme d’ingnierie sociale a t observe ; elle consiste cibler des groupes professionnels spcifiques tels que les dveloppeurs de logiciels. Cette technique, bien qu’elle ne soit pas extrmement rpandue en ce moment, est toujours d’actualit et Securonix rappelle qu’elle a t signale plusieurs reprises dans le pass par des cybercriminels nord-corens.
En rsum, les attaquants organisent de faux entretiens d’embauche pour les dveloppeurs en se faisant passer pour des recruteurs lgitimes. Au cours de ces entretiens frauduleux, les dveloppeurs sont souvent invits effectuer des tches qui impliquent le tlchargement et l’excution de logiciels partir de sources qui semblent lgitimes, telles que GitHub. Le logiciel contenait une charge utile Node JS malveillante qui, une fois excute, compromettait le systme du dveloppeur.
Cette mthode est efficace car elle exploite l’engagement professionnel et la confiance du dveloppeur dans le processus de candidature, o le refus d’excuter les actions de l’intervieweur pourrait compromettre l’opportunit d’emploi. Les attaquants adaptent leur approche pour paratre aussi crdibles que possible, souvent en imitant de vraies entreprises et en reproduisant des processus d’entretien rels. Cette apparence de professionnalisme et de lgitimit donne la cible un faux sentiment de scurit, ce qui facilite le dploiement de logiciels malveillants sans veiller les soupons.
Chane dinfection en plusieurs tapes
Les attaquants prennent contact en se faisant passer pour des employeurs cherchant pourvoir des postes de dveloppeurs de logiciels. Pendant lentretien, les candidats sont invits tlcharger et excuter ce qui est prsent comme une tche de codage standard partir dun dpt GitHub. Le fichier est une archive ZIP contenant un package NPM, qui comprend un fichier README.md ainsi que des rpertoires frontend et backend.
Dans le rpertoire Backend se trouve un seul fichier JavaScript qui, premire vue, semble tre un simple extrait de code utilisant Mongoose, un paquetage Node.js qui permet la modlisation d’objets MongoDB dans un environnement asynchrone.
Cependant, un examen plus approfondi rvle une norme ligne de code hautement obscurci lorsque l’on fait dfiler la page vers la droite. Un exemple de la taille de cette ligne peut tre vu en regardant la barre de dfilement dans la figure ci-dessus.
Le fait de retirer le code JavaScript de imageDetails.js et de le placer dans son propre fichier permet de l’analyser un peu plus facilement. Le code est obscurci en utilisant plusieurs couches d’obscurcissement, y compris base64 et des substitutions de variables.
Une fois que le dveloppeur excute le package NPM, un fichier JavaScript obfusqu (imageDetails.js) cach dans le rpertoire backend est activ, excutant des commandes curl via le processus Node.js pour tlcharger une archive supplmentaire (p.zi) depuis un serveur externe.
Le fichier .npl est techniquement un fichier Python, sans extension, et utilise un point de dpart . pour indiquer au systme d’exploitation qu’il s’agit d’un fichier cach. Selon les paramtres du systme d’exploitation, ce fichier peut tre cach ou non la vue de l’utilisateur.
Le fichier contient une charge utile base64 importante et utilise une combinaison de manipulation et de dcodage de chanes pour excuter le code Python cach l’intrieur. Le codage Base64 et la logique XOR sont utiliss pour le contenu de la chane cache. Celle-ci est ensuite excute en tant que code Python l’aide de exec().
L’archive contient donc la charge utile de l’tape suivante, un script Python obscurci ( npl ) qui fonctionne comme un RAT.
Excution de code Python
Securonix explique que la premire chane de code dcode s’excute et recueille des informations sur le systme et le rseau d’un ordinateur infect, puis envoie ces donnes un serveur distant :
- Type de systme d’exploitation
- le nom d’hte
- Version du systme d’exploitation
- Nom d’utilisateur de l’utilisateur connect
- Un identifiant unique pour l’appareil (uuid) gnr par hachage de l’adresse MAC et du nom d’utilisateur.
La deuxime chane dcode et excute est beaucoup plus longue que la premire et contient beaucoup plus de fonctionnalits. Une fois excut, le script fonctionne de la mme manire qu’un RAT (Remote Access Trojan), permettant l’attaquant d’interagir distance avec la machine de la victime. Aprs avoir analys la partie dcode du script, Securonix a observ les capacits suivantes :
- Cration de rseaux et de sessions : Utilis pour les connexions persistantes : Cette fonction permet d’tablir des connexions TCP persistantes, y compris la structuration et l’envoi de donnes au format JSON.
- Interaction avec le systme de fichiers : Contient des fonctions permettant de parcourir les rpertoires et de filtrer les fichiers sur la base d’extensions spcifiques et de rpertoires exclure. Il peut galement localiser et potentiellement exfiltrer des fichiers qui ne correspondent pas certains critres (tels que la taille et l’extension du fichier).
- Excution de commandes distance : Le script contient plusieurs fonctions qui permettent l’excution de commandes et de scripts de l’interprteur de commandes du systme. Il s’agit notamment de parcourir le systme de fichiers et d’excuter des commandes de l’interprteur de commandes.
- Traitement et transmission des donnes : Fonctionnalit d’encodage des donnes sur une connexion TCP tablie. Elle gre la rception des donnes, le dcodage des diffrents codages de caractres et la gestion des erreurs de transmission et des dpassements de dlai.
- Exfiltration et tlchargement : Pour l’exfiltration, le script Python est capable d’envoyer des fichiers un serveur FTP distant avec la possibilit de filtrer les fichiers en fonction de leur extension. D’autres fonctions permettent d’automatiser ce processus en collectant des donnes partir de divers rpertoires d’utilisateurs tels que Documents et Tlchargements.
- Enregistrement du presse-papiers et des frappes au clavier : Le script comprend des fonctionnalits permettant de surveiller et d’exfiltrer le contenu du presse-papiers et les frappes au clavier.
Les recommandations de Securonix
Lorsqu’il s’agit d’attaques par ingnierie sociale, il est essentiel de maintenir un tat d’esprit ax sur la scurit, en particulier dans des situations intenses et stressantes telles que les entretiens d’embauche. Les attaquants l’origine des campagnes DEV#POPPER en abusent, sachant que la personne l’autre bout du fil est trs distraite et beaucoup plus vulnrable. En matire de prvention et de dtection, l’quipe de recherche sur les menaces de Securonix recommande ce qui suit :
- Sensibiliser les gens au fait qu’ils sont la cible d’attaques d’ingnierie sociale, tout comme la technologie est exploite. Il est essentiel de rester trs vigilant et d’assurer une scurit continue, mme dans les situations de stress intense, pour prvenir le problme.
- En cas d’excution de code, il convient de surveiller les rpertoires de stockage des logiciels malveillants, en particulier les activits lies aux scripts dans les rpertoires inscriptibles dans le monde entier. Dans le cas de cette campagne, les acteurs de la menace se sont installs dans des sous-rpertoires trouvs dans le rpertoire %APPDATA% de l’utilisateur.
- Surveiller l’utilisation de langages de script autres que les langages par dfaut, tels que Python, sur des terminaux et des serveurs qui ne devraient normalement pas les excuter. Pour ce faire, il convient d’exploiter des journaux supplmentaires au niveau du processus, tels que Sysmon et PowerShell, afin d’largir la couverture de dtection des journaux.
Conclusion
Bien que les auteurs de l’attaque Dev Popper ne soient pas connus, la tactique consistant utiliser des appts pour infecter des personnes avec des logiciels malveillants est toujours rpandue, et il convient donc de rester vigilant face aux risques.
Les chercheurs notent que la mthode exploite l’engagement professionnel et la confiance du dveloppeur dans le processus de demande d’emploi, o le refus d’excuter les actions de l’intervieweur pourrait compromettre l’opportunit d’emploi , ce qui la rend trs efficace. Les pirates nord-corens ont utilis la tactique de la fausse offre d’emploi dans de nombreuses oprations au fil des ans pour compromettre leurs cibles sur diverses plateformes.
Source : Securonix
Et vous ?
Quelle est votre opinion sur lutilisation doffres demploi comme appt pour propager des logiciels malveillants ? Pensez-vous que cette tactique est efficace et pourquoi ?
Comment les dveloppeurs peuvent-ils se protger contre de telles attaques ? Avez-vous des conseils spcifiques pour vrifier lauthenticit des offres demploi et des entretiens ?
Quelles mesures pensez-vous que les entreprises devraient prendre pour renforcer la scurit des candidats lors du processus de recrutement ?
Quelles autres mthodes dingnierie sociale avez-vous rencontres dans le domaine de la cyberscurit ? Partagez vos expriences ou vos connaissances.
Pensez-vous que lattribution des attaques des acteurs de la menace spcifiques est importante ? Pourquoi ou pourquoi pas ?