
PT Project Notebooks 1.0.0 - 1.1.3 - Falta de Autorização para Escalação de Privilégio Não Autenticado
PT Project Notebooks 1.0.0 - 1.1.3 - Autorização Ausente para Escalação de Privilégios Não Autenticada
PoC e auxiliar de exploit para PT Project Notebooks versões 1.0.0–1.1.3: Autorização ausente em
wpnb_pto_new_users_add()permite que atacantes não autenticados elevem os privilégios de um usuário escolhido para Administrador viaadmin-ajax.php.
O plugin PT Project Notebooks para WordPress é vulnerável a Escalação de Privilégios devido à ausência de autorização na função wpnb_pto_new_users_add() nas versões 1.0.0 a 1.1.3. Isso possibilita que atacantes não autenticados elevem privilégios para os de um Administrador para um ID de usuário especificado.
wp-content/plugins/project-notebooks/readme.txt e extrai a Stable tag para confirmar que o alvo é ≤ 1.1.3.custom.nonce e custom.ajax_url injetados pelo plugin na página (via wp_localize_script).admin-ajax.php com action=wpnb_pto_new_users_add, o nonce descoberto, ids=<UserID> e user_type=2 para copiar todas as capacidades de Administrador para o usuário alvo.wordpress_logged_in_* correspondente para que wp_verify_nonce() funcione.python3 CVE-2025-5304.py -u "http://TARGET/wordpress" -id 28
python3 CVE-2025-5304.py -u "http://TARGET/wordpress" -id 28 -c "wordpress_logged_in_...=..."
CVE-2025-5304.py -help
usage: t.py [-h] -u URL -id ID [-c COOKIE] [--skip-version]
CVE-2025-5304 (Nxploited Edition)
options:
-h, --help show this help message and exit
-u, --url URL Target WordPress site URL (e.g. http://127.0.0.1/wordpress)
-id, --id ID User ID to escalate (e.g. 28)
-c, --cookie COOKIE Optional Cookie header value for session-bound nonces
--skip-version Skip readme.txt version check
-u / --url — URL base do site; a ferramenta normaliza e lê o readme do plugin e a página inicial.-id / --id — ID numérico do usuário WordPress a ser escalado (Subscriber é suficiente).-c / --cookie — Valor completo do cabeçalho Cookie (ex.: wordpress_logged_in_*=...) necessário se o nonce estiver vinculado à sessão.--skip-version — Pula a verificação da Stable tag no readme.txt (útil quando o readme está oculto ou personalizado).Notas sobre nonce e cookie
custom.nonce estiver visível em uma janela privada/anônima, ele é público — nenhum cookie é necessário.wordpress_logged_in_* com -c.custom.ajax_url (esquema/host/porta/caminho) mostrado no código-fonte da página.Este repositório, PoC e código são fornecidos apenas para fins educacionais e testes de segurança autorizados. Você é o único responsável por garantir que possui permissão explícita para testar alvos. O autor não assume nenhuma responsabilidade por uso indevido ou danos decorrentes do uso deste projeto.
Por: Khaled Alenazi (Nxploited)