9.1 KiB
5671,5672 - Pentesting AMQP
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Osnovne informacije
Sa cloudamqp:
RabbitMQ je softver za redove poruka poznat i kao message broker ili queue manager. Jednostavno rečeno, to je softver gde se definišu redovi, na koje se aplikacije povezuju kako bi prenele poruku ili poruke.
Poruka može sadržati bilo kakvu vrstu informacija. Na primer, može sadržati informacije o procesu ili zadatku koji treba da se pokrene na drugoj aplikaciji (koja može biti čak i na drugom serveru), ili može biti samo jednostavna tekstualna poruka. Softver za upravljanje redovima poruka čuva poruke dok se poveže aplikacija koja prima poruku i preuzme je sa reda. Zatim, aplikacija koja prima poruku obrađuje poruku.
Definicija sa .
Podrazumevani port: 5672,5671
PORT STATE SERVICE VERSION
5672/tcp open amqp RabbitMQ 3.1.5 (0-9)
Enumeracija
Ručna
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)
Automatsko
Automatsko testiranje je proces u kojem se koriste alati i skripte za automatizaciju testiranja mrežnih servisa. Ovo omogućava brže i efikasnije testiranje, smanjujući potrebu za ručnim intervencijama. Automatsko testiranje može se koristiti za provjeru sigurnosti AMQP (Advanced Message Queuing Protocol) servisa na portovima 5671 i 5672.
Alati za automatsko testiranje AMQP servisa
Postoji nekoliko alata koji se mogu koristiti za automatsko testiranje AMQP servisa:
-
RabbitMQ Management Plugin: Ovaj alat pruža web sučelje za upravljanje RabbitMQ serverom. Može se koristiti za provjeru statusa i konfiguracije AMQP servisa.
-
amqp-tools: Ovaj alat pruža skup komandi za interakciju s AMQP servisima. Može se koristiti za slanje i primanje poruka, kao i za provjeru statusa i konfiguracije servisa.
-
nmap: Ovaj alat se može koristiti za skeniranje otvorenih portova na ciljnom sustavu. Može se koristiti za otkrivanje AMQP servisa na portovima 5671 i 5672.
Automatsko testiranje AMQP servisa
Automatsko testiranje AMQP servisa može se provesti koristeći alate i skripte za slanje i primanje poruka, provjeru statusa i konfiguracije servisa, kao i za otkrivanje ranjivosti. Ovi alati omogućavaju brzo i efikasno testiranje sigurnosti AMQP servisa na portovima 5671 i 5672.
Primjer automatskog testiranja AMQP servisa
Evo primjera kako se može provesti automatsko testiranje AMQP servisa koristeći alat amqp-tools:
-
Instalirajte amqp-tools na svoj sustav.
-
Pokrenite naredbu
amqp-consume
kako biste primili poruke s AMQP servisa.
amqp-consume -u amqp://username:password@hostname:5672/queue_name
- Pokrenite naredbu
amqp-publish
kako biste poslali poruku na AMQP servis.
amqp-publish -u amqp://username:password@hostname:5672/queue_name -b "Hello, World!"
- Provjerite status i konfiguraciju AMQP servisa koristeći naredbu
amqp-info
.
amqp-info -u amqp://username:password@hostname:5672
Ovaj primjer pokazuje kako se može koristiti alat amqp-tools za automatizaciju testiranja AMQP servisa. Slično tome, možete koristiti i druge alate i skripte za automatizaciju testiranja AMQP servisa na portovima 5671 i 5672.
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
Ostali RabbitMQ portovi
Na https://www.rabbitmq.com/networking.html možete pronaći da rabbitmq koristi nekoliko portova:
- 1883, 8883: (MQTT klijenti bez i sa TLS-om, ako je MQTT plugin omogućen. Saznajte više o pentestiranju MQTT-a ovde.
- 4369: epmd, servis za otkrivanje čvorova koji se koristi od strane RabbitMQ čvorova i CLI alata. Saznajte više o pentestiranju ovog servisa ovde.
- 5672, 5671: koristi se od strane AMQP 0-9-1 i 1.0 klijenata bez i sa TLS-om
- 15672: klijenti HTTP API, management UI i rabbitmqadmin (samo ako je management plugin omogućen). Saznajte više o pentestiranju ovog servisa ovde.
- 15674: klijenti STOMP preko WebSockets-a (samo ako je Web STOMP plugin omogućen)
- 15675: klijenti MQTT preko WebSockets-a (samo ako je Web MQTT plugin omogućen)
- 15692: Prometheus metrike (samo ako je Prometheus plugin omogućen)
- 25672: koristi se za komunikaciju između čvorova i CLI alata (Erlang distribucijski server port) i dodeljuje se iz dinamičkog opsega (podrazumevano ograničeno na jedan port, izračunato kao AMQP port + 20000). Ovi portovi ne bi trebali biti javno izloženi osim ako eksterne veze na ovim portovima zaista nisu neophodne (na primer, klaster koristi federaciju ili se CLI alati koriste na mašinama van podmreže). Pogledajte vodič o mrežnom povezivanju za detalje. Samo 9 od ovih portova je otvoreno na internetu.
- 35672-35682: koristi se od strane CLI alata (Erlang distribucijski klijentski portovi) za komunikaciju sa čvorovima i dodeljuje se iz dinamičkog opsega (izračunato kao server distribucijski port + 10000 do server distribucijski port + 10010). Pogledajte vodič o mrežnom povezivanju za detalje.
- 61613, 61614: STOMP klijenti bez i sa TLS-om (samo ako je STOMP plugin omogućen). Manje od 10 uređaja sa ovim otvorenim portom i uglavnom UDP za DHT čvorove.
Shodan
AMQP
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.