Akamai rachète Fermyon pour associer la fonction en tant que service (FaaS) WebAssembly à la plateforme d'Akamai distribuée dans le monde entier. Lire l'actualité

Une nouvelle souche de logiciel malveillant passe à l'offensive

Yonatan Gilvarg

Nov 18, 2025

Yonatan Gilvarg

Yonatan Gilvarg

écrit par

Yonatan Gilvarg

Yonatan Gilvarg est chercheur en sécurité senior au sein de l'équipe Akamai Hunt. Ses domaines d'expertise comprennent la détection et la recherche des menaces, la détection des anomalies du Big Data et la réponse aux incidents.

Partager

Synthèse

  • Akamai Hunt a identifié une nouvelle souche de logiciel malveillant qui tente de se dissimuler derrière un point de terminaison d'API de LLM (grand modèle de langage) légitime. 

  • Le logiciel malveillant envoie une chaîne qui semble être encodée en Base64 afin d'établir une connexion de commande et contrôle (C2), au lieu d'utiliser un schéma classique.

  • Cette méthode pourrait permettre aux attaquants d'obtenir un contrôle total sur le système et d'exfiltrer des données. 

  • Cet exemple illustre une fois de plus la rapidité avec laquelle les attaquants renouvellent leurs techniques, ce qui accentue la nécessité pour les entreprises de se préparer aux menaces d'aujourd'hui.

Introduction

L'écosystème des menaces progresse au rythme effréné des tendances, et les attaquants ne tardent pas à suivre. Le schéma de communication des grands modèles de langage (LLM), dont l'adoption se généralise au sein des entreprises, peut permettre aux attaquants de dissimuler leur trafic malveillant.

Tout comme les équipes de protection s'empressent d'intégrer l'IA dans les pipelines de détection, notamment en utilisant des LLM pour enquêter sur les alertes, les synthétiser et mettre les indicateurs en corrélation, les développeurs de logiciels malveillants expérimentent avec l'IA. Nous en avons déjà observé les premiers signes avec des logiciels malveillants comme LameHug et PromptLock, qui illustrent comment les LLM conçus pour la génération de texte peuvent être détournés à des fins malveillantes.

Les cybercriminels innovent, par exemple en exploitant l'API d'OpenAI comme infrastructure de commande et de contrôle (C2) via la porte dérobée SesameOp, révélant ainsi une toute nouvelle surface d'attaque dans le monde de l'IA.

Récemment, l'équipe Akamai Hunt a découvert un nouveau logiciel malveillant, dont l'approche consiste à se fondre dans le trafic d'API de LLM pour passer inaperçu. Dans cet article de blog, l'équipe Hunt partage un exemple de la menace émergente qu'elle a identifiée dans le cadre de ses services aux clients.

Qu'est-ce qu'Akamai Hunt ?

Akamai Hunt est une solution de recherche des menaces basée sur Akamai Guardicore Segmentation et enrichie par des informations sur l'hôte, l'identité et les menaces afin d'exposer les risques cachés, d'améliorer la stratégie et d'accélérer le confinement. Nous veillons à ce que les clients Hunt restent protégés contre les menaces les plus sournoises.

Akamai Hunt est disponible en tant que module complémentaire pour les clients Guardicore nouveaux ou existants. Afin de vous assurer que vous êtes protégé contre ces menaces et d'autres risques similaires, renseignez-vous auprès du représentant de votre compte au sujet de Hunt.

Abus du point de terminaison

En explorant de nouveaux scénarios d'abus des LLM dans les logiciels malveillants, un fichier a retenu notre attention. Déjà signalé comme malveillant sur VirusTotal et associé à plusieurs règles Yara, il semblait prometteur. Lorsque nous avons commencé notre enquête, nous nous attendions à retrouver un schéma classique : génération de code via LLM et exécution sur la machine victime.

Mais son comportement s'est avéré différent. Le logiciel malveillant tente d'abord de se connecter à l'adresse IP 39.97.57[.]244 via un socket, mais en cas d'échec, il bascule vers un C2 HTTP surprenant : 1347790942-k1bok35vg3.ap-guangzhou.tencentscf[.]com/v1/chat/completions.

Après avoir observé la première requête HTTP vers l'API, nous avons été surpris de constater qu'elle ne respectait pas les en-têtes requis pour ce type de requête.

