9042/9160 - Pentesting Cassandra

Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Equipo Rojo de AWS de HackTricks)!

Otras formas de apoyar a HackTricks:

Información Básica

Apache Cassandra es una base de datos distribuida altamente escalable y de alto rendimiento diseñada para manejar grandes cantidades de datos en muchos servidores de baja calidad, proporcionando alta disponibilidad sin punto único de fallo. Es un tipo de base de datos NoSQL.

En varios casos, es posible que encuentres que Cassandra acepta cualquier credencial (ya que no hay ninguna configurada) y esto podría potencialmente permitir a un atacante enumerar la base de datos.

Puerto predeterminado: 9042,9160

PORT     STATE SERVICE   REASON
9042/tcp open  cassandra-native Apache Cassandra 3.10 or later (native protocol versions 3/v3, 4/v4, 5/v5-beta)
9160/tcp open  cassandra syn-ack

Enumeración

Manual

pip install cqlsh
cqlsh <IP>
#Basic info enumeration
SELECT cluster_name, thrift_version, data_center, partitioner, native_protocol_version, rack, release_version from system.local;
#Keyspace enumeration
SELECT keyspace_name FROM system.schema_keyspaces;
desc <Keyspace_name>    #Decribe that DB
desc system_auth        #Describe the DB called system_auth
SELECT * from system_auth.roles;  #Retreive that info, can contain credential hashes
SELECT * from logdb.user_auth;    #Can contain credential hashes
SELECT * from logdb.user;
SELECT * from configuration."config";

Automatizado

No hay muchas opciones aquí y nmap no obtiene mucha información.

nmap -sV --script cassandra-info -p <PORT> <IP>

Shodan

port:9160 Cluster port:9042 "Versión de protocolo no válida o no compatible"

Aprende hacking en AWS desde cero hasta convertirte en un experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Última actualización