📰 Source : blog.malwaremustdie.org (MMD-0070-2026), publié le 11 novembre 2026 par @unixfreaxjp. Il s’agit d’une analyse technique rétrospective d’une infection observée il y a environ 6 ans, jugée désormais sûre à publier à des fins éducatives.

🎯 Contexte général Le botnet Linux/Hajime a infecté 3 029 adresses IP réparties dans 111 pays, avec une concentration notable à Taïwan (HINET) et Corée du Sud (KIXS). Il cible principalement des équipements IoT (routeurs, DVR, caméras) via des identifiants par défaut et des ports exposés (Telnet, TR-069, ADB).

🔬 Mécanismes techniques Trois méthodes de propagation sont documentées :

  • (1) TFTP : téléchargement direct du payload
  • (2) wget HTTP : IP et port visibles
  • (3) Hexstring-pushing : méthode principale analysée — pousse un downloader ARM ELF de 480 octets via une chaîne hexadécimale, exécuté sans écriture sur disque (fileless)

Techniques d’évasion identifiées :

  • Utilisation de socketcall pour éviter le traçage ptrace et les scanners
  • Opérations socket au niveau bas (pas de dépendance HTTP)
  • Suppression du downloader après dépôt du payload
  • Payload packé avec un packer custom
  • Renommage du processus en telnetd
  • Configuration modulaire (non divulguée)

⚙️ Comportement du bot principal

  1. Désactivation du watchdog matériel (/dev/watchdog, /dev/misc/watchdog)
  2. Renommage du processus en telnetd
  3. Ajout de règles iptables DROP sur les ports 23, 7547, 5555, 5358
  4. Suppression de la chaîne firewall CWMP_CR et remplacement de /tmp/ftpupdate.sh par un lien vers /dev/null
  5. Kill forcé de processus via /proc/net/tcp
  6. Routines DHT (BitTorrent KadNode) et NTP pour la clé de lookup quotidienne

📁 Artefacts hôte notables

  • Répertoire de travail : ./.p/
  • Fichier de config : ./.p/config
  • Fichier FIFO : ./fifo
  • Bootstrap DHT : router.utorrent.com
  • NTP : pool.ntp.org
  • Fichiers staging : /tmp/ftpupdate.sh, /tmp/ftpupload.sh
  • Répertoire implant : ./.i

🛡️ Signatures de détection publiées (TLP:CLEAR) Des règles sont publiées sur GitHub (unixfreaxjp) pour :

  • YARA (3 règles) : implant dépacké, payload ARM packé, downloader 480 octets
  • Sigma (3 règles) : iptables DROP ports 23/5358/5555/7547, staging ELF dans /dev/shm, artefacts .p
  • Snort 2.9 : connexion downloader, stream ELF ARM, commandes staging Telnet, DHT announce_peer
  • Suricata : même logique avec sticky buffers, probe Telnet/5358, DNS bootstrap router.utorrent.com
  • osquery : faux telnetd, artefacts /dev/shm, symlink ftpupdate.sh, règles DROP, connexions payload server
  • STIX 2.1 : IOCs machine-readable, objet malware, patterns ATT&CK

📌 Type d’article : Analyse technique rétrospective et publication de recherche. But principal : partager des connaissances sur une menace IoT historique significative et fournir des signatures de détection exploitables à la communauté.

🧠 TTPs et IOCs détectés

TTP

  • T1059.004 — Command and Scripting Interpreter: Unix Shell (Execution)
  • T1027 — Obfuscated Files or Information (Defense Evasion)
  • T1036.005 — Masquerading: Match Legitimate Name or Location (Defense Evasion)
  • T1562.004 — Impair Defenses: Disable or Modify System Firewall (Defense Evasion)
  • T1070.004 — Indicator Removal: File Deletion (Defense Evasion)
  • T1095 — Non-Application Layer Protocol (Command and Control)
  • T1498 — Network Denial of Service (Impact)
  • T1110.001 — Brute Force: Password Guessing (Credential Access)
  • T1571 — Non-Standard Port (Command and Control)
  • T1055 — Process Injection (Defense Evasion)
  • T1543 — Create or Modify System Process (Persistence)

IOC

  • Domaines : router.utorrent.com — VT · URLhaus · ThreatFox
  • Domaines : pool.ntp.org — VT · URLhaus · ThreatFox
  • Fichiers : ftpupdate.sh
  • Fichiers : ftpupload.sh
  • Chemins : /tmp/ftpupdate.sh
  • Chemins : /tmp/ftpupload.sh
  • Chemins : /dev/watchdog
  • Chemins : /dev/misc/watchdog
  • Chemins : ./fifo
  • Chemins : ./.p/config
  • Chemins : ./.p/.d
  • Chemins : ./.i
  • Chemins : ./.p/

⚠️ À propos de ces IOC — ils sont extraits automatiquement de l’article original le 13 novembre 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

  • Linux/Hajime (botnet)

🟡 Indice de vérification factuelle : 50/100 (moyenne)

  • ⬜ blog.malwaremustdie.org — source non référencée (0pts)
  • ✅ 25424 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 13 IOCs (IPs/domaines/CVEs) (10pts)
  • ⬜ 0/2 IOCs confirmés externellement (0pts)
  • ✅ 11 TTPs MITRE identifiées (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ pas de CVE à vérifier (0pts)

🔗 Source originale : https://blog.malwaremustdie.org/2026/11/once-upon-time-linuxhajime-hexstring.html