Les points de terminaison d'API

Dans le cadre de nos recherches, nous avons examiné les points de terminaison d'API des LLM, notamment /v1/chat/completions.

D'après la documentation d'OpenAI, ce point de terminaison « crée une réponse de modèle pour la conversation donnée » (Figure 1 et Figure 2).

curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "gpt-5",
    "messages": [
      {
        "role": "developer",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "Hello!"
      }
    ]
  }'
Fig. 1: Example POST request to api.openai.com/v1/chat/completions
{
  "id": "chatcmpl-B9MBs8CjcvOU2jLn4n570S5qMJKcT",
  "object": "chat.completion",
  "created": 1741569952,
  "model": "gpt-4.1-2025-04-14",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! How can I assist you today?",
        "refusal": null,
        "annotations": []
      },
...
Fig. 2: Example response

Le point de terminaison /v1/chat/completions a été introduit par OpenAI et rapidement reproduit par plusieurs fournisseurs et passerelles qui offrent des API compatibles avec OpenAI (par exemple, OpenRouter et Hugging Face).

Cependant, les API officielles d'autres fournisseurs peuvent utiliser des points de terminaison natifs différents ou présenter des variations au niveau des paramètres, de l'authentification et du comportement en streaming, malgré un schéma de requête similaire.

Schéma de requête

En général, lorsque vous utilisez cette API, les paramètres suivants sont requis :

  • Autorisation : un en-tête avec jeton Bearer « Autorization: Bearer YOUR_API_KEY » est requis pour authentifier la requête

  • Modèle : un identifiant de chaîne sélectionnant un modèle compatible avec le chat (par exemple, gpt-3.5-turbo ou Llama-4-Maverick-17B-128E-Instruct-FP8) vers lequel le point de terminaison acheminera votre requête

  • Messages : un tableau d'objets de message avec rôle et contenu, représentant l'historique de conversation que le modèle utilisera pour générer la prochaine réponse

Comme mentionné plus tôt, nous avons déjà observé un exemple concret d'utilisation malveillante de ce point de terminaison : LameHug. Les développeurs de logiciels malveillants ont utilisé le même point de terminaison pour accéder à un modèle LLM sur Hugging Face, en lui demandant des commandes spécifiques et en générant dynamiquement du code à exécuter sur la machine victime (Figure 3).

Dissimulation dans les complétions de chat

La première chose que nous avons remarquée en analysant ce binaire est qu'il n'utilise aucun des champs mentionnés. À la place, il envoie une chaîne qui semble être encodée en Base64 (Figure 4).

En théorie, il peut y avoir un LLM derrière cette API : l'attaquant pourrait créer un prompt côté serveur avec du code personnalisé. Cependant, dans ce cas, ce point de terminaison d'API est également utilisé à des fins de camouflage.

En analysant les données de notre produit API Security, nous avons identifié 151 points de terminaison distincts utilisés par nos clients. Chaque conversation issue de ces points de terminaison présentait des similitudes avec le schéma attendu. Certaines API utilisent « query » au lieu de « messages », par exemple, mais toutes les sessions présentent une ressemblance très claire.

Cela nous indique que, même si chacun peut développer son propre point de terminaison /v1/chat/completions et qu'aucune RFC (Request for Comments, ou demande de commentaires) ne définit ce point de terminaison, il existe malgré tout un standard de facto adopté par les développeurs.

Recherches supplémentaires

Après avoir décodé le corps et appliqué un XOR avec 0xBB, nous avons trouvé ce qui semble être la première requête de reconnaissance effectuée sur la machine victime.

Nous avons suivi le processus d'analyse syntaxique de la réponse et constaté que le logiciel malveillant attendait une réponse qui ne correspond pas au schéma original de l'API. Il traite les données reçues en les déchiffrant via XOR et Base64, puis exécute les instructions fournies dans la réponse (Figure 5).

Le serveur C2, 1347790942-k1bok35vg3.ap-guangzhou.tencentscf[.]com, est une fonction cloud sans serveur (similaire à AWS Lambda ou Azure Functions) hébergée sur Tencent Cloud, un service de Cloud Computing géré par Tencent. L'utilisation de fonctions cloud comme serveurs C2 permet aux attaquants de déployer une infrastructure autoscalable, résiliente et difficile à distinguer du trafic légitime.

