hacktricks/network-services-pentesting/5671-5672-pentesting-amqp.md
2024-02-11 02:13:58 +00:00

8.5 KiB

5671,5672 - Pentesting AMQP

Jifunze kuhusu kudukua AWS kutoka mwanzo hadi kuwa bingwa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Taarifa Msingi

Kutoka cloudamqp:

RabbitMQ ni programu ya foleni ya ujumbe inayojulikana pia kama message broker au queue manager. Kwa ufupi, ni programu ambapo foleni zinatengenezwa, ambapo programu zinahusiana ili kuhamisha ujumbe au ujumbe.
Ujumbe unaweza kuwa na aina yoyote ya habari. Inaweza, kwa mfano, kuwa na habari kuhusu mchakato au kazi ambayo inapaswa kuanza kwenye programu nyingine (ambayo inaweza hata kuwa kwenye seva nyingine), au inaweza kuwa ujumbe wa maandishi tu. Programu ya queue-manager inahifadhi ujumbe hadi programu ya kupokea inapounganisha na kuchukua ujumbe kutoka kwenye foleni. Programu ya kupokea kisha inaprocess ujumbe.
Definition from .

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

Uchambuzi

Kwa Mkono

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)

Kiotomatiki

AMQP (Advanced Message Queuing Protocol) ni itifaki ya mawasiliano ambayo hutumiwa kwa ajili ya kuwasiliana na mifumo ya ujumbe. Inaruhusu programu mbalimbali kubadilishana ujumbe kwa njia ya njia ya ujumbe. Kwa mfano, inaweza kutumika kwa ajili ya kuwasiliana kati ya seva na wateja, au kati ya seva mbili.

Katika mchakato wa pentesting, ni muhimu kuelewa jinsi AMQP inavyofanya kazi na jinsi inavyoweza kudukuliwa. Hii inaweza kusaidia kugundua udhaifu na kuchukua hatua za kiusalama zinazofaa.

Kuna njia kadhaa za kiotomatiki za kufanya pentesting kwenye itifaki ya AMQP. Hapa kuna baadhi ya zana maarufu:

  • RabbitMQ-CLI: Hii ni zana ya amri ya mstari wa amri ambayo inaruhusu kufanya operesheni mbalimbali kwenye seva ya RabbitMQ. Inaweza kutumika kwa ajili ya kuchunguza mazingira ya RabbitMQ na kufanya majaribio ya kudukua.

  • AMQP-Client: Hii ni maktaba ya Python ambayo inaruhusu kuunda wateja wa AMQP na kufanya operesheni mbalimbali kama kutuma na kupokea ujumbe. Inaweza kutumika kwa ajili ya kujenga skana za kiotomatiki na kufanya majaribio ya kudukua.

  • Metasploit: Hii ni jukwaa la usalama ambalo linatoa zana mbalimbali za kudukua. Ina moduli kadhaa zinazohusiana na AMQP, ambazo zinaweza kutumika kwa ajili ya kufanya majaribio ya kudukua kwenye mifumo ya AMQP.

Kwa kutumia zana hizi za kiotomatiki, unaweza kufanya pentesting kwenye mifumo ya AMQP kwa njia ya haraka na yenye ufanisi. Hii inaweza kusaidia kugundua udhaifu na kuchukua hatua za kiusalama zinazofaa ili kulinda mifumo yako dhidi ya mashambulizi.

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

Bandari Nyingine za RabbitMQ

Katika https://www.rabbitmq.com/networking.html unaweza kupata kwamba rabbitmq hutumia bandari kadhaa:

Shodan

  • AMQP
Jifunze kuhusu kuhack AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks: