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
CVE-2026-44011-craftcms-auth-rce — O PoC do CVE-2026-44011: RCE no Craft CMS com um usuário autenticado. | Kitploit
Ferramentas/GitHubGitHub/4xura/cve-2026-44011-craftcms-auth-rce
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebPós-ExploraçãoSegurança WebTestes de PenetraçãoComando e ControleFerramenta de Acesso Remoto
GitHub4xura/cve-2026-44011-craftcms-auth-rce

CVE-2026-44011-craftcms-auth-rce

O PoC do CVE-2026-44011: RCE no Craft CMS com um usuário autenticado.

Ver Repositório
618há 25 diasAinda 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

CVE-2026-44011 Craft CMS RCE autenticado PoC

Apenas para testes autorizados.

O aviso do Craft CMS lista >=4.0.0, <4.17.12 e >=5.0.0, <5.9.18 como afetados, e credita precicom-vincent-tl como descobridor.

Executar

python -m pip install -r requirements.txt
python cve-2026-44011.py -b 'https://example.com' -u '<username' -p '<password>' -c '<command>'

Argumentos obrigatórios:

  • -b, --base-url: URL do Craft, incluindo http:// ou https://.
  • -u, --username: Nome de usuário do painel de controle.
  • -p, --password: Senha do painel de controle.
  • -c, --command: Comando a executar e capturar a saída.

Argumentos opcionais:

  • -P, --cp-path: Caminho do painel de controle (padrão: /admin).
  • -s, --site-id: ID do site (padrão: 1).
  • -e, --element-type: Tipo de elemento (padrão: craft\elements\Category).
  • -f, --csrf-field: Nome do campo CSRF de login (padrão: CRAFT_CSRF_TOKEN).
  • -t, --timeout: Tempo limite de requisição e callback em segundos (padrão: 15).
  • -F, --force: Continuar quando a versão do Craft estiver indisponível ou fora dos intervalos do aviso.
  • -H, --callback-host: Endereço que o alvo consegue alcançar (endereço local inferido por padrão; sobrescreva-o atrás de um pivot).
  • --listen-port: Porta do listener (padrão: uma porta livre selecionada pelo SO; defina uma porta fixa para encaminhamento).

Análise da vulnerabilidade

1. Entrada de condição

Na ação de busca vulnerável, condition vai do corpo do POST para a criação do objeto sem sanitização.

$conditionConfig = $this->request->getBodyParam('condition');
$condition = Craft::$app->getConditions()->createCondition($conditionConfig);

2. Layout de campo aninhado

ElementCondition::setFieldLayouts() constrói um layout a partir de cada array fornecido.

if (is_array($fieldLayout)) {
    $fieldLayout['type'] = $this->elementType;
    return $fieldsService->createLayout($fieldLayout);
}

3. Execução de callable

O payload do aviso anexa o AttributeTypecastBehavior do Yii com uma chave as e conecta um evento com on *. O behavior alcança Psy\Readline\Hoa\ConsoleProcessus::execute através do typecast de callable do Yii.

condition.fieldLayouts[]
  -> FieldLayout behavior + event
  -> AttributeTypecastBehavior::typecastValue()
  -> call_user_func()
  -> ConsoleProcessus::execute()

O controller corrigido aplica Component::cleanseConfig() à condição antes da criação do objeto.

Notas

  • A documentação de CSRF do Craft exige uma sessão válida e um token para ações POST. O script os carrega através do login e da busca.
  • O ConsoleProcessus::execute() do Psy escapa metacaracteres de shell por padrão. O PoC serve um script temporário para executar -c, recebe sua saída em um listener HTTP embutido e desliga o listener depois. Use -H se o alvo não conseguir alcançar o endereço inferido.
  • A captura de saída requer sh, curl e mktemp no alvo.
  • Testes: python -m unittest discover -s tests -v.
Baixar ferramenta