Le projet OpenSSL a annoncé des correctifs pour sept vulnérabilités de sécurité le 5 juin 2014. Les détails sont décrits dans leur avis de sécurité .
Les vulnérabilités affectent potentiellement toute application serveur (y compris NGINX et NGINX Plus) qui utilise OpenSSL pour mettre fin au trafic SSL/TLS. Ils peuvent être exploités pour créer une attaque de l'homme du milieu (MitM) ou une variété de problèmes de déni de service (DoS) et de corruption de données :
La recommandation du projet OpenSSL est la suivante :
Les utilisateurs d'OpenSSL 0.9.8 SSL/TLS doivent passer à 0.9.8za. Les utilisateurs d'OpenSSL 1.0.0 SSL/TLS doivent passer à 1.0.0m.
Les utilisateurs d'OpenSSL 1.0.1 SSL/TLS doivent passer à la version 1.0.1h.
Les builds NGINX et NGINX Plus fournies par NGINX, Inc. (à l'exception de celles pour Windows) ou via un référentiel tiers sont généralement liées dynamiquement à l'instance de libssl.so du système d'exploitation. Exécutez la commande ldd
pour connaître le chemin complet vers le fichier libssl.so et la commande strings
pour afficher le numéro de version associé (dans ce cas, il s'agit de 1.0.1f) :
$ ldd `quel nginx` | grep ssl libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f82e62bf000) $ chaînes /lib/x86_64-linux-gnu/libssl.so.1.0.0 | grep "^OpenSSL " OpenSSL 1.0.1f 6 janv. 2014
Le résultat sur votre système peut être quelque peu différent. Vous pouvez également exécuter openssl
version
, bien que le résultat puisse ne pas être fiable s'il existe plusieurs instances d'OpenSSL sur votre serveur.
Nous vous recommandons fortement de mettre à niveau vers la bibliothèque OpenSSL la plus récente fournie par le fournisseur de votre système d'exploitation, même si la version antérieure que vous utilisez n'est pas signalée comme étant affectée. Redémarrez ensuite le logiciel NGINX pour utiliser la bibliothèque mise à jour. Consultez la réponse de votre fournisseur à CVE-2014-0224 pour déterminer le processus de mise à niveau approprié. Pour votre commodité, voici les liens pour Debian , Red Hat et Ubuntu .
Veuillez noter que certains fournisseurs de systèmes d'exploitation Linux ont publié des packages corrigés qui portent toujours un numéro de version OpenSSL antérieur, choisissant d'inclure uniquement le correctif pour CVE‑2014‑0224 et les vulnérabilités associées dans leurs packages afin de fournir rapidement une petite mise à jour.
Si vous avez compilé NGINX vous-même, vous avez peut-être lié statiquement les bibliothèques OpenSSL. Dans ce cas, la sortie de ldd
ne révèle pas de dépendances sur la bibliothèque libssl.so du système d'exploitation. Exécutez nginx
‑V
pour afficher les options de compilation que vous avez utilisées :
$ ./objs/nginx -V version nginx : nginx/1.7.1 compilé par gcc 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) paramètres de configuration : --with-cc-opt=-I../openssl-1.0.1f/include --with-ld-opt='-L../openssl-1.0.1f -Wl,-Bstatic -lssl -lcrypto -Wl,-Bdynamic -ldl' --with-openssl=../openssl-1.0.1f
Si vous utilisez une version vulnérable d'OpenSSL, vous devez recompiler NGINX en utilisant une version corrigée.
NGINX pour Windows, tel que distribué par NGINX , est lié statiquement à OpenSSL. Les versions actuellement disponibles pour 1.7.1 et 1.6.0 ont été mises à jour avec les correctifs d'OpenSSL.
« Cet article de blog peut faire référence à des produits qui ne sont plus disponibles et/ou qui ne sont plus pris en charge. Pour obtenir les informations les plus récentes sur les produits et solutions F5 NGINX disponibles, explorez notre famille de produits NGINX . NGINX fait désormais partie de F5. Tous les liens NGINX.com précédents redirigeront vers un contenu NGINX similaire sur F5.com."