emergenza fortinet react2shell malware npm

Fortinet patcha CVE-2026-35616 mentre React2Shell e npm rubano credenziali

Un inizio di aprile di fuoco per i team di sicurezza IT. Le aziende di tutto il mondo si trovano a fronteggiare una triplice, devastante minaccia simultanea. Da un lato, Fortinet è dovuta correre ai ripari rilasciando una patch d’emergenza per chiudere la falla critica CVE-2026-35616 su FortiClient EMS, già attivamente sfruttata dagli hacker per prendere il controllo dei sistemi senza alcuna autenticazione. Nel frattempo, una massiccia campagna automatizzata sta cavalcando la vulnerabilità React2Shell per fare razzia di password e segreti cloud su centinaia di applicazioni Next.js. A completare l’incubo informatico, spunta un finto plugin per Strapi su npm che infetta direttamente gli ambienti di sviluppo, installando backdoor persistenti per rubare database e chiavi private. Un attacco a tenaglia che colpisce infrastrutture, codice e supply chain, imponendo aggiornamenti immediati. Aprile 2026 si apre con tre minacce cyber simultanee che colpiscono endpoint management, applicazioni cloud e supply chain JavaScript. Da un lato Fortinet ha rilasciato un hotfix urgente per CVE-2026-35616, vulnerabilità critica in FortiClient EMS già sfruttata in attacchi reali e capace di consentire esecuzione di codice senza autenticazione. Parallelamente il cluster UAT-10608 continua a usare React2Shell per compromettere applicazioni Next.js, rubare segreti cloud e sottrarre credenziali da centinaia di host in modo completamente automatizzato. Sul fronte sviluppo, un plugin npm malevolo per Strapi aggiunge un agente C2 persistente, esfiltra file .env, chiavi Redis e configurazioni Kubernetes. Il quadro mostra come gli attaccanti stiano combinando exploit pre-auth, automazione e compromissione delle dipendenze software per massimizzare la finestra offensiva.

Fortinet corregge CVE-2026-35616 già sfruttata su FortiClient EMS

Annuncio

La minaccia più urgente riguarda FortiClient EMS, piattaforma centrale nella gestione degli endpoint aziendali. La falla CVE-2026-35616 è una vulnerabilità di improper access control che permette a un attaccante non autenticato di eseguire codice o comandi tramite richieste API appositamente costruite. Il bug colpisce in particolare le versioni 7.4.5 e 7.4.6, mentre il ramo 7.2 non risulta esposto. Il rischio è elevato perché l’exploit bypassa completamente i controlli di autenticazione e autorizzazione sulle interfacce di gestione, trasformando il server EMS in un punto di ingresso privilegiato verso l’intera rete endpoint. Fortinet ha confermato lo sfruttamento in the wild dalla fine di marzo e ha distribuito l’hotfix di emergenza il 4 aprile 2026, raccomandando l’aggiornamento immediato a 7.4.7.

Oltre 2000 istanze FortiClient EMS esposte aumentano il rischio

Il pericolo operativo cresce ulteriormente considerando che oltre 2000 istanze FortiClient EMS risultano esposte online. Un server compromesso in questo contesto può offrire accesso a inventario endpoint, policy di sicurezza, telemetria, distribuzione software e in alcuni casi credenziali di integrazione con altri sistemi di difesa. Gli attaccanti stanno sfruttando anche finestre temporali strategiche, come weekend e festività, quando i team SOC e IR possono essere ridotti. La natura pre-auth RCE rende questa vulnerabilità particolarmente critica perché consente compromissioni iniziali senza phishing o credenziali rubate, abbassando drasticamente il costo operativo dell’attacco.

React2Shell continua a rubare segreti cloud da app Next.js

