
Lab GitLab isolato basato su Vagrant per test difensivi autorizzati e validazione di CVE-2026-85706, con profili vulnerabili e corretti più esercizi per studenti.
Questa directory crea un laboratorio GitLab isolato e solo locale per test difensivi autorizzati di CVE-2026-85706. La CVE riguarda il confinamento del percorso e l'applicazione dell'autenticazione dell'API repository-commits di GitLab CE/EE. Utilizza una guest Ubuntu completa.
127.0.0.1:8443 sull'host per impostazione
predefinita (personalizzabile con LAB_HTTPS_PORT) e utilizza
un indirizzo guest host-only../scripts/teardown-vm.sh.curl, e opensslbashcd ~/gitlab-cve-lab
./scripts/setup-vm.sh
Lo script di setup crea una VM, installa GitLab CE direttamente dal repository
ufficiale dei pacchetti e attende l'endpoint di integrità. Aprire il laboratorio
all'indirizzo https://127.0.0.1:8443 (il browser avviserà del certificato
locale). Utilizzare LAB_HTTPS_PORT e LAB_SSH_PORT quando i valori
predefiniti non sono disponibili.
Il profilo predefinito è vulnerable, fissato a GitLab CE 19.3.1-ce.0, che
rientra nell'intervallo interessato pubblicato per CVE-2026-85706. Per creare il
profilo di confronto patchato, eseguire:
LAB_PROFILE=patched ./scripts/setup-vm.sh
Il profilo patchato utilizza GitLab CE 19.3.2-ce.0. Se il repository dei
pacchetti non offre più quella versione esatta, impostare GITLAB_VERSION su
una versione patchata fornita dal vendor prima di eseguire il setup.
./scripts/smoke-test-vm.sh
Lo smoke test verifica l'integrità della VM, la raggiungibilità delle porte solo in locale e che una richiesta non autenticata all'API repository-commits non venga trattata come un'operazione autenticata di lettura file. Non tenta intenzionalmente di recuperare file arbitrari.
Per un test autenticato controllato, creare un progetto privato usa e getta nell'interfaccia GitLab, aggiungere un commit di test e utilizzare solo percorsi all'interno di quel progetto. Registrare timestamp e codici di stato HTTP, non contenuti di file sensibili.
./scripts/teardown-vm.sh
Questo spegne e distrugge la VM, il disco collegato e il certificato generato.
Questo progetto è disponibile sotto la MIT License. I requisiti di uso responsabile per il laboratorio vulnerabile sono documentati nel license agreement e nella security policy.