9042/9160 - Pentesting Cassandra

Support HackTricks

Podstawowe informacje

Apache Cassandra to wysoce skalowalna, wysokowydajna rozproszona baza danych zaprojektowana do obsługi dużych ilości danych na wielu serwerach komercyjnych, zapewniająca wysoką dostępność bez pojedynczego punktu awarii. Jest to rodzaj bazy danych NoSQL.

W kilku przypadkach możesz stwierdzić, że Cassandra akceptuje jakiekolwiek dane uwierzytelniające (ponieważ nie są skonfigurowane) i może to potencjalnie pozwolić atakującemu na enumerację bazy danych.

Domyślny port: 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

Enumeracja

Ręczna

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";

Zautomatyzowane

Nie ma tu wielu opcji, a nmap nie uzyskuje zbyt wielu informacji.

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

Shodan

port:9160 Cluster port:9042 "Invalid or unsupported protocol version"

Wsparcie HackTricks

Last updated