Nous pensons que les attaquants ont choisi d'exposer ce point de terminaison spécifique pour paraître plus légitimes aux yeux des équipes de protection et des administrateurs réseau, car l'usage de ce point de terminaison d'API devient de plus en plus courant avec l'essor des agents d'IA, des intégrations et des outils d'automatisation.

Le logiciel malveillant prend en charge plusieurs instructions, ce qui le classe comme un cheval de Troie d'accès à distance (RAT) offrant un contrôle complet sur la machine victime. Nous les avons analysées pour vérifier qu'elles communiquent toutes avec le même point de terminaison (voir l'annexe pour plus de détails).

Par exemple, la Figure 6 montre la sortie de l'instruction $HunterInfo. Elle recherche les fichiers de configuration d'outils d'accès à distance spécifiques et exfiltre les données vers /v1/chat/completions de la même manière que le premier message, avec XOR et Base64.

Le logiciel malveillant contient également trois fichiers intégrés, XORés avec 0x88 et encodés en Base64.

Tous sont des fichiers .NET nommés net_test.exe. Ensemble, ils orchestrent un petit kit d'outils proxy utilisant les protocoles SOCKS5 ou HTTP dans le réseau de la machine victime. Deux des fichiers sont des serveurs SOCKS5 et HTTP, tandis que le troisième est un client qui peut recevoir et transférer du trafic (Figure 7).

Fichiers supplémentaires

Nous avons identifié d'anciennes variantes de ce logiciel malveillant (hash disponible dans la section IOC de cet article). Elles comportaient des instructions similaires et les mêmes chemins codés en dur pour plusieurs outils d'accès à distance ($HunterInfo), mais le serveur C2 était différent.

Nous avons également trouvé un fichier RAR sur VirusTotal, qui est lié au serveur C2. Le RAR inclut un fichier .lnk (个人简历.lnk, traduit par « CV »), exécutant ftp -s””:_/_/_/_/_/_/_/_/_. Le RAR contient aussi des fichiers .doc dans des répertoires imbriqués, bien que leur contenu soit du code binaire (Figure 8).

Le fichier « _ » construit les fichiers .doc en trois fichiers PE et les copie dans C:\Users\Public\Update.

Enfin, il exécute :
!call start /min C:\Users\Public\Update\svchost.exe -InstallLsp 

C:\Users\Public\Update\360.%TIME:~4,1% >nul (Figure 9).

Il y a 10 fichiers .doc différents (0–9.doc), similaires à quelques octets près. %TIME:~4,1% calcule le deuxième chiffre de la minute actuelle dans le format %H:%M:%S.%f. Les fichiers .doc n'ont pas d'en-tête MZ, probablement pour éviter les analyses par signature. En fonction de l'heure, le script construit l'en-tête du fichier .doc et le copie dans C:\Users\Public\Update\360.<minute>.

svchost.exe

Ce fichier est en réalité « SangforPromote.exe », un fichier signé et vérifié de Sangfor Technologies. Lorsque l'argument -InstallLsp et une DLL sont utilisés, le fichier légitime charge la DLL et définit le pointeur vers son export via LoadLibrary (Figure 10).

360 DLL

La DLL, nommée 360, alloue de la mémoire avec des autorisations de lecture, d'écriture et d'exécution (RWX), y insère « sc », puis l'exécute.

sc

En analysant sc, le code chargé résout des fonctions via LoadLibrary et GetProcAddress. Il comporte deux destinations codées en dur pour envoyer des requêtes HTTP, qui correspondent aux adresses C2 du logiciel malveillant analysé :

  1. https://1347790942-k1bok35vg3.ap-guangzhou.tencentscf[.]com

  2. 39.97.57[.]244

Il décode également les données avec Base64 et XOR comme les échantillons précédents, ce qui établit un lien entre les outils. Nous pensons que ce flux télécharge le RAT final dans le système de fichiers de la machine victime (Figure 11).

  • Connaître vos LLM : à mesure que les LLM deviennent incontournables dans les organisations, les attaquants s'adaptent pour les exploiter de diverses manières, certaines encore inconnues. Il est essentiel de savoir quels points de terminaison doivent être utilisés et de mettre en place une stratégie de gestion de l'« IA fantôme ». 

  • Surveiller et inspecter le trafic réseau vers les points de terminaison LLM : signalez les requêtes sortantes inhabituelles ou non autorisées vers /v1/chat/completions ou d'autres points de terminaison d'API d'IA suspects, surtout si elles ciblent des domaines non standard. Inspectez les schémas de requête d'API pour détecter les écarts par rapport aux formats typiques (modèle, messages ou en-têtes Authorization manquants ou incorrects).

  • Surveiller les fichiers : surveillez la création de fichiers dans des chemins suspects, tels que C:\Users\Public, souvent utilisés par les attaquants pour déposer des fichiers.

Protection et atténuation avec Akamai Hunt

Les clients Akamai Hunt bénéficient d'une surveillance continue 24 h/24, 7 j/7 pour détecter ces artefacts, assurant leur protection contre ce type d'attaque (Figure 12).

Avant même la détection d'une menace active, la fonctionnalité Adaptive Segmentation de Hunt aide les entreprises à réduire leur exposition et contenir les risques. En analysant les flux de communication normaux et les comportements des actifs, Adaptive Segmentation peut orienter des règles qui limitent les accès sortants inutiles aux points de terminaison d'IA, isolent les environnements de développement et de production, et minimisent les risques de mouvement latéral.

Cette fonctionnalité étend la protection de Hunt au-delà de la détection en transformant la visibilité continue en résilience proactive contre les menaces émergentes liées aux LLM.

Conclusion

La décision stratégique des attaquants d'acheminer l'exfiltration et le C2 via le point de terminaison /v1/chat/completions exploite à la fois l'ubiquité et l'évolution rapide des services LLM. Cette approche offre un retour sur investissement potentiel élevé, car elle s'appuie sur l'infrastructure cloud existante pour créer des canaux de communication qui se fondent dans le trafic normal de l'entreprise. 

Le danger réside dans la convergence de trois tendances majeures des environnements actuels, qui ensemble offrent aux adversaires des chemins C2 stables et furtifs, semblant bénins à première vue :

  1. L'utilisation généralisée, souvent non inspectée, du HTTPS sortant vers des API cloud

  2. La tolérance croissante au trafic généré par des machines (agents d'IA, applications, intégrations)

  3. La disponibilité facile d'hébergements cloud offrant des points de terminaison fiables et durables que les attaquants peuvent exploiter 

La réalité est que les équipes de protection apprennent encore à comprendre le fonctionnement des LLM et les menaces qu'ils impliquent. Si le trafic paraît suffisamment légitime, il risque de passer sans protection adéquate. Parfois, se cacher à la vue de tous est le moyen le plus simple de s'infiltrer. 

En dissimulant des charges utiles malveillantes dans le trafic destiné à des services LLM légitimes, les attaquants profitent d'un schéma réseau de plus en plus courant, réduisant ainsi les chances que leurs communications soient signalées ou examinées. À mesure que les entreprises adoptent les outils d'IA et l'automatisation, le trafic vers les points de terminaison LLM devient normal. Ce contexte offre de nouvelles opportunités aux attaquants.

IOC

IOC

Type

93cf0d545a872c393c053031570bc5eaebfa1aa6a0860fd0b08b679b8ce52fd2 - RAT

Hachage

10c444262994c05930394388e6112ddd98b83118661868bccd83b1fa61160a62 - 1.rar

Hachage

91c43e7ddd98af63d6b1b130e997b909100f3eaf71e30511858cca4348b509db - _

Hachage

9f119d05403b1e079893fb77f6b8b2a9682d1df7ced31a189e7490924ccfb170 - 个人简历.lnk

Hachage

b7dcf661844e6f3e94eb140a79787be6dad77c09ab0b97cf41a62afd07219190 - ancienne variante, mai 2025

Hachage

2e395436e97eaad9a087825d22005b6afc55044abf458604a5118c2ac9bde42a - ancienne variante, septembre 2025

Hachage

67ea3ea3c58a57dbbdac48d4ce3d546816f715eaf32bec33a64a63c91541e697 - net_test.exe (client)

Hachage

195c283703ee7df7c7ef17c85b0fdf88de22348bb0755daf5f0c3ed319c8d88a - net_test.exe (serveur SOCKS5)

Hachage

e513d12abd03a4e07788dd85888d187cb6ca6e69a59f22f00853cae0a0b34712 - net_test.exe (serveur HTTP)

Hachage

1347790942-k1bok35vg3.ap-guangzhou.tencentscf[.]com/v1/chat/completions

URL

39.97.57[.]244

Adresse IP

C:\Users\Public\Update

Répertoire

Annexe

Instruction

Description

$ActiveDos

Renvoie le répertoire actuel

$AddUser

Crée un nouvel utilisateur local et l'ajoute au groupe Administrateurs

$ExecuteCommand

Exécution de commande

$FileDelete

Supprime un fichier

$FileDownLoad \ $BigFileDownLoad

Télécharge un fichier depuis la machine de la victime

$FileExist

Indique si un fichier existe 

$FileUpload \ $BigFileUpload

Écrit un fichier dans le système de fichiers de la cible

$Get_LocalDisk

Récupère les lecteurs de la cible

$GetFile

Obtient les données d'un fichier (taille, horodatages)

$GetFolder

Liste les dossiers d'un répertoire donné

$GetFolderAndFile

Liste un dossier et récupère les fichiers

$GetProcess

Liste les processus

$GetThreadPermissionsInfo

Informations sur les threads du processus malveillant

$HunterInfo

Vole les données de 360 Secure Browser, SunLogin, ToDesk, NetSarang et Chrome

$KillProcess

Met fin à un processus avec le PID indiqué

$MessageBox

Affiche une boîte de dialogue avec la chaîne fournie

$Netstat

Exécute netstat pour afficher les connexions actives

$OffLine

Met fin au processus

$Online

Renvoie à nouveau les données initiales de la victime (Figure 4)

$PE64Loader

Lance explorer.exe et injecte un chargeur de shellcode

$PEMemoryLoadOnSelf

Charge du code à partir d'un tampon. Le logiciel malveillant recherche plusieurs arguments reçus tels que « JuicyPotato » ou « PwDump », et définit une variable d'environnement avec ce nom, ce qui laisse penser qu'il peut l'utiliser comme « module » ou plug-in.

$Persistence

Reçoit une DLL depuis le C2 :

  • L'écrit dans C:\Users\Public\WinVer[3digits].dll puis l'enregistre sous CLSID\{054D1B2B-DDA8-4B1A-BDA8-A6DADB60CAA8}\InProcServer32 ou CLSID\{B4E15CD0-F916-4C8E-830A-15E3E9D01A1B}\InprocServer32

  • L'écrit dans C:\Users\Public\[digit].dll puis l'enregistre sous HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

Peut également créer une tâche planifiée.

$ProgressSpawn

Crée ou vérifie une charge utile sous C:\Users\Public et l'exécute via différentes méthodes, telles que ShellExecute, -InstallLsp ou le chargement en mémoire, selon les arguments

$RegManage

Semble non implémenté

$ScreenShot

Prend une capture d'écran

$ScreenSpy

Modifie les clés de registre TightVNC pour activer le contrôle à distance, probablement en supposant que la victime dispose de TightVNC, ou pour une étape précédente\future de l'attaque

Yonatan Gilvarg

Nov 18, 2025

Yonatan Gilvarg

Yonatan Gilvarg

écrit par

Yonatan Gilvarg

Yonatan Gilvarg est chercheur en sécurité senior au sein de l'équipe Akamai Hunt. Ses domaines d'expertise comprennent la détection et la recherche des menaces, la détection des anomalies du Big Data et la réponse aux incidents.

Balises

Partager

Articles de blog associés

Recherche sur la sécurité
La vulnérabilité SessionReaper (CVE-2025-54236) frappe à vos portes pour Halloween
Des chercheurs d'Akamai analyses les attaques menées par SessionReaper et expliquent comment s'en prémunir.
Recherche sur la sécurité
Rapport 2025 sur la fraude et les abus en ligne : l'IA aux commandes
November 04, 2025
Le dernier rapport État des lieux d'Internet de 2025 explore en profondeur le paysage en pleine expansion de la fraude et des abus, ainsi que son impact sur les principaux secteurs et régions.
Cybersécurité
En dehors de Docker : les API exposées sont ciblées dans Nouvelles souches de logiciels malveillants.
September 08, 2025
Lisez ce qu'Akamai Hunt a découvert au sujet des dernières souches de logiciels malveillants ciblant les API Docker exposées. Obtenez les détails techniques et les stratégies d'atténuation.