CVE-2026-44881
Portainer: Lettura arbitraria di file tramite iniezione di symlink Git nell'aggiornamento automatico degli Stack
- Pubblicato
- 28 mag 2026
- Aggiornato
- 29 mag 2026
- Assegnazione CNA
- GitHub_M
- Evidenza osservata
- 8 ago 2026
CVSS primario
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XBasso · prossimi 30 giorni
- Percentile
- 35,5%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
Portainer Community Edition è una piattaforma leggera di erogazione di servizi per applicazioni containerizzate che può essere utilizzata per gestire ambienti Docker, Swarm, Kubernetes e ACI. Dalla versione 2.33.0 fino alle versioni precedenti a 2.33.8, 2.39.2 e 2.41.0, Portainer supporta la distribuzione di stack da repository Git. Quando uno stack basato su Git viene creato o aggiornato, Portainer clona il repository utilizzando go-git v5, che traduce le voci blob Git con modalità 0o120000 (symlink) in symlink reali del sistema operativo sul filesystem host tramite os.Symlink. L'unica voce a cui viene impedito di diventare un symlink è .gitmodules; ogni altro percorso viene creato come symlink senza validazione. L'endpoint GET /api/stacks/{id}/file di Portainer legge quindi il punto di ingresso dello stack con os.ReadFile, che segue i symlink del sistema operativo in modo trasparente. Un repository contenente docker-compose.yml come symlink verso un percorso arbitrario del filesystem fa sì che il contenuto della destinazione del symlink venga restituito integralmente nella risposta HTTP. Qualsiasi utente autenticato con i diritti per creare o aggiornare uno stack basato su Git — la configurazione predefinita in Portainer CE — può leggere file arbitrari accessibili al processo di Portainer. Questa vulnerabilità è corretta nelle versioni 2.33.8, 2.39.2 e 2.41.0.
Fonti
1- CVE-2026-44881_exploitExploit
Exploit a script singolo per CVE-2026-44881 che combina la perdita di credenziali .git, l'iniezione di symlink Git di Portainer, la lettura arbitraria di file host e l'accesso SSH per test autorizzati.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.