hacktricks/network-services-pentesting/cassandra.md
2023-06-03 01:46:23 +00:00

3.2 KiB

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 bajo costo, proporcionando alta disponibilidad sin un solo punto de falla. Es un tipo de base de datos NoSQL.
En varios casos, encontrarás que cassandra acepta cualquier credencial (ya que no hay ninguna configurada) y podrás enumerar la base de datos.

Puertos predeterminados: 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

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

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

Fuerza bruta

Shodan

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

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