
Exploit per CVE-2023-37582 che prende di mira Apache RocketMQ, una piattaforma di messaggistica distribuita con bassa latenza, alta produttività e supporto per messaggistica transazionale, autenticazione e crittografia.
Apache RocketMQ è una piattaforma di messaggistica e streaming distribuita con bassa latenza, elevate prestazioni e affidabilità, capacità a livello di trilioni e scalabilità flessibile.
Offre una varietà di funzionalità:
Questo paragrafo ti guida attraverso i passaggi per installare RocketMQ in diversi modi. Per lo sviluppo e i test locali, verrà creata una sola istanza per ogni componente.
RocketMQ funziona su tutti i principali sistemi operativi e richiede solo una versione Java JDK 8 o superiore.
Per verificare, esegui java -version:
$ java -version
java version "1.8.0_121"
Per gli utenti Windows, fai clic qui per scaricare la release binaria 4.9.3 di RocketMQ,
decomprimila sul tuo disco locale, ad esempio D:\rocketmq.
Per gli utenti macOS e Linux, esegui i seguenti comandi:
# Scarica la release dal mirror Apache
$ wget https://archive.apache.org/dist/rocketmq/4.9.3/rocketmq-all-4.9.3-bin-release.zip
# Decomprimi la release
$ unzip rocketmq-all-4.9.3-bin-release.zip
Prepara un terminale e spostati nella directory bin estratta:
$ cd rocketmq-4.9.3/bin
1) Avvia NameServer
NameServer rimarrà in ascolto su 0.0.0.0:9876, assicurati che la porta non sia utilizzata da altri sulla macchina locale, quindi procedi come segue.
Per gli utenti macOS e Linux:
### avvia Name Server
$ nohup sh mqnamesrv &
### verifica se Name Server è stato avviato correttamente
$ tail -f ~/logs/rocketmqlogs/namesrv.log
The Name Server boot success...
Per gli utenti Windows, devi prima impostare le variabili d'ambiente:
ROCKETMQ_HOME="D:\rocketmq".Poi spostati nella directory rocketmq, digita ed esegui:
$ mqnamesrv.cmd
The Name Server boot success...
2) Avvia Broker
Per gli utenti macOS e Linux:
### avvia Broker
$ nohup sh bin/mqbroker -n localhost:9876 &
### verifica se Broker è stato avviato correttamente, es: IP del Broker è 192.168.1.2, nome del Broker è broker-a
$ tail -f ~/logs/rocketmqlogs/broker.log
The broker[broker-a, 192.169.1.2:10911] boot success...
Per gli utenti Windows:
$ mqbroker.cmd -n localhost:9876
The broker[broker-a, 192.169.1.2:10911] boot success...
Puoi eseguire RocketMQ sulla tua macchina all'interno di container Docker,
verrà utilizzata la rete host per esporre la porta di ascolto nel container.
1) Avvia NameServer
$ docker run -it --net=host apache/rocketmq ./mqnamesrv
2) Avvia Broker
$ docker run -it --net=host --mount source=/tmp/store,target=/home/rocketmq/store apache/rocketmq ./mqbroker -n localhost:9876
Puoi anche eseguire un cluster RocketMQ all'interno di un cluster Kubernetes usando RocketMQ Operator.
Prima di procedere, assicurati che kubectl e il relativo file kubeconfig siano installati sulla tua macchina.
1) Installa CRDs
### installa CRDs
$ git clone https://github.com/apache/rocketmq-operator
$ cd rocketmq-operator && make deploy
### verifica se CRDs sono state installate correttamente
$ kubectl get crd | grep rocketmq.apache.org
brokers.rocketmq.apache.org 2022-05-12T09:23:18Z
consoles.rocketmq.apache.org 2022-05-12T09:23:19Z
nameservices.rocketmq.apache.org 2022-05-12T09:23:18Z
topictransfers.rocketmq.apache.org 2022-05-12T09:23:19Z
### verifica se l'operatore è in esecuzione
$ kubectl get pods | grep rocketmq-operator
rocketmq-operator-6f65c77c49-8hwmj 1/1 Running 0 93s
2) Crea Istanza del Cluster
### crea risorsa cluster RocketMQ
$ cd example && kubectl create -f rocketmq_v1alpha1_rocketmq_cluster.yaml
### verifica se le risorse del cluster sono in esecuzione
$ kubectl get sts
NAME READY AGE
broker-0-master 1/1 107m
broker-0-replica-1 1/1 107m
name-service 1/1 107m
Accogliamo sempre nuovi contributi, che si tratti di pulizie banali, grandi nuove funzionalità o altri riconoscimenti materiali, maggiori dettagli qui.
Apache License, Version 2.0 Copyright (C) Apache Software Foundation
Questa distribuzione include software crittografico. Il paese in cui risiedi attualmente potrebbe avere restrizioni sull'importazione, il possesso, l'uso e/o la riesportazione verso un altro paese di software di crittografia. PRIMA di utilizzare qualsiasi software di crittografia, verifica le leggi, i regolamenti e le politiche del tuo paese riguardanti l'importazione, il possesso, l'uso e la riesportazione di software di crittografia, per vedere se è consentito. Vedi http://www.wassenaar.org/ per maggiori informazioni.
Il Dipartimento del Commercio del Governo degli Stati Uniti, Bureau of Industry and Security (BIS), ha classificato questo software come Numero di Controllo delle Merci per l'Esportazione (ECCN) 5D002.C.1, che include software di sicurezza informatica che utilizza o esegue funzioni crittografiche con algoritmi asimmetrici. La forma e la maniera di questa distribuzione della Apache Software Foundation la rende idonea per l'esportazione sotto l'eccezione della Licenza di Esportazione ENC Technology Software Unrestricted (TSU) (vedi i Regolamenti Amministrativi per l'Esportazione del BIS, Sezione 740.13) sia per il codice oggetto che per il codice sorgente.
Quanto segue fornisce maggiori dettagli sul software crittografico incluso:
Questo software utilizza Apache Commons Crypto (https://commons.apache.org/proper/commons-crypto/) per supportare l'autenticazione e la crittografia e decrittografia dei dati inviati attraverso la rete tra servizi.