🔍 Contexte

Analyse publiée le 27 août 2026 par la CyberProof Research Team, basée sur une découverte initiale de Microsoft Threat Intelligence en juillet 2026. L’incident concerne une compromission de la chaîne d’approvisionnement logicielle ciblant l’organisation NPM officielle AsyncAPI.

🎯 Nature de l’attaque

Des acteurs malveillants ont obtenu un accès non autorisé au pipeline de publication AsyncAPI, republiant des packages légitimes embarquant des hooks de cycle de vie malveillants. Lors de l’exécution de workflows de build standards, les outils comme npx récupéraient automatiquement la chaîne de dépendances compromise.

📦 Packages compromis

  • @asyncapi/generator@3.3.1
  • @asyncapi/specs@6.11.2-alpha.1
  • @asyncapi/generator-helpers@1.1.1
  • @asyncapi/specs@6.11.2
  • @asyncapi/generator-components@0.7.1

⚙️ Déroulement technique (kill chain)

  1. Installation du package : preinstall.js se déclenche automatiquement lors du cycle de vie NPM
  2. Invocation de tâche de build : la tâche xc schema invoque dynamiquement @asyncapi/html-template@3.5.5 via npx
  3. Récupération du payload : un dropper JavaScript obfusqué télécharge sync.js depuis une passerelle IPFS
  4. Persistance : sync.js est écrit dans le répertoire de support Node.js local et exécuté en processus détaché en arrière-plan
  5. Communication C2 : connexion sortante établie vers 85.137.53.71:8080

📊 Impact

La télémétrie hôte a identifié 291 tentatives de cibles uniques initiées par le malware. Le RAT déployé est multi-étapes, utilisant IPFS comme infrastructure décentralisée pour héberger les payloads de second niveau.

🗓️ Fenêtre temporelle observée

Activité corrélée entre le 14 juillet 2026, 09h59 UTC et 13h46 UTC.

📄 Type d’article

Analyse technique post-incident produite par une équipe de recherche CTI, visant à documenter le cycle d’attaque, fournir des IOCs exploitables et des requêtes KQL de threat hunting pour les équipes de détection.

🧠 TTPs et IOCs détectés

TTP

  • T1195.001 — Supply Chain Compromise: Compromise Software Dependencies and Development Tools (Initial Access)
  • T1059.007 — Command and Scripting Interpreter: JavaScript (Execution)
  • T1027 — Obfuscated Files or Information (Defense Evasion)
  • T1105 — Ingress Tool Transfer (Command and Control)
  • T1546 — Event Triggered Execution (Persistence)
  • T1071.001 — Application Layer Protocol: Web Protocols (Command and Control)
  • T1036 — Masquerading (Defense Evasion)
  • T1547 — Boot or Logon Autostart Execution (Persistence)

IOC

  • IPv4 : 85.137.53.71AbuseIPDB · VT · ThreatFox
  • URLs : https://ipfs.io/ipfs/Qmet4fhsAaWMBUxNDfREHwgiyDeSWy4YSYs9wiKUW5jGyfURLhaus
  • URLs : https://ipfs.io/ipfs/QmQobZSp1wRPrpSEQ56qnyq7ecZh5Bg5k1fnjt4SUwwHb9URLhaus
  • SHA256 : 24b9ee242f21a73b55f7bb3297eafb33c60840907386b542ed79fc6b72365168VT · MalwareBazaar
  • SHA256 : b9993a8ad0518849416798cf29668256ccb96598fc4423501ccab5312812653aVT · MalwareBazaar
  • SHA256 : bfaeb987faa6de2b5a5eb63b1233d055215b09b0349a9394f2175fd7cdf385e4VT · MalwareBazaar
  • Fichiers : sync.js
  • Fichiers : preinstall.js

⚠️ À propos de ces IOC — ils sont extraits automatiquement de l’article original le 28 août 2026 et n’ont pas fait l’objet d’une vérification externe. Un indicateur peut avoir été réattribué depuis : une IP de C2 peut redevenir un service légitime, un domaine sinkholé peut changer de propriétaire. Aucune garantie d’exactitude ni d’actualité — contrôlez leur validité avant tout usage opérationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.

Malware / Outils

  • sync.js (rat)
  • preinstall.js dropper (loader)

🟢 Indice de vérification factuelle : 90/100 (haute)

  • ✅ cyberproof.com — source reconnue (Rösti community) (20pts)
  • ✅ 9213 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 8 IOCs dont des hashes (15pts)
  • ✅ 4/6 IOCs confirmés (AbuseIPDB, MalwareBazaar, ThreatFox, URLhaus, VirusTotal) (15pts)
  • ✅ 8 TTPs MITRE identifiées (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ pas de CVE à vérifier (0pts)

IOCs confirmés externellement :

  • 85.137.53.71 (ip) → VT (15/91 détections)
  • 24b9ee242f21a73b… (sha256) → VT (27/73 détections)
  • b9993a8ad0518849… (sha256) → VT (27/73 détections)
  • bfaeb987faa6de2b… (sha256) → VT (27/76 détections)

🔗 Source originale : https://www.cyberproof.com/blog/inside-the-asyncapi-supply-chain-compromise/