Des chercheurs de Cado Security ont découvert un malware nommé Denonia qui s’attaque aux solutions serverless Lambda d’AWS. Le malware est écrit en Go et utilise le DoH pour communiquer. Serverless gère l’allocation automatique et exécute des fonctions des ressources d’une application. Dans leur rapport, les chercheurs avancent que le pirate n’utilise qu’un logiciel de minage de cryptomonnaie inoffensif. Mais cela démontre l’usage de connaissances avancées spécifiques du cloud, dévoilant un aperçu des futures attaques.
Un malware en Go
Denonia est un malware écrit en Go sous ELF 64 bits avec Linux. Même si les experts ne disposent pas d’information sur le transfert du malware, les pirates ont accès à des clés secrètes et des identifiants d’accès AWS. Le langage Go du malware n’est pas une nouveauté et s’est même multiplié. En effet, les pirates s’en servent pour rendre leurs malwares autonomes et volumineux. Par contre, les fichiers binaires sont volumineux, car ne sont pas directement liés à des librairies existantes, mais contiennent toutes les bibliothèques, dont le programme a besoin.
Avec ce langage Go, l’attaquant peut déployer son code sur les solutions serverless qui acceptent plusieurs langages. Dans le cas d’AWS Lambda, elle reconnaît Ruby, Python, Node.js, PowerShell, Go et Java. Ces codes sont activés à la demande, sans tenir compte de la gestion d’infrastructure informatique (système d’exploitation ou serveur). Contrairement au cloud traditionnel où l’utilisateur demande la location de machines virtuelles.
Les experts de Cado Security avancent que Denonia a été développé pour Lambda avec ses bibliothèques Go tierces open-source aws-lambda-go et aws-sdk-go. De même, pour l’exécuter, le malware vérifie les variables aws_lambda_runtime et aws_server_port. Les experts ajoutent que le malware s’exécute même dans un environnement extérieur à Lambda (boîte Amazon Linux classique). Cela est dû au fait que le lambada serverless fonctionne sous Linux et donc, supposé être exécuté sous Lambda, alors que c’est dans le sandbox.
Un malware invisible avec DoH
Denonia passe inaperçu dans les requêtes DNS contrôlées par le pirate et celles-ci restent invisibles grâce à DoH ou DNS-over-HTTPS. Ce dernier crypte le contenu des requêtes et n’apparait que dans dns-google.com ou cloudflare-dns.com. De son côté, l’attaquant peut contourner facilement les paramètres de Lambda.
Denonia couvre un programme de minage de cryptomonnaie open source, XMRig. Ce n’est pas la première attaque des clients de Lambda, seulement les pirates utilisaient des scripts plus simples. Les experts de Cado Security ont, en effet, découvert un malware sur VirusTotal.
Les solutions serverless comme Lambda sont pratiques pour les petites entreprises qui n’ont pas de responsable pour sécuriser et gérer les VM du cloud. Ce sont les fournisseurs du cloud qui assurent la gestion des serveurs. Malgré tout cela, ces entreprises doivent assurer la protection des clés d’accès et des informations d’identification. C’est le cas notamment du cadre de modèle de responsabilité partagé AWS Shared Responsibility. En effet, il est difficile de repérer un compromis potentiel ou une investigation avec la nature éphémère et dynamique des fonctions Lambda, le volume de traitement et les courtes durées d’exécution.