Failles de sécurité signalées sur les ports NetWorker 5432, 5671, 9000, 9001
Résumé: L’analyse Rapid7 a identifié des failles de sécurité sur différents ports de NetWorker.
Symptômes
Des failles de sécurité sont signalées sur les ports 5671, 9000, 9001.
Port 5671
Serveur TLS/SSL utilisant des nombres premiers couramment utilisés Serveur
TLS Prend en charge TLS version 1.1
X.509 L’objet du certificat CN ne correspond pas au nom de l’entité.
Serveur TLS/SSL non approuvé Certificat
X.509 Certificat
TLS/SSL non validePort 9000
Certificat X.509 L’objet du CN ne correspond pas au nom de l’entité.
Certificat
X.509 de serveur TLS/SSL non approuvé Le serveur TLS/SSL utilise des nombres premiers couramment utilisés.
OPTIONS HTTP Méthode activée
Le serveur TLS/SSL prend en charge l’utilisation de chiffrements par clé statique.
Port 9001
L’objet du certificat X.509 CN ne correspond pas au nom de l’entité.
Serveur TLS/SSL non approuvé Certificat
X.509 Le serveur TLS/SSL ne prend pas en charge les algorithmes de chiffrement puissants.
Le serveur TLS/SSL prend en charge l’utilisation de chiffrements par clé statique.
Cause
Résolution
Port 5432
* Serveur TLS/SSL non approuvé Certificat
X.509* Certificat
TLS/SSL auto-signé Solution :
1. Rendez-vous sur
C:\Program Files\EMC NetWorker\Management\nmcdb\pgdata\ (Windows) ; /nsr/nmc/nmcdb/pgdata/ (Linux)
2. Rename (Renommer)
server.crt et server.key.
3. Copiez le serveur signé par l’autorité de certification et la clé privée en tant que
"server.crt" et "server.key" respectivement dans le même dossier.
nsrnmc: nsrnmc et disposer de 600 autorisations.
chown nsrnmc:nsrnmc /nsr/nmc/nmcdb/pgdata/server.crt
chown nsrnmc:nsrnmc /nsr/nmc/nmcdb/pgdata/server.key
chmod 600 /nsr/nmc/nmcdb/pgdata/server.crt
chmod 600 /nsr/nmc/nmcdb/pgdata/server.key
postgresql.conf.
ssl_cert_file = 'server.crt' ssl_key_file = 'server.key'
gst services :
Linux :
systemctl restart gst
net stop gstd
net start gstd
Port 5671
Solution :
openssl. Mettez à jour le rabbitmq.config avec le fichier DH.
Linux:
/opt/nsr/rabbitmq-server-3.11.16/etc/rabbitmq/rabbitmq.config
openssl dhparam -out /opt/nsr/rabbitmq-server-3.11.16/etc/dhparam.pem 2048
Windows. :
C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.7.16\etc\rabbitmq.config.
openssl.exe dhparam -out "C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.8.3\etc\dhparam.pem" 2048
Le 2048 fait référence à la taille du nombre premier en bits.
2. Configurer
rabbitmq.config pour assurer le fichier en ajoutant l’élément de configuration :
Linux :
{dhfile, "/opt/nsr/rabbitmq-server-3.11.16/etc/rabbitmq/dhparam.pem"},
Windows. :
{dhfile, "C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.8.3\etc\dhparam.pem"},
Dans le cadre de l' ssl_options juste après le "keyfile" ligne.
Exemple :
Rechercher
"ssl_options" et ajoutez l’attribut dhfile paramètres, comme indiqué ci-dessous :
{ssl_options, [{cacertfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-3.8.3\\etc\\cacert.pem"},
{certfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-3.8.3\\etc\\cert.pem"},
{keyfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-3.8.3\\etc\\key.pem"},
{dhfile, "C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.8.3\etc\dhparam.pem"},
{verify, verify_none},
rabbitmq.config. Look Pour la ligne ci-dessous :
% disable TLS 1.0, remove tlsv1.1 if it is not needed
{versions, ['tlsv1.2', 'tlsv1.1']},
* L’objet du certificat X.509 CN ne correspond pas au nom de l’entité.
* Serveur TLS/SSL non approuvé Certificat
X.509* Certificat TLS/SSL non valide
Solution :
C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-<some number>\etc (Windows). Sous Linux, le chemin est /opt/nsr/rabbitmq-server-<n.nn.nn>/etc/rabbitmq
2. Renommer l’espace existant
.pem Certificats.
3. Copiez les certificats signés par une autorité de certification en utilisant le même nom que l’original.
Où:
cacert.pem = est le bundle de certificats de l’autorité de certification.
cert.pem = est le certificat public/serveur.
key.pem = est la clé privée.
4. Vérifiez que le chemin d’accès et les noms sont correctement indiqués dans
rabbitmq.config.
Windows. :
{ssl_options, [{cacertfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-<some numbers>\\etc\\cacert.pem"},
{certfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-<some numbers>\\etc\\cert.pem"},
{keyfile, "C:\\Program Files\\EMC NetWorker\\nsr\\rabbitmq-server-<some numbers>\\etc\\key.pem"},
Linux :
{ssl_options, [{cacertfile, "/etc/rabbitmq/cacert.pem"},
{certfile, "/etc/rabbitmq/cert.pem"},
{keyfile, "/etc/rabbitmq/key.pem"},
5. Démarrez les services NetWorker et GST.
Port 9000
* L’objet du certificat X.509 CN ne correspond pas au nom de l’entité.
* Certificat
X.509 de serveur TLS/SSL non approuvé Solution :
1) Renommer "server.crt" et "server.key." Sous Windows, les fichiers se trouvent dans C:\Program Files\EMC NetWorker\Management\GST\apache\conf. Sous Linux, les fichiers se trouvent dans /opt/lgtonmc/apache/conf.
2) Copiez le certificat de serveur signé par une autorité de certification et la clé privée dans le même dossier. Renommez le certificat de serveur signé par une autorité de certification en "server.crt" et la clé de serveur pour "server.key."
3) Vérifiez que le chemin d’accès et le nom sont cohérents dans C:\Program Files\EMC NetWorker\Management\GST\apache\conf\httpd.conf et C:\Program Files\EMC NetWorker\Management\GST\apache\conf\https.conf. Sous Linux, httpd.conf se trouve sous /opt/lgtonmc/apache/conf.
Les lignes à vérifier sont les suivantes -
Windows :
SSLCertificatefile "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.crt"
SSLCertificateKeyfile "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.key"
Linux :
SSLCertificatefile /opt/lgtonmc/apache/conf/server.crt
SSLCertificateKeyfile /opt/lgtonmc/apache/conf/server.key
4) Sous Linux, l’autorisation des mouches doit être de 600 et appartenir à nsrnmc.
-rw------- 1 nsrnmc nsrnmc 1679 May 17 16:26 server.key
-rw------- 1 nsrnmc nsrnmc 1216 May 17 16:26 server.crt
* Le serveur TLS/SSL utilise des nombres
premiers couramment utilisésSolution :
1) Générer des paramètres DH à l’aide de openssl.
Windows :
openssl.exe dhparam -out "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\apachedhparam.pem" 2048
Linux :
openssl dhparam -out "/opt/lgtonmc/apache/conf/apachedhparam.pem" 2048
2) Ajouter "SSLOpenSSLConfCmd DHParameters <location of dhparam.pem>" Dans httpd.conf
Windows. :
SSLOpenSSLConfCmd DHParameters "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\apachedhparam.pem"
Linux :
<VirtualHost *:9000>
Servername localhost:9000
...
...
SSLCipherSuite HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4:!SSLv2:!SSLv3:!TLSv1.0:!TLSv1.1:!ADH:!MEDIUM:!LOW:@STRENGTH
SSLOpenSSLConfCmd DHParameters /opt/lgtonmc/apache/conf/apachedhparam.pem
</VirtualHost>
* HTTP OPTIONS Méthode activée
Cette vulnérabilité ne s’applique pas à NMC. mod_rewrite module n’est pas chargé par le NMC.
* Le serveur TLS/SSL prend en charge l’utilisation de chiffrements par clé statique.
Mettez l’original en commentaire SSLCipherSuite Dans httpd.conf. Remplacez-le par celui ci-dessous.
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!3DES:!MD5:!PSK:!RC4
Port 9001
*L’objet du certificat X.509 CN ne correspond pas au nom de l’entité.
*Certificat
X.509 de serveur TLS/SSL non approuvé Nous prenons en charge le remplacement du certificat utilisé par le port 9001.
Sous Windows :
To generate cakey.pem from CA signed certificate: Get the CA signed certificates in individual key files, or in a single file in PFX format. If the CA signed certificates are in a single PFX file, extract the private key, and the CA signed certificate with OpenSSL tool. NOTE:Windows may not have OpenSSL installed. You can install OpenSSL separately. Extract the private key, and the CA signed certificate from the PFX file. Private key: # openssl pkcs12 -in <file>.pfx -out server.key -nodes -nocerts CA certificate: # openssl pkcs12 -in <file>.pfx -out server.crt -nokeys Verify the integrity of the server.key and server.crt. Private key: # openssl pkey -in server.key -pubout -outform pem | sha256sum CA certificate: # openssl x509 -in server.crt -pubkey -noout -outform pem | sha256sum NOTE:Ensure that the output shows the same checksum hash from the above two outputs. If the checksum hashes are same, perform the next step. If they are different, there is an issue. Convert the private key and the CA certificate to PEM format. Private key: # openssl rsa -in server.key -outform pem -out server.key.pem CA certificate: # openssl x509 -in server.crt -outform pem -out server.crt.pem Combine the key and the certificate into cakey.pem file for NMC. Windows (PowerShell): PS > get-content server.key.pem,server.crt.pem | out-file cakey.pem Shut down the NMC server. Windows: net stop gstd Copy the cakey.pem to the NMC servers installation location: Windows: [Install Drive]:\Program Files\EMC NetWorker\Management\GST\etc\cakey.pem Start the NMC server. Windows: net start gstd
Sous Linux :
Get all the required certificates(root, intermediate, and server) from pem file format. For example: server.key, RootCA.crt, InterCA.crt, and server.crt. Convert the private key and the certificates(root, intermediate, and server) to PEM format. Private key: # openssl rsa -in server.key -outform pem -out server.key.pem Certificates: # openssl x509 -in server.crt -outform pem -out server.crt.pem # openssl x509 -in RootCA.crt -outform pem -out RootCA.crt.pem # openssl x509 -in InterCA.crt -outform pem -out InterCA.crt.pem After the Chain is ready, concatenate all certificates in one file with command: > cat server.key.pem RootCA.crt.pem InterCA.crt.pem server.crt.pem > cakey.pem NOTE:Order of the certificates in concatenation is important. server.key should always be the first certificate, and server.pem should always be the last certificate in this file. Change the owner and group of file to nsrnmc. Stop NetWorker services. systemctl stop networker systemctl stop gst Move to directory /opt/lgtonmc/etc/, rename the existing cakey.pem, and copy the cakey.pem file which has your CA certificate chain. Start the NetWorker services. systemctl start networker systemctl start gst All the services should come up gracefully.
* Le serveur TLS/SSL ne prend pas en charge les algorithmes
de chiffrement forts La prise en charge des chiffrements forts est mise en place sur NetWorker 19.5 et les versions plus récentes. Mettez à jour les serveurs concernés vers NetWorker 19.5.x.
* Le serveur TLS/SSL prend en charge l’utilisation de chiffrements par clé statique.
Ce problème n’est pas encore résolu sur la plate-forme Windows. Ce problème est résolu dans un correctif de bug.