
Proof-of-concept exploit per CVE-2026-26012, che dimostra un bypass autenticato dei permessi di raccolta dell'organizzazione e l'enumerazione delle cifrature in Vaultwarden. Include uno script Python per riprodurre il problema e confrontare le discrepanze di accesso alle raccolte.
Riferimento NVD: CVE-2026-26012
| CVSSv3 | Vettore di attacco | Complessità di attacco | Privilegi richiesti | Interazione utente | Riservatezza | Integrità | Disponibilità |
|---|
| 6.5 - MEDIO | Rete | Bassa | Basso | Nessuna | Alta | Nessuna | Nessuna |
Fonte: NVD, punteggio CNA (GitHub, Inc.).
Qualsiasi membro dell'organizzazione può recuperare tutte le cifrature appartenenti all'organizzazione, indipendentemente dai permessi di raccolta. L'endpoint /ciphers/organization-details è accessibile a tutti i membri dell'organizzazione e internamente utilizza Cipher::find_by_org per recuperare ogni cifratura; i risultati vengono restituiti con CipherSyncType::Organization senza applicare il controllo degli accessi a livello di raccolta. Questo repository fornisce un POC per riprodurre il problema per scopi strettamente etici: test di penetrazione autorizzati, validazione delle patch e ricerca sulla sicurezza.
python CVE-2026-26012.py -u https://target.example.com -t "YOUR_TOKEN" -uuid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -o CVE-2026-26012.json
| Breve | Opzione | Descrizione |
|---|---|---|
-u | --url | URL di base del target |
-t | --token | Token Bearer |
-uuid | --organization-id | UUID dell'organizzazione (obbligatorio, formato UUID validato) |
-o | --output | File JSON di output (predefinito: CVE-2026-26012.json) |
-c | --compare-collections | Confronta collectionIds e mostra le discrepanze di accesso |
Comportamento: Il comando esporta i dettagli dell'organizzazione in JSON. Con -c, lo script confronta le raccolte da organization-details e quelle da /api/collections, quindi mostra nel terminale:
Obiettivo: vedere rapidamente le differenze tra ciò che l'API dell'organizzazione espone e ciò che l'utente dovrebbe vedere.
organization-details, collectionsVedere il file LICENSE in questo repository.