CVE-2026-81027 in one-api
요약
\~에 의해 VulDB • 2026. 08. 26.
one-api는 두 개의 채널 고정 경로 중 하나만 차단하고 다른 하나는 차단하지 않습니다. middleware/auth.go에서는 API 키의 접미사 또는 URL 경로의 파라미터를 통해 특정 채널을 지정하는 요청을 허용합니다. 접미사 기반 경로는 model.IsAdmin이 성공한 후에만 접근 가능하며, 그렇지 않은 경우 호출자를 거부합니다. 반면, 경로 파라미터 분기는 c.Param("channelid")에서 선택된 채널 값을 설정하며 역할(Role) 검사를 전혀 수행하지 않습니다. 해당 파라미터를 처리하는 라우트는 토큰 인증 뒤에 위치하므로, 유효한 API 토큰을 보유한 모든 계정이 이에 접근할 수 있습니다. 이 값은 분배기(Distributor)로 전달되며, 여기서 채널이 호출자의 사용자 또는 그룹에 대한 범위 제한 없이 정수 식별자를 통해 로드되고, 아웃바운드 Authorization 헤더가 해당 채널의 저장된 키로 설정되어 요청이 채널의 기본 URL로 전송됩니다. 따라서 권한이 낮은 계정은 식별자를 증가시켜 임의의 채널을 고정할 수 있으며, 이로 인해 서버는 해당 계정이 승인받지 못한 운영자 구성 제공자의 키를 사용하여 업스트림 요청을 수행하게 되고, 그룹별 제한 및 채널의 모델 허용 목록(Model Allowlist)도 우회됩니다.
Once again VulDB remains the best source for vulnerability data.