# 9042/9160 - Pentesting Cassandra
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 - 你在一个**网络安全公司**工作吗?你想在HackTricks中看到你的**公司广告**吗?或者你想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)! - 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品- [**The PEASS Family**](https://opensea.io/collection/the-peass-family) - 获得[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com) - **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f) 或者 [**telegram群组**](https://t.me/peass) 或者 **关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** - **通过向[hacktricks repo](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧**。
## 基本信息 Apache Cassandra是一种高度可扩展、高性能的分布式数据库,旨在处理大量数据并在许多普通服务器上提供高可用性,没有单点故障。它是一种NoSQL数据库。\ 在一些情况下,你会发现**cassandra接受任何凭据**(因为没有配置任何凭据),你将能够枚举数据库。 **默认端口:** 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 ``` ## 枚举 ### 手动枚举 Cassandra是一个开源的分布式数据库管理系统,它使用CQL(Cassandra Query Language)进行查询和操作。在进行Cassandra的手动枚举时,可以使用以下方法: 1. **CQLsh命令行工具**:CQLsh是Cassandra提供的命令行工具,可以使用它连接到Cassandra集群并执行CQL查询。可以使用`cqlsh`命令启动CQLsh,并使用`DESCRIBE KEYSPACES`命令列出所有的keyspaces(类似于数据库)。 2. **nodetool命令**:nodetool是Cassandra提供的管理工具,可以使用它获取有关Cassandra集群的信息。可以使用`nodetool status`命令获取集群的状态信息,包括节点的IP地址和端口号。 3. **JMX(Java Management Extensions)**:Cassandra使用JMX进行监控和管理。可以使用JConsole或JVisualVM等JMX客户端连接到Cassandra节点,并查看节点的运行状况、性能指标和配置信息。 4. **Cassandra的默认端口**:Cassandra的默认端口是9042(CQL)和7199(JMX)。可以使用端口扫描工具(如nmap)扫描目标主机的这些端口,以确定是否运行了Cassandra服务。 5. **Cassandra的Web管理界面**:Cassandra提供了一个Web管理界面,可以使用浏览器访问。默认情况下,该界面的URL是`http://:8888`。可以尝试访问该URL,查看是否可以获取到Cassandra的管理界面。 6. **Cassandra的日志文件**:Cassandra的日志文件中可能包含有关集群配置、错误信息和敏感信息的线索。可以查看Cassandra的日志文件,以获取有关集群的更多信息。 以上是一些手动枚举Cassandra的方法,通过这些方法可以获取有关Cassandra集群的信息,为后续的渗透测试工作提供基础。 ```bash pip install cqlsh cqlsh #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 #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"; ``` ### 自动化 这里没有太多选择,nmap无法获取太多信息。 ```bash nmap -sV --script cassandra-info -p ``` ### [**暴力破解**](../generic-methodologies-and-resources/brute-force.md#cassandra) ### **Shodan** `port:9160 Cluster`\ `port:9042 "Invalid or unsupported protocol version"`
☁️ HackTricks 云 ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 - 你在一家**网络安全公司**工作吗?想要在 HackTricks 中**宣传你的公司**吗?或者你想要**获取最新版本的 PEASS 或下载 HackTricks 的 PDF**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)! - 发现我们的独家 [**NFTs**](https://opensea.io/collection/the-peass-family) 集合——[**The PEASS Family**](https://opensea.io/collection/the-peass-family) - 获取[**官方 PEASS & HackTricks 商品**](https://peass.creator-spring.com) - **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass),或者**关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。** - **通过向 [hacktricks 仓库](https://github.com/carlospolop/hacktricks) 和 [hacktricks-cloud 仓库](https://github.com/carlospolop/hacktricks-cloud) 提交 PR 来分享你的黑客技巧**。