CVE-2026-81027 in one-api
Riassunto
di VulDB • 26/08/2026
one-api sblocca uno dei suoi due percorsi di "channel-pinning" e non l'altro. Il middleware/auth.go consente a una richiesta di specificare un canale specifico sia tramite un suffisso nella chiave API, sia attraverso un parametro del percorso URL (URL path parameter). Il percorso basato sul suffisso viene raggiunto solo dopo il successo dell'autenticazione model.IsAdmin e rifiuta altrimenti il chiamante, mentre il ramo dei parametri del percorso imposta il valore selected-channel da c.Param("channelid") senza alcuna verifica del ruolo. La rotta che gestisce tale parametro è protetta esclusivamente dall'autenticazione tramite token, quindi qualsiasi account dotato di un API token valido può accedervi. Il valore viene trasferito al distributor (distributore), che carica il canale utilizzando l'identificatore intero senza alcun vincolo all'utente o al gruppo del chiamante, e successivamente imposta l'intestazione Authorization in uscita sulla chiave memorizzata per quel canale, indirizzando la richiesta verso l'URL base del canale. Un account a bassa privilegio può quindi bloccare (pin) qualsiasi canale incrementando un identificatore, causando al server di effettuare richieste upstream utilizzando una chiave provider configurata dall'amministratore che all'account non era mai stata concessa, bypassando sia le restrizioni per gruppo sia la allowlist dei modelli del canale.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.