5671,5672 - Pentesting AMQP
Reading time: 4 minutes
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 디스코드 그룹 또는 텔레그램 그룹에 참여하거나 트위터 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.
기본 정보
From cloudamqp:
RabbitMQ는 메시지 브로커 또는 _큐 관리자_로도 알려진 메시지 큐 소프트웨어입니다. 간단히 말하면, 메시지를 전송하기 위해 애플리케이션이 연결되는 큐가 정의된 소프트웨어입니다.
메시지는 어떤 종류의 정보도 포함할 수 있습니다. 예를 들어, 다른 애플리케이션(다른 서버에 있을 수도 있음)에서 시작해야 하는 프로세스나 작업에 대한 정보가 포함될 수 있으며, 단순한 텍스트 메시지일 수도 있습니다. 큐 관리자 소프트웨어는 수신 애플리케이션이 연결되어 큐에서 메시지를 가져갈 때까지 메시지를 저장합니다. 수신 애플리케이션은 그 후 메시지를 처리합니다.
Definition from .
기본 포트: 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
Brute Force
Other RabbitMQ ports
In https://www.rabbitmq.com/networking.html you can find that rabbitmq는 여러 포트를 사용합니다:
- 1883, 8883: (MQTT 클라이언트 TLS 없이 및 TLS와 함께, MQTT 플러그인이 활성화된 경우. 여기에서 MQTT를 펜테스트하는 방법에 대해 더 알아보세요.
- 4369: epmd, RabbitMQ 노드 및 CLI 도구에서 사용하는 피어 발견 서비스. 이 서비스를 펜테스트하는 방법에 대해 더 알아보세요.
- 5672, 5671: TLS 없이 및 TLS와 함께 AMQP 0-9-1 및 1.0 클라이언트에서 사용
- 15672: HTTP API 클라이언트, 관리 UI 및 rabbitmqadmin (단, 관리 플러그인이 활성화된 경우). 이 서비스를 펜테스트하는 방법에 대해 더 알아보세요.
- 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 지원하기
- 구독 계획 확인하기!
- **💬 디스코드 그룹 또는 텔레그램 그룹에 참여하거나 트위터 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.