
Scusa ransomware (.sorry) IOCs, regole YARA e analisi forense - campagna CVE-2026-41940 cPanel
Pacchetto IOC pubblico, regole YARA, script forensi e metodologia di analisi per la famiglia del
ransomware "Sorry" (estensione .sorry) emersa a fine aprile 2026,
diffusa tramite il bypass di autenticazione cPanel/WHM CVE-2026-41940.
⚠️ I file crittografati da questo ransomware NON sono decifrabili senza la chiave privata RSA-2048 dell'attaccante. Non pagate. Applicate le patch a cPanel, ruotate tutte le credenziali e conservate i file crittografati nel caso in cui venga rilasciato un decryptor gratuito.
📝 Analisi tecnica completa (in turco): link da aggiungere una volta pubblicato
| Percorso | Scopo |
|---|---|
docs/IOC.md | Tutti gli indicatori di compromissione (file crittografati, rete, host) |
docs/analysis_methodology.md | Come è stata condotta l'analisi — completamente riproducibile |
yara/sorry_ransomware.yar | Regole YARA per file crittografati e note di riscatto |
iocs/hashes.txt | Hash dell'intera campagna e hash del prefisso strutturale |
iocs/network.txt | ID Tox, informazioni CVE, IOC di rete |
iocs/file_signatures.txt | Firme strutturali dei file crittografati |
scripts/analyze.py | Analisi entropia/struttura per singolo campione |
scripts/header_parse.py | Analisi dell'header fisso di 2057 byte |
scripts/keystream_test.py | Test di riutilizzo del keystream ChaCha20 / testo noto |
scripts/server_collection.sh | Raccolta di artefatti forensi in sola lettura per host cPanel compromessi |
.sorry aggiunta al nome file originaleREADME.md in ogni directory crittografata┌─────────────────────────────────────────────────────────┐
│ Offset 0x000 - 0x808 (2057 byte) PREFISSO FISSO │
│ • Magic: 99 00 00 08 00 21 CA 68 0C BD 7F 19 ... │
│ • Chiave master per vittima avvolta RSA-2048 + metadati│
│ • Marcatore di coda @ 0x800: F4 0B 00 B4 27 00 00 01 00│
├─────────────────────────────────────────────────────────┤
│ Offset 0x809 - (EOF-4) TESTO CIFRATO │
│ • Dati originali crittografati con stream ChaCha20 │
│ • La lunghezza NON è allineata a 16 (mod16 ∈ {2,4,8,13})│
│ • Entropia di Shannon ~7,95 bit/byte │
├─────────────────────────────────────────────────────────┤
│ Ultimi 4 byte: 00 00 00 00 FOOTER STATICO │
└─────────────────────────────────────────────────────────┘
# Scansione di una directory con la regola YARA
yara -r yara/sorry_ransomware.yar /percorso/da/scansionare
# Esecuzione dell'analisi su campioni locali
python3 scripts/analyze.py /percorso/campione.sorry
# Raccolta di artefatti forensi da un host cPanel compromesso (sola lettura)
bash scripts/server_collection.sh
No. Abbiamo testato ogni comune difetto di implementazione:
| Test | Risultato |
|---|---|
| XOR coppia di testi cifrati (riutilizzo keystream/nonce) | ❌ nessun riutilizzo |
| Recupero keystream con testo noto → decifratura cross-file | ❌ fallito |
| Chiave in chiaro incorporata / marcatore RNG debole nell'header | ❌ nessuno trovato |
| Padding oracle | ❌ N/D (cifrario a stream) |
Il cifrario è implementato correttamente. Solo la chiave privata RSA-2048 dell'operatore può decifrare questi file. Monitorate NoMoreRansom e ID-Ransomware nel caso in cui le forze dell'ordine sequestrino la chiave dell'operatore.
Questo repository contiene:
Non contiene:
Le pull request sono benvenute — vedi CONTRIBUTING.md.