Sul fronte web application security continua la pressione di React2Shell (CVE-2025-55182), sfruttata da campagne automatizzate contro applicazioni React e Next.js vulnerabili. Il cluster UAT-10608 utilizza scanner automatici che identificano gli host esposti, depositano payload multi-fase e avviano il credential harvesting in pochi secondi. La campagna ha già compromesso almeno 766 host in 24 ore, colpendo provider cloud e ambienti distribuiti in più regioni. Gli script malevoli raccolgono variabili d’ambiente, secret cloud, chiavi SSH, token applicativi e credenziali locali, inviando tutto a un’infrastruttura C2 tramite richieste HTTP segmentate sulla porta 8080. La rapidità della kill chain rende fondamentale non solo la patch ma anche la rotazione immediata dei segreti.

NEXUS Listener industrializza il furto credenziali

L’elemento che rende la campagna particolarmente pericolosa è il framework NEXUS Listener, utilizzato per orchestrare l’estrazione e l’esfiltrazione dei dati. Il payload viene spesso scritto nella directory temporanea standard dell’host e da lì avvia moduli specializzati per enumerare filesystem, sorgenti applicativi e ambienti containerizzati. Il focus è soprattutto sui file .env, secret di orchestrazione e chiavi SSH riutilizzabili per movimenti laterali. In pratica l’exploit React diventa il primo passo di una pipeline industriale di furto credenziali, perfetta per accessi persistenti, vendita underground o pivoting verso altre risorse cloud.

Il plugin npm malevolo Strapi installa un agente C2 persistente

Sul versante software supply chain, il caso più pericoloso riguarda strapi-plugin-events 3.6.8, pacchetto npm contenente uno script postinstall malevolo. Durante l’installazione, il codice deposita un agente persistente che comunica con il server 144.31.107.231:9999, eseguendo polling ogni 5 secondi per 60 round. Il malware esfiltra file .env, configurazioni Strapi, segreti Docker e Kubernetes, chiavi Redis e variabili runtime, andando a colpire direttamente ambienti di sviluppo e CI/CD. La persistenza viene garantita tramite file come /tmp/.node_gc.js e modifiche a crontab, aumentando la sopravvivenza anche dopo reboot o restart dei servizi Node.js.

L’attacco npm fa parte di una campagna con 36 pacchetti malevoli

CategoriaIndicatori (IoC)Dettagli / Note
C2 Path/exfil/
• /c2/<id>/
• /db/<id>/
• /shell/
• /build/<id>/
• /bshell/
exfiltration endpoint
• credential harvester C2
• database exploitation
• persistent implant C2
• fileless shell C2
• reverse shell callback
C2 Server144[.]31[.]107[.]231:9999
• 144[.]31[.]107[.]231:4444
• 144[.]31[.]107[.]231:8888
HTTP C2
• bash reverse shell
• Python reverse shell
Redis Exploitation• CONFIG SET dir + CONFIG SET dbfilename + SAVE• arbitrary file write via Redis
Credentials• user_strapi / 1QKtYPp18UsyU2ZwInVM• hardcoded PostgreSQL credentials
Filesystem Scan• find / for .env* .pem .key id_rsa* wallet*• secret discovery commands
Npm Accountumarbek1233
• kekylf12
• tikeqemif26
• umar_bektembiev1
[email protected]
[email protected]
• unknown
• unknown
Persistence/tmp/.node_gc.js
• crontab pgrep -f node_gc
• Redis CONFIG SET crontab
persistent C2 agent script
• crontab persistence entry
• Redis-written crontab
Persistence File/tmp/redis_exec.sh
• /tmp/vps_shell.sh
• /app/node_modules/.hooks.js
Redis exec payload
• VPS shell payload
• injected hook
Raw Disk Accessmknod /tmp/hostdisk b 8 1
• dd if=/dev/sda1
block device creation
• raw disk read
Target Databaseguardarian
• guardarian_payments
• payments
• api_payments
• exchange
• custody
probed database name
• probed database name
• probed database name
• probed database name
• probed database name
• probed database name
Webshell/app/public/uploads/shell.php
• /app/public/uploads/revshell.js
PHP webshell
• Node.js reverse shell

Mappa dell’infrastruttura d’attacco: i server di comando e controllo (C2), i percorsi utilizzati per l’esfiltrazione e le tecniche di persistenza rilevate durante la compromissione.

Autore (Account npm)Pacchetti CompromessiVersioniTimeline
kekylf12• strapi-plugin-health
• strapi-plugin-sync
• strapi-plugin-seed
• strapi-plugin-locale
• strapi-plugin-form
• strapi-plugin-notify
• strapi-plugin-api
3.6.8
3.6.9
13 hours ago
4 hours ago
6 hours ago
3 hours ago
tikeqemif26• strapi-plugin-sitemap-gen
• strapi-plugin-nordica-tools
• strapi-plugin-nordica-sync
• strapi-plugin-nordica-cms
• strapi-plugin-nordica-api
• strapi-plugin-nordica-recon
• strapi-plugin-nordica-stage
• strapi-plugin-nordica-vhost
• strapi-plugin-nordica-deep
• strapi-plugin-nordica-lite
3.6.8
3.6.10
3.6.11
17 hours ago
2 days ago
a day ago
umar_bektembiev1• strapi-plugin-nordica
• strapi-plugin-finseven
• strapi-plugin-hextest
• strapi-plugin-cms-tools
• strapi-plugin-content-sync
• strapi-plugin-debug-tools
• strapi-plugin-health-check
• strapi-plugin-guardarian-ext
• strapi-plugin-advanced-uuid
• strapi-plugin-blurhash
3.6.8
3.6.10
3 days ago
umarbek1233• strapi-plugin-cron
• strapi-plugin-config
• strapi-plugin-server
• strapi-plugin-database
• strapi-plugin-core
• strapi-plugin-hooks
• strapi-plugin-monitor
• strapi-plugin-events
• strapi-plugin-logger
3.6.813 hours ago
14 hours ago
12 hours ago

Riepilogo dei pacchetti npm malevoli mascherati da plugin Strapi: gli account compromessi o creati ad hoc hanno orchestrato un attacco coordinato in un arco temporale di pochi giorni.

Il plugin malevolo non è un caso isolato ma parte di una campagna più ampia composta da almeno 36 pacchetti npm pubblicati da account falsi. Questo dettaglio rende l’attacco particolarmente insidioso per team DevOps e sviluppatori che integrano rapidamente dipendenze terze senza verifica reputazionale. Una volta ottenuto accesso all’ambiente, il malware mappa la rete, cerca chiavi private, tenta accesso ai database e individua cluster containerizzati, ampliando la superficie di impatto oltre la singola applicazione Strapi. La remediation richiede rimozione del pacchetto, audit completo della supply chain, rotazione dei segreti e verifica della persistenza lato sistema.

Enterprise e sviluppo cloud devono reagire in ore

La simultaneità di queste tre minacce mostra un pattern offensivo molto chiaro: colpire infrastruttura, web app e pipeline software nello stesso momento. Le aziende devono aggiornare subito FortiClient EMS, applicare patch a React/Next.js, eseguire secret scanning, verificare i pacchetti npm installati e monitorare traffico anomalo verso IP e porte sospette. L’uso di WAF, RASP, SBOM, dependency vetting e MDR diventa cruciale per ridurre il tempo di esposizione. In tutti e tre i casi, il fattore decisivo non è solo la patch, ma la velocità con cui si identificano credenziali già sottratte e meccanismi di persistenza ancora attivi.

Iscriviti alla Newsletter

Non perdere le analisi settimanali: Entra nella Matrice Digitale.

Matrice Digitale partecipa al Programma Affiliazione Amazon EU. In qualità di Affiliato Amazon, ricevo un guadagno dagli acquisti idonei. Questo non influenza i prezzi per te.

Torna in alto