SOC Prime Bias: Critical

05 Aug 2026 07:20 UTC

NullReceiver Avance EtherHiding avec Transferts Cryptographiques Vides

Author Photo
SOC Prime Team linkedin icon Suivre
NullReceiver Avance EtherHiding avec Transferts Cryptographiques Vides
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

Les acteurs de la menace liés à la RPDC utilisent une nouvelle méthode de résolution C2 basée sur la blockchain connue sous le nom de NullReceiver. La technique intègre les adresses IP C2 dans les octets d’adresse du destinataire des transferts Ethereum de valeur nulle, rendant la détection plus difficile qu’avec l’EtherHiding traditionnel. Le malware associé est distribué par le biais de packages npm trojanisés.

Enquête

Les chercheurs ont enquêté sur l’activité par une analyse statique des tarballs npm publiés et un examen en lecture seule des transactions contrôlées par l’attaquant sur la blockchain publique. L’analyse a identifié deux packages npm malveillants, bianira-ui and fluid-type-ui, qui utilisent NullReceiver pour résoudre l’infrastructure de commande et de contrôle.

Atténuation

Les défenseurs doivent surveiller l’activité de la blockchain associée aux portefeuilles Ethereum contrôlés par des attaquants connus et inspecter les adresses de destinataire utilisées dans les transferts de valeur nulle. Les organisations devraient également renforcer les contrôles de la chaîne d’approvisionnement logicielle pour les dépendances npm afin de prévenir l’installation de packages trojanisés.

Réponse

Si une activité NullReceiver est détectée, les environnements Node.js affectés doivent être isolés immédiatement. Les enquêteurs doivent identifier la source du package npm malveillant et bloquer les adresses IP C2 et les adresses des portefeuilles Ethereum correspondantes à la fois au niveau du réseau et de l’application.

Flux d’attaque

Détections

Tentative possible d’abus Publicnode Ethereum en tant que canal C2 (via dns_query)

Équipe SOC Prime
04 août 2026

IOC (SourceIP) pour détecter : Les transferts cryptographiques vierges de NullReceiver résolvent les défis de l’EtherHiding

Règles AI de SOC Prime
04 août 2026

IOC (DestinationIP) pour détecter : Les transferts cryptographiques vierges de NullReceiver résolvent les défis de l’EtherHiding

Règles AI de SOC Prime
04 août 2026

Établissement de la connexion HTTP/HTTPS NullReceiver [Connexion réseau Windows]

Règles AI de SOC Prime
04 août 2026

Détection de la technique de commande et de contrôle basée sur la blockchain de NullReceiver [Création de processus Linux]

Règles AI de SOC Prime
04 août 2026

Exécution de simulation

Prérequis : La vérification pré-vol des télémétrie et base doit avoir réussi.

Justification : Cette section détaille l’exécution précise de la technique de l’adversaire (TTP) conçue pour déclencher la règle de détection. Les commandes et la narration DOIVENT refléter directement les TTP identifiés et viser à générer la télémétrie exacte attendue par la logique de détection. Des exemples abstraits ou sans rapport entraîneront une erreur de diagnostic.

  • Narration & commandes d’attaque : L’adversaire cherche à établir un canal C2 furtif qui contourne le blacklistage traditionnel basé sur les adresses IP. Pour ce faire, il déploie un package npm malveillant utilisant la technique « NullReceiver ». Le script initialise les variables globales en utilisant une syntaxe obfusquée spécifique (global.i = "A10-npm3!", global.r = require) et contacte immédiatement le https://1rpc.io/eth point de terminaison. Cela permet au malware de lire le champ « recipient » d’une transaction Ethereum spécifique, contenant l’adresse IP codée du serveur C2 réel. Cette méthode utilise l’infrastructure de blockchain légitime pour dissimuler l’intention malveillante.

  • Script de test de régression :

    #!/bin/bash
    # Script de simulation pour la détection de technique C2 NullReceiver
    # Créer un script node malveillant qui imite les modèles spécifiques dans la règle de détection
    cat << 'EOF' > malicious_npm_payload.js
    // Imitation des modèles exacts définis dans la règle Sigma
    global.i = "A10-npm3!"; 
    global.r = require;
    const https = require('https');
    // Le malware contacte le point de terminaison RPC spécifique pour récupérer des instructions
    const url = 'https://1rpc.io/eth';
    console.log("[!] Début de la consultation C2 basée sur la blockchain...");
    https.get(url, (res) => {
      console.log("[!] Connexion réussie. Analyse de l'état de la blockchain...");
      res.on('data', (d) => {
        // Dans une attaque réelle, cela analyserait le champ 'recipient' pour l'IP du C2
        console.log("[!] Instruction reçue via la technique NullReceiver.");
      });
    }).on('error', (e) => {
      console.error(`[X] Connexion échouée : ${e.message}`);
    });
    EOF
    # Exécuter le script malveillant en utilisant node
    echo "[*] Exécution de la simulation malveillante..."
    node malicious_npm_payload.js
    # Nettoyer le fichier de script
    rm malicious_npm_payload.js
  • Commandes de nettoyage :

    # Supprimer tout artefact créé lors de la simulation
    rm -f malicious_npm_payload.js