5671,5672 - Pentesting AMQP

Reading time: 6 minutes

tip

学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)

支持 HackTricks

基本信息

来自 cloudamqp:

RabbitMQ 是一种 消息队列软件,也被称为 消息代理队列管理器。简单来说;它是定义队列的软件,应用程序连接到这些队列以传输消息。
消息可以包含任何类型的信息。例如,它可以包含关于应该在另一个应用程序上启动的进程或任务的信息(甚至可以在另一台服务器上),或者它可以只是一个简单的文本消息。队列管理软件会存储消息,直到接收应用程序连接并从队列中取出一条消息。接收应用程序随后处理该消息。
定义来自 .

默认端口: 5672,5671

PORT     STATE SERVICE VERSION
5672/tcp open  amqp    RabbitMQ 3.1.5 (0-9)

枚举

手动

python
import amqp
#By default it uses default credentials "guest":"guest"
conn = amqp.connection.Connection(host="<IP>", port=5672, virtual_host="/")
conn.connect()
for k, v in conn.server_properties.items():
print(k, v)

自动

bash
nmap -sV -Pn -n -T4 -p 5672 --script amqp-info <IP>

PORT     STATE SERVICE VERSION
5672/tcp open  amqp    RabbitMQ 3.1.5 (0-9)
| amqp-info:
|   capabilities:
|     publisher_confirms: YES
|     exchange_exchange_bindings: YES
|     basic.nack: YES
|     consumer_cancel_notify: YES
|   copyright: Copyright (C) 2007-2013 GoPivotal, Inc.
|   information: Licensed under the MPL.  See http://www.rabbitmq.com/
|   platform: Erlang/OTP
|   product: RabbitMQ
|   version: 3.1.5
|   mechanisms: PLAIN AMQPLAIN
|_  locales: en_US

暴力破解

其他RabbitMQ端口

https://www.rabbitmq.com/networking.html 中可以找到 rabbitmq使用多个端口

  • 1883, 8883: (MQTT客户端 无TLS和有TLS,如果启用了 MQTT插件了解如何对MQTT进行渗透测试)。
  • 4369: epmd,RabbitMQ节点和CLI工具使用的对等发现服务。 了解如何对该服务进行渗透测试
  • 5672, 5671: AMQP 0-9-1和1.0客户端无TLS和有TLS使用
  • 15672: HTTP API 客户端,管理UIrabbitmqadmin(仅在启用 管理插件 的情况下)。 了解如何对该服务进行渗透测试
  • 15674: STOMP-over-WebSockets客户端(仅在启用 Web STOMP插件 的情况下)
  • 15675: MQTT-over-WebSockets客户端(仅在启用 Web MQTT插件 的情况下)
  • 15692: Prometheus指标(仅在启用 Prometheus插件 的情况下)
  • 25672: 用于节点间和CLI工具通信(Erlang分发服务器端口),并从动态范围分配(默认情况下限制为单个端口,计算为AMQP端口 + 20000)。除非这些端口上的外部连接确实必要(例如,集群使用 联邦 或CLI工具在子网外的机器上使用),否则这些端口不应公开暴露。有关详细信息,请参见 网络指南仅有9个端口在互联网上开放
  • 35672-35682: 用于CLI工具(Erlang分发客户端端口)与节点通信,并从动态范围分配(计算为服务器分发端口 + 10000 到服务器分发端口 + 10010)。有关详细信息,请参见 网络指南
  • 61613, 61614: STOMP客户端 无TLS和有TLS(仅在启用 STOMP插件 的情况下)。少于10个设备开放此端口,主要用于DHT节点的UDP。

Shodan

  • AMQP

tip

学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)

支持 HackTricks