CVE-2026-81027
Təsvir
one-api iki kanal-sabitlemə (channel-pinning) yolundan birini məhdudlaşdırır, digərini isə yox. middleware/auth.go sorğuya ya API açarının sonluğu (suffix), ya da URL yol parametri vasitəsilə konkret kanalı adlandırmağa icazə verir. Suffix yolu yalnız model.IsAdmin uğurlu olduqdan sonra əlçatandır və əks halda çağıranı rədd edir, lakin yol-parametri budağı heç bir rol yoxlaması olmadan seçilmiş-kanal dəyərini c.Param("channelid") vasitəsilə təyin edir. Həmin parametrli marşrut yalnız token autentifikasiyasının arxasında yerləşir, buna görə də etibarlı API tokeni olan hər hansı hesab ona daxil ola bilir. Dəyər distribütora ötürülür, o isə kanalı çağıran istifadəçi və ya qrup ilə əlaqələndirmədən tam ədəd identifikatoru ilə yükləyir, daha sonra çıxan Authorization başlığını həmin kanalın saxlanılan açarına təyin edir və sorğunu kanalın baza URL-nə yönləndirir. Beləliklə, aşağı imtiyazlı bir hesab identifikatorunu artırmaqla hər hansı kanalı sabitleyə bilər ki, bu da serverin hesaba heç vaxt verilməmiş, operator tərəfindən konfiqurasiya edilmiş provayder açarını daşıyan yuxarı axın (upstream) sorğularını etməsinə səbəb olur və həm qrup üzrə məhdudiyyətləri, həm də kanalın model ağ siyahısını (allowlist) yan keçir.
Necə düzəltmək olar
Mənbələrdə bu zəiflik üçün düzəldilmiş versiya və ya yamaq keçidi yoxdur.
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| songquanpeng one-api | v ≤ 0.6.10 | — |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.