Sì, può esserci.
Il rischio principale con le zip di decompressione è che sovrascrive un file eseguibile o di configurazione. Ad esempio, se lo zip contiene .bashrc
e lo estrai nella tua directory home, potrebbe sovrascrivere il tuo e al prossimo accesso verrà eseguito il codice dell'attaccante.
Per uno scenario peggiore, prendi in considerazione un server web che apre archivi zip, magari dai caricamenti degli utenti, perché unzip
eseguirà lo stesso privilegio del processo del server web, probabilmente in grado di sovrascrivere eseguibili o file di configurazione appartenenti al server web. Speriamo che l'amministratore non stia eseguendo il processo del server web come root.
C'era una vulnerabilità pubblica recente chiamata Zip Slip che lo ha reso ancora peggiore: alcuni strumenti di decompressione stavano consentendo nomi di file per contenere ..
all'interno di un archivio zip, il che rende questo attacco ancora più pericoloso perché uno zip contenente il seguente file sovrascriverà /bin/ls
indipendentemente da dove nel tuo filesystem stai cercando di estrarlo:
../../../../../../../../../../../../../../../../../bin/ls
(o qualsiasi altro eseguibile che il processo di estrazione ha il permesso di sovrascrivere)
Un'igiene corretta per l'estrazione di zip:
- Se possibile, controlla l'autenticità dell'archivio zip prima di estrarlo (l'hai ottenuto da qualche parte in maniera fidata, checksum, firma, ecc.)
- Se possibile, evita di eseguire
unzip
come root, in questo modo i file di sistema non possono essere sovrascritti.
- Se possibile, decomprimi in una nuova directory pulita in modo che, escludendo chroot exploit come Zip Slip sopra, non ci sia nulla in quella cartella da sovrascrivere.