7‑Zip: vulnerabilità di scrittura arbitraria (CVE-2025-55188), rischi reali e strategie di difesa
La vulnerabilità CVE-2025-55188 in 7‑Zip consente a un archivio malevolo di provocare la scrittura arbitraria di file durante l’estrazione, sfruttando una gestione inadeguata dei link simbolici. Questo può portare alla sovrascrittura di file sensibili (per esempio chiavi SSH o file di profilo), con possibili effetti a catena fino all’esecuzione di codice in determinati scenari. La correzione è disponibile in 7‑Zip 25.01. In questo articolo analizziamo come funziona il bug, quali sistemi sono più esposti, come aggiornare e come ridurre il rischio con misure tecniche e processuali.
Cos’è il problema e perché è importante
- Natura del bug: durante l’estrazione, 7‑Zip non validava correttamente i link simbolici contenuti in alcuni formati di archivio. Un aggressore può creare archivi in cui i symlink puntano a percorsi arbitrari sul filesystem. Quando l’utente estrae, il contenuto può finire scritto in posizioni non previste, anche al di fuori della directory di destinazione.
- Impatto potenziale:
- Sovrascrittura di file di configurazione dell’utente (p.es. ~/.bashrc, ~/.zshrc) con comandi malevoli eseguiti alla successiva apertura di shell.
- Manipolazione di chiavi SSH o file di autorizzazione, con impatti su autenticazione e accessi.
- Alterazione di script, alias o configurazioni caricate automaticamente da applicazioni o servizi, con escalation del rischio verso esecuzione di codice.
- Vettore e prerequisiti:
- È tipicamente un attacco locale con interazione utente: la vittima deve scaricare ed estrarre un archivio malevolo.
- Su Linux/macOS lo sfruttamento è più diretto, dato l’uso nativo dei link simbolici.
- Su Windows è possibile, ma richiede condizioni aggiuntive (es. privilegi amministrativi o Developer Mode per creare symlink), riducendo la probabilità ma non eliminando il rischio.
Versioni interessate e patch
- Versioni interessate: tutte le versioni di 7‑Zip precedenti alla 25.01.
- Versione corretta: 7‑Zip 25.01 introduce convalide più restrittive dei symlink in fase di estrazione.
- Possibili modifiche operative: è stato introdotto anche un nuovo switch a riga di comando per gestire eccezioni controllate ai nuovi controlli (utile per ambienti che necessitano comportamenti legacy), ma va usato con cautela e solo in pipeline fidate.
Suggerimento: se usi build portate su Linux/macOS (p7zip o fork), verifica il changelog del maintainer del tuo pacchetto. Alcuni repository potrebbero rilasciare l’aggiornamento con un nome di pacchetto diverso o con un leggero ritardo.
Scenari di attacco concreti
- Archivio ZIP/TAR/7Z con symlink malevoli:
- L’archivio contiene un symlink che punta a un percorso sensibile (es. ~/.ssh/authorized_keys).
- Insieme al symlink è incluso un file che, una volta “risolto” dal tool di estrazione, sovrascrive il target puntato.
- Risultato: l’aggressore inietta chiavi o comandi, preparando un accesso non autorizzato o l’esecuzione di payload al prossimo avvio di una sessione o di un servizio.
- Catena con phishing:
- L’attaccante invia un archivio “apparente” (documentazione, aggiornamenti, fatture).
- L’utente estrae con 7‑Zip vulnerabile, credendo di operare in sicurezza.
- La modifica invisibile a file di profilo o chiavi prepara l’ambiente al passaggio successivo (accesso, furto dati, persistenza).
Come verificare se sei vulnerabile
- Controlla la versione:
- GUI: apri 7‑Zip e verifica “Aiuto” > “Informazioni”.
- CLI: esegui
7z -versiono7z i. - Sistemi Linux:
apt-cache policy p7zip-fullorpm -qi p7zipper capire la versione del pacchetto distributivo.
- Mappa d’uso:
- Identifica dove 7‑Zip è usato: postazioni utente, server, job di CI/CD, pipeline ETL, script di manutenzione.
- Non dimenticare contenitori e immagini: verifica le versioni incluse in Dockerfile e container base.
- Test controllato:
- In un ambiente di laboratorio, prova l’estrazione di archivi con symlink “neutri” e verifica che non vengano seguiti al di fuori della directory di destinazione con la versione aggiornata.
- Verifica i log e le opzioni di estrazione per assicurarti che le misure anti-symlink siano effettive.
Aggiornamento sicuro a 7‑Zip 25.01
- Windows:
- Scarica l’installer dal sito ufficiale del progetto 7‑Zip.
- Disinstalla versioni precedenti solo se richiesto (di norma l’installer effettua l’aggiornamento in-place).
- In ambienti enterprise, distribuisci via GPO/Intune o strumenti RMM, validando hash e firma.
- Linux/macOS:
- Usa i repository ufficiali o i canali del maintainer (attenzione ai fork).
- In CI/CD aggiorna gli step di build e le immagini base.
- Esegui una scansione di compliance per individuare residui di versioni legacy.
- Verifica post-aggiornamento:
- Conferma la versione installata.
- Riesegui test di estrazione con archivi che contengono symlink per validare il comportamento corretto.
Mitigazioni immediate (se non puoi aggiornare subito)
- Isolamento e principio del minimo privilegio:
- Estrai archivi in directory temporanee isolate, con mount options restrittive (es. noexec,nosuid,nodev dove appropriato).
- Usa utenti non privilegiati per tutte le operazioni di estrazione.
- Restrizioni symlink a livello OS:
- Linux: valuta l’uso di mount “safe” per directory temporanee e l’abilitazione di policy AppArmor/SELinux per confinare il processo di estrazione, impedendo scritture fuori dal path previsto.
- Windows: evita l’uso di Developer Mode o privilegi che consentono la creazione di symlink per processi non necessari; esegui l’estrazione senza privilegi elevati.
- Strumenti alternativi per file sospetti:
- Per archivi da fonti non fidate, utilizza strumenti che offrono opzioni esplicite per rifiutare symlink o “dereferenziare” in modo sicuro, oppure analizza i contenuti prima dell’estrazione con tool che elencano i link simbolici.
- Valuta l’estrazione in sandbox (VM isolata o contenitore “usa e getta”).
- Scansione preventiva:
- Integra antivirus/EDR con scansione di archivi e policy che segnalano presenza di symlink e path traversal (sequenze come ../).
- Blocca automaticamente l’uso di tool non aggiornati attraverso l’application control.
- Policy di filiera:
- Nei gateway email e web, filtra o ispeziona archivi, soprattutto se compressi multipli (zip annidati).
- Implementa DMARC, DKIM, SPF e formazione anti-phishing per ridurre la probabilità di interazione utente con allegati malevoli.
Buone pratiche operative e consigli
- Standardizza le opzioni di estrazione:
- Definisci wrapper o script aziendali per 7‑Zip con flag sicuri preimpostati, impedendo comportamenti rischiosi e offrendo log centralizzati.
- Documenta e diffondi le procedure: dove estrarre, con quale utente, quali directory usare.
- Monitoraggio e rilevamento:
- Log di integrità: monitora file sensibili come ~/.ssh/authorized_keys, file di shell init (bashrc, zshrc), profili applicativi, crontab.
- Rilevamento di symlink sospetti creati durante o subito dopo l’estrazione.
- Alert su modifiche anomale a file di configurazione utente o di sistema.
- Hardening dell’ambiente:
- Usa filesystem con attributi restrittivi per directory temporanee e di lavoro.
- Attiva controlli di sicurezza del kernel (LSM come AppArmor/SELinux) con profili che limitano scritture fuori dalla directory target dei processi di estrazione.
- Separa i profili utente privilegiati dalle attività quotidiane: l’estrazione deve avvenire in contesti non privilegiati.
- Gestione delle dipendenze:
- Mantieni un inventario software aggiornato: sapere dove è installato 7‑Zip è essenziale per remediation rapide.
- Automatizza il patching dove possibile; in assenza di update automatici, crea job programmati per controllare nuove release e distribuire patch.
- Verifiche periodiche:
- Esegui penetration test interni focalizzati su vettori basati su archivi, includendo casi con symlink, path traversal e decompressione “zip bomb”.
- Integra regole nei tuoi scanner SAST/DAST o pipeline di sicurezza per validare tool e opzioni di estrazione utilizzate negli script.
Considerazioni per Windows vs Linux
- Linux/macOS:
- Rischio maggiore per via dei symlink ampiamente utilizzati e risolti nativamente.
- Priorità: aggiornare 7‑Zip, applicare confinamento (AppArmor/SELinux), estrazione con utenze non privilegiate, controlli su file di profilo.
- Windows:
- Attacco possibile ma con prerequisiti (privilegi o Developer Mode).
- Priorità: eseguire sempre come utente standard, evitare l’estrazione con privilegi elevati, disabilitare la capacità di creare symlink dove non necessaria, aggiornare a 25.01.
Checklist rapida di remediation
- Aggiorna 7‑Zip a 25.01 su tutte le postazioni e server.
- Blocca l’esecuzione di versioni precedenti tramite application control.
- Definisci una directory di estrazione dedicata con mount restrittive e nessun privilegio elevato.
- Integra scansione e ispezione preventiva degli archivi nei gateway e negli endpoint.
- Monitora file sensibili soggetti a sovrascrittura post-estrazione.
- Forma gli utenti: non estrarre archivi non richiesti o da mittenti sconosciuti; segnalare allegati sospetti.
Domande frequenti
- Devo aggiornare se uso 7‑Zip solo in GUI per file “sicuri”?
- Sì. Il rischio nasce dall’input non affidabile; l’aggiornamento riduce la superficie d’attacco e standardizza comportamenti sicuri.
- Il problema riguarda solo il formato 7z?
- No. Il punto è la gestione dei symlink nell’estrazione di formati che li supportano (ZIP, TAR, 7Z, RAR in alcune implementazioni). Aggiornare è la misura correttiva generale.
- Esistono workaround completi senza aggiornare?
- Non completamente. Le mitigazioni riducono il rischio ma non sostituiscono la patch nel motore di estrazione.
- Come capisco se sono già stato colpito?
- Controlla timestamp e contenuto di ~/.ssh/authorized_keys, file di profilo della shell e altri file sensibili nelle ore successive a estrazioni sospette. Verifica la presenza di symlink anomali e rivedi i log EDR/AV.
Aggiornare a 7‑Zip 25.01 è il passo fondamentale. In parallelo, implementa estrazioni in ambienti confinati, privilegia utenti non amministratori, monitora file sensibili e integra controlli a livello di email gateway ed endpoint. Queste misure, combinate con formazione degli utenti e inventario software accurato, riducono drasticamente la probabilità che un semplice archivio si trasformi in un vettore di compromissione.
Fonte: https://cybersecuritynews.com/7-zip-arbitrary-file-write-vulnerability





