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-19089-WooCommerce-Tyche — Repositório de pesquisa para CVE-2026-19089, uma vulnerabilidade de execução remota de comandos em WooCommerce Product Input Fields da Tyche Softwares. Contém script de pesquisa preliminar e notas para testes autorizados em laboratório. | Kitploit
Ferramentas/GitHubGitHub/abraxas/cve-2026-19089-woocommerce-tyche
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebAprendizado e Educação
GitHubabraxas/cve-2026-19089-woocommerce-tyche

CVE-2026-19089-WooCommerce-Tyche

Repositório de pesquisa para CVE-2026-19089, uma vulnerabilidade de execução remota de comandos em WooCommerce Product Input Fields da Tyche Softwares. Contém script de pesquisa preliminar e notas para testes autorizados em laboratório.

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

banner

CVE-2026-19089

Product Input Fields for WooCommerce < 2.0.2 - upload arbitrário de arquivo sem autenticação

O plugin Product Input Fields for WooCommerce da Tyche Softwares não valida os tipos de arquivo enviados quando a configuração de tipos aceitos do campo é deixada vazia (sua própria documentação anuncia isso como "aceitar todos os arquivos"). Um visitante não autenticado pode anexar um arquivo arbitrário ao adicionar ao carrinho, concluir o checkout e recuperar o objeto no diretório de upload do plugin. Em hosts que executam essa árvore como PHP, o mesmo caminho é execução remota de código.

CVECVE-2026-19089
CWECWE-434: Unrestricted Upload of File with Dangerous Type
CVSS 3.19.8 Crítico (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
FornecedorTyche Softwares
ProdutoProduct Input Fields for WooCommerce (product-input-fields-for-woocommerce)
Afetado2.0.0 até 2.0.1 (plugin anterior a 2.0.2)
Corrigido2.0.2
RelacionadoCVE-2024-13359 (AFU limitado até 1.12.0)
CNAWPScan

Este repositório contém uma prova de conceito do Abraxas Labs para testes autorizados apenas - divulgação ao fornecedor, reprodução em laboratório ou um host para o qual você tenha permissão escrita de avaliação.

Executei o cliente contra uma loja WooCommerce local com Product Input Fields 2.0.1, checkout de visitante mais Pagamento na Entrega, e um campo File global cujos tipos aceitos estavam em branco. O script prepara o upload e o checkout; ele não envia um webshell.


Resumo

Um campo de entrada de produto do tipo File é vinculado ao formulário de adicionar ao carrinho da loja como alg_wc_pif_global_* / alg_wc_pif_local_*. Quando os tipos de arquivo aceitos estão vazios, o plugin armazena o que o visitante enviou. Após um pedido bem-sucedido, o arquivo é persistido em wp-content/uploads/product_input_fields/, normalmente nomeado {item_id}_{original_filename}.

Os sites ficam expostos quando todas estas condições são verdadeiras:

  1. O Product Input Fields está ativo em uma versão 2.x vulnerável (anterior a 2.0.2).
  2. Pelo menos um campo de entrada do tipo File está anexado a um produto publicado.
  3. A lista de tipos aceitos desse campo está vazia.
  4. O checkout de visitante (ou qualquer checkout acessível) consegue concluir um pedido para que o upload seja efetivado.

Nessas condições, o impacto é escrita arbitrária de arquivo como o usuário web. Se o diretório de upload for executável, isso significa tomada de controle do site.


Notas técnicas

O cliente permanece na loja. Ele não inclui um webshell PHP nem um reverse shell.

  1. Sondagem - GET na URL do produto, coleta os nomes dos campos de arquivo do PIF e o id do produto em add-to-cart.
  2. Estágio 1 - POST de adicionar ao carrinho com um marcador PNG benigno (image/png) sob o nome do campo PIF. O nome de arquivo padrão é pifx.php para que um laboratório possa ver se o plugin permitiu uma extensão perigosa. O marcador não é PHP executável.
  3. Estágio 2 - checkout de visitante via /?wc-ajax=checkout com Pagamento na Entrega.
  4. Estágio 3 - segue um redirect de checkout, se presente, depois varre wp-content/uploads/product_input_fields/{1..499}_{name} e POST x procurando pela testemunha SHELL_OK. [ LIVE ] só é impresso quando essa testemunha retorna.

Prova de conceito

CVE-2026-19089-WooCommerce-Tyche-Abraxas-Labs.py é um pequeno cliente Python 3: banner figlet colorido, depois os quatro passos acima. Ele se comunica apenas com as URLs que você passa na linha de comando.

Requisitos

  • Python 3.9+
  • requests

No macOS com Homebrew Python (PEP 668), use um venv em vez de um pip install do sistema:

python3 -m venv .venv
.venv/bin/pip install requests

Uso

CVE-2026-19089-WooCommerce-Tyche-Abraxas-Labs.py <base_url> <product_url> [shell_name]
.venv/bin/python3 CVE-2026-19089-WooCommerce-Tyche-Abraxas-Labs.py \
  https://shop.example \
  https://shop.example/product/demo/

Um terceiro argumento define o nome do arquivo enviado; o padrão é pifx.php.

Com menos de dois argumentos, o script imprime o banner e as instruções de uso, depois sai com 1. Essa é uma forma segura de confirmar que o cliente inicia.

Pré-condições do laboratório

WooCommerce com checkout de visitante e um gateway utilizável (o cliente envia payment_method=cod), Product Input Fields anterior a 2.0.2, e um produto publicado cujo campo File aceita qualquer tipo. Contra 2.0.2+ ou um campo com uma lista de permissões restrita, o objeto não deve ser armazenado como um upload .php.

Não aponte isto para nenhum host que você não possua ou para o qual não tenha autorização escrita de teste.


Mitigação

  • Correção: atualize o Product Input Fields for WooCommerce para 2.0.2 ou posterior a partir do diretório de plugins do WordPress.org.
  • Solução alternativa temporária: defina uma lista explícita de tipos aceitos em cada campo File (somente imagens, nunca vazia). Confirme que o diretório de uploads não executa PHP.
  • Após um incidente suspeito, inspecione wp-content/uploads/product_input_fields/ (e woocommerce_uploads/alg_uploads/product_input_fields/ em alguns layouts), remova objetos inesperados e rotacione os segredos de wp-admin.

Referências

  • CVE-2026-19089
  • NVD
  • WPScan advisory
  • Wordfence: Product Input Fields for WooCommerce <= 2.0.1 - Unauthenticated Arbitrary File Upload
  • CVE-2024-13359

Aviso legal

Apenas para uso em pesquisa e educacional. Não execute, implante ou use este material contra qualquer host, a menos que você tenha permissão escrita explícita tanto da parte que hospeda este repositório quanto do proprietário dos sistemas alvo.

Abraxas Labs · abraxaslabs.tech · github.com/abraxas · @abraxas_null

Baixar ferramenta