Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
bitwarden-cipher-create-acl — Bitwarden Server v2026.9.2 - Alta - IDOR - inserir itens de cofre descriptografáveis em coleções nas quais o chamador não pode escrever | Kitploit
Ferramentas/GitHubGitHub/abraxas/bitwarden-cipher-create-acl
Autenticação e AutorizaçãoAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoLabs e Prática
GitHub

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
abraxas/bitwarden-cipher-create-acl

bitwarden-cipher-create-acl

Bitwarden Server v2026.9.2 - Alta - IDOR - inserir itens de cofre descriptografáveis em coleções nas quais o chamador não pode escrever

Ver Repositório
111há 13 diasAinda não revisado

Abraxas Labs - bitwarden-cipher-create-acl

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  bitwarden-cipher-create-acl

bitwarden-cipher-create-acl

Bitwarden Server v2026.9.2 - Bitwarden

A criação de cipher de organização no caminho do Entity Framework (MariaDB, Postgres, SQLite) descarta o id do chamador antes da vinculação à coleção. Um membro confirmado pode inserir um item com chave de organização em uma coleção na qual não pode escrever. Os membros da coleção o sincronizam como um login compartilhado normal.

IDainda sem CVE
CWECWE-863 / CWE-639
CVSSAlto: 7.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
ProdutoBitwarden Server
Afetadov2026.9.2 (9ee4e0eb) lite EF (MariaDB / Postgres / SQLite). MSSQL/Dapper mantém @UserId.
Autenticaçãomembro confirmado da organização
LicençaGNU Affero GPL v3.0
Labsomente 127.0.0.1

O que um atacante pode fazer

O atacante adiciona itens de cofre a uma coleção compartilhada. Ele não lê nem substitui os segredos já presentes nela.

Um membro confirmado da organização já possui a chave da organização, então o novo item é descriptografado para todos que podem ver aquela coleção. O Bitwarden o exibe como um login, nota, cartão ou chave SSH compartilhado normal de dentro do cofre da empresa.

  • Phishing a partir do cofre. Insira um login com nome semelhante a um item compartilhado real (Okta, GitHub, VPN, Payroll) cuja URI aponta para um host controlado pelo atacante. Os membros da coleção o abrem pelo Bitwarden e caem na página do atacante, ou o preenchimento automático é feito contra um sósia.
  • Envenenar operações. Insira uma nota segura ou login que pareça uma rotação (nova chave AWS, chave SSH do bastion, senha do BD após alteração). Alguém a copia para produção ou para um terminal.
  • Permanecer após ser removido. A criação é um novo cipher na coleção. Ele permanece para todos com acesso após a remoção da associação do atacante.
  • Contornar somente leitura. Um contratado que só pode ler Production ainda pode inserir um novo item nela no lite EF.

Se ele não tiver acesso à coleção alvo, POST /api/ciphers/create pode retornar 404 depois que a gravação já foi confirmada. As vítimas ainda recebem o item na sincronização.

Como eu encontrei

Fixe a versão bitwarden/server v2026.9.2 (9ee4e0eb) após a onda de 2026: TDE de solicitação de admin (CVE-2026-60104), truncamento de ExternalId de SSO (CVE-2026-101878), coleções vazias na importação de organização (CVE-2026-43638). Essas estão fechadas. A ACL de coleção na criação não estava.

CiphersController.PostCreate apenas verifica a associação à organização e então passa skipPermissionCheck: true quando OrganizationId está definido. SaveDetailsAsync então trata "esta coleção existe na organização" como a única verificação de coleção.

Lite MariaDB/Postgres/SQLite usam EF. CreateAsyncReturnCipher define cipher.UserId = null porque um id de organização está presente, e então passa esse null para UpdateCollectionsAsync. User id nulo significa todas as coleções na organização. SQL Server Dapper mantém @UserId para Cipher_UpdateCollections (ReadOnly = 0). Esse caminho é o negativo.

Caminhos errados já registrados: tratar POST /organizations da nuvem como a criação self-host (é [NotSelfHostedOnly]; o lite exige um arquivo de licença, então o lab semeia linhas de organização após o registro); inserir em uma coleção que o chamador não pode ler e interpretar o HTTP 404 como falha (a linha CollectionCipher já está confirmada); assumir que o MSSQL lite mostraria isso (o Dapper não descarta o id do chamador); deixar BW_ENABLE_ADMIN desativado para que o lite nunca migre User / OrganizationDomain (o admin é o migrador EF nesta imagem); omitir Bitwarden-Client-Version em /identity/connect/token e ver o password grant retornar 400. Um reverse shell. Teatro.

Lab

cd lab
./run.sh

Alvo somente http://127.0.0.1:18160. Imagem ghcr.io/bitwarden/lite:2026.9.2 mais MariaDB.

SUCCESS BITWARDEN-CIPHER-CREATE-ACL create-http=404 collectioncipher=1 victim-sync-has-cipher=yes cipher=<id> negative-http=404 readonly-http=200 BITWARDEN-CIPHER-CREATE-ACL-WITNESS

A inserção sem acesso retorna 404 depois que CollectionCipher é confirmada. GET /api/ciphers e /api/sync da vítima contêm ambos o novo id. Somente leitura em B retorna 200 e ainda insere. Coleção de organização estrangeira permanece 404 sem linha de junção.

A correção

Passe o id do usuário que salva para o UpdateCollectionsAsync do EF da mesma forma que CipherDetails_CreateWithCollections ainda passa @UserId depois de anular a coluna UserId armazenada. Não trate um usuário nulo como "todas as coleções" no caminho de criação de membro. Existência na organização não é acesso de escrita.

Referências

  • github.com/bitwarden/server tag v2026.9.2
  • CiphersController.cs (Post, PostCreate)
  • CipherService.cs (SaveDetailsAsync)
  • CipherRepository.cs (CreateAsyncReturnCipher, UpdateCollectionsAsync)
  • CWE-863

Licença

GNU Affero GPL v3.0

Baixar ferramenta