présentation
Un développeur a découvert un malware caché dans son fichier de configuration TailwindCSS. Le malware était dissimulé dans le fichier tailwind.config.js et était difficile à détecter en raison de sa nature obfusquée.
contexte technique
Le fichier tailwind.config.js est utilisé pour configurer les paramètres de TailwindCSS, un framework de CSS populaire. Le malware a été inséré dans ce fichier sous forme de code obfusqué, ce qui signifie qu'il a été intentionnellement rendu difficile à lire et à comprendre.
Le code obfusqué a été placé après des centaines d'espaces vides, ce qui rendait difficile sa détection. Le développeur a découvert le malware en copiant son ancien fichier de configuration dans un nouveau projet et en remarquant que la copie prenait plus de temps que prévu.
fichier de configuration
Le fichier tailwind.config.js contenait le code suivant :
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ['./src/**/*.{html,js,jsx}'],
theme: {
extend: {
colors: {
'cream': '#f7f4db',
'primary': '#c90101',
},
},
},
plugins: [],
darkMode: 'class',
};
// Code obfusqué
var _V='A7-2066';
var r=require;
var m=module;
// ...analyse scientifique
Le malware a été conçu pour être difficile à détecter et à analyser. Le code obfusqué utilise des techniques telles que la substitution de variables et la réorganisation de l'ordre des opérations pour rendre le code illisible.
Cependant, en analysant le code, on peut voir que le malware utilise la fonction require pour importer des modules Node.js et que la variable _V est utilisée pour stocker une chaîne de caractères.
Il est important de noter que le malware peut avoir des implications de sécurité importantes, notamment si le fichier de configuration est partagé entre plusieurs projets ou si le malware est capable de se propager à d'autres parties du système.