
Verificatore Go non distruttivo che controlla se un'istanza di Camaleon CMS applica la correzione di autorizzazione per CVE-2026-102261 nell'endpoint di ritaglio dei media.
Questo progetto contiene un verificatore non distruttivo per confermare se un'istanza autorizzata di Camaleon CMS applica l'autorizzazione introdotta nella versione 2.9.3.
Il problema riguarda POST /admin/media/crop in Camaleon CMS fino alla 2.9.2. Un utente con :manage, :media, ma senza :manage, :users, poteva fornire l'ID di un altro utente in saved_avatar ed effettuare una scrittura dell'avatar al di fuori del proprio oggetto autorizzato. La correzione richiede :manage, :users per qualsiasi destinazione diversa dall'utente stesso.
Il verificatore invia un singolo POST autenticato con:
saved_avatar di un account usa e getta diverso dall'account autenticato;cp_img_path deliberatamente inesistente.Nella versione corretta, l'autorizzazione avviene prima di qualsiasi elaborazione del file e l'applicazione risponde con un reindirizzamento (normalmente 302). In una versione precedente, la richiesta non viene negata in questa fase e il risultato è solo INCONCLUSIVO: questo programma non invia immagini, non legge dati e non tenta di modificare alcun avatar.
Crea due account di test sullo stesso sito:
:manage, :media, ma senza :manage, :users;Ottieni il cookie di sessione del primo account ed esegui:
go test ./...
go run . \
--i-own-this-lab \
--url http://127.0.0.1:3000 \
--cookie '_session_id=COLOQUE_A_SESSAO_DE_TESTE_AQUI' \
--nonself-user-id 42
PROTECTED significa che l'endpoint ha negato l'operazione prima di elaborare il percorso dell'immagine. INCONCLUSIVE richiede la validazione della versione installata e l'aggiornamento; non è una conferma di sfruttamento.
Aggiorna a Camaleon CMS 2.9.3 o successivo. La patch è c143e145caa600947e70a240e87f2fed889149d3.