Proteggere i tuoi repository Git: best practice e fonti non attendibili
Comprendi le considerazioni cruciali sulla sicurezza di Git, inclusa la gestione dei repository non attendibili e l'utilizzo delle impostazioni `safe.directory` per proteggere i tuoi progetti da codice dannoso.
Proteggere i tuoi repository Git: best practice e fonti non attendibili
La sicurezza è fondamentale quando si lavora con il controllo di versione. Con l'aumento delle minacce alla supply chain, è essenziale capire come Git gestisce i repository e come proteggersi da codice potenzialmente malevolo.
Il problema delle fonti non attendibili
Git è uno strumento potente, ma può essere sfruttato se si eseguono comandi all'interno di repository scaricati da fonti non verificate. Alcune configurazioni locali (.git/config) possono essere manipolate per eseguire script arbitrari durante operazioni comuni come git status o git diff.
Utilizzo di safe.directory
Per mitigare questi rischi, Git ha introdotto la configurazione safe.directory. Questa impostazione impedisce a Git di operare in repository che non appartengono all'utente corrente o che si trovano in percorsi non autorizzati.
Puoi configurare i repository sicuri globalmente:
git config --global --add safe.directory /percorso/del/tuo/progetto
Oppure, per contrassegnare tutti i repository come sicuri (attenzione: fallo solo su sistemi fidati):
git config --global --add safe.directory *
Best practice per la sicurezza
- Verifica sempre la fonte: Non clonare mai repository da fonti sconosciute o non attendibili.
- Ispeziona i file di configurazione: Prima di eseguire comandi in un repository scaricato, controlla il file
.git/configper verificare la presenza di hook o configurazioni sospette. - Mantieni Git aggiornato: Le versioni più recenti di Git includono patch di sicurezza critiche che proteggono da vulnerabilità note.
- Usa ambienti isolati: Se devi analizzare un repository sospetto, fallo all'interno di una macchina virtuale o di un container Docker isolato.