IA Squad
BuscarEN
python · lemurAtenção

lemur: Vulnerabilidade de autorização insuficiente no endpoint PUT /api/1/roles/<id>

O endpoint PUT /api/1/roles/<id> em lemur/roles/views.

26 Jun 2026Leitura 1 minSeveridade: agende este mês

O que mudou

O endpoint PUT /api/1/roles/<id> em lemur/roles/views.py permite que qualquer membro de uma role modifique o nome e a lista de membros dessa role, devido a uma verificação de autorização insuficiente (apenas RoleMemberPermission, que é OR-semântico para admin ou membro). O endpoint DELETE exige corretamente permissão de admin.

Quem isso afeta

Todas as instalações do Lemur onde usuários não-admin são membros de roles que concedem acesso a certificados ou autoridades. Atacantes que são membros de uma role podem adicionar ou remover outros usuários, renomear a role e escalar privilégios lateralmente.

O que fazer hoje

Aplique a correção adicionando o decorador @admin_permission.require(http_exception=403) ao método put em lemur/roles/views.py, espelhando o handler de delete. Alternativamente, implemente uma classe de permissão dedicada para ownership de role, se a delegação seletiva for desejada.

A esteira
Coletado Auditado Redigido Publicado