OneSpan Sign Developer: Dropping Support for TLS 1.0 OneSpan Sign Developer: Dropping Support for TLS 1.0 OneSpan Sign Developer: Dropping Support for TLS 1.0 OneSpan
En septembre dernier, le 10 septembre 2018, OneSpan Sign a complètement supprimé le support pour Transport Layer Security 1.0 (TLS 1.0) pour toutes les connexions HTTPS dans l'environnement Produit et Sandbox. Dans ce blog, nous allons passer en revue SSL / TLS, parler des raisons pour lesquelles TLS 1.0 n'est plus considéré comme un protocole sécurisé, et vous aider à vérifier si vous êtes affecté par cette baisse. Si votre déploiement de OneSpan Sign est affecté, nous démontrerons comment vous pouvez faire la transition de votre environnement pour laisser tomber TLS 1.0 et activer la prise en charge de TLS 1.1 ou d'une version supérieure dans PHP, Ruby et Node.js.
Pour Java et l’environnement .Net, vous pouvez vous référer à notre blog précédent: OSS et TLS Communication: What’s the Latest?
TLS 1.0 n'est plus sûr
TLS est un protocole qui assure la confidentialité et l'intégrité des données entre deux applications qui communiquent. TLS 1.0 est sorti en 1999 et existe depuis 20 ans. Depuis des années, l'industrie sait que cette version est vulnérable aux attaques, telles que BEAST et POODLE. En outre, il prend en charge le chiffrement faible et ne peut plus protéger les connexions réseau d'aujourd'hui.
Afin de s'aligner sur les meilleures pratiques de l'industrie, OneSpan Sign a abandonné le soutien pour TLS 1.0. Maintenant, la version du protocole de transport minimum est TLS 1.1, mais TLS 1.2 est fortement recommandé.
Mise à jour de TLS dans PHP
Étape1:
PHP utilise la bibliothèque cURL fournie par le système(cURL 7.34.0 ou plus tard), qui nécessite OpenSSL 1.0.1c ou plus tard. Vous pouvez utiliser le script ci-dessous pour récupérer ces informations :
écho json_encode(curl_version(), JSON_PRETTY_PRINT);
Si votre version cURL et OpenSSL est plus ancienne que l'exigence minimale, vous devrez peut-être mettre à jour vos bibliothèques SSL/TLS.
Étape2:
Pour vérifier votre version TLS par défaut actuelle, vous pouvez faire une demande de test avec "curl" à "howsmyssl" en utilisant le script suivant:
Ce script affichera ensuite la version TLS utilisée pour se connecter. Si votre version OpenSSL prend en charge, vous pouvez ajouter cette ligne pour définir explicitement votre version TLS :
curl_setopt ($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_1); TLS 1,1 Annonces curl_setopt ($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2); TLS 1,2 Annonces
Mise à jour tLS dans Node.js
Étape1:
Node.js utilise également le système fourni OpenSSL, qui nécessite OpenSSL 1.0.1c ou plus tard. La commande suivante peut être utilisée pour vérifier votre version OpenSSL liée à votre Node.js :
noeud -p process.versions
Étape2:
Nous utilisons toujours "howsmyssl" comme un test de demande. Vous pouvez utiliser ci-dessous l'extrait pour donner votre version de connexion TLS par défaut :
var https 'require('https') var options = { nom d'hôte: 'www.howsmyssl.com', port: 443 , chemin: '/a/check', méthode: 'GET', } https.request (options, res laisser le corps '' res.on ('données', d 'corps ' d) res.on ('fin', () données - JSON.parse (corps) console.log ('SSL Version: ' ' 'data.tls_version) }) ').on ('erreur', err ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' console.warn (err) Fin de l'année ()
Dans vos options de demande, vous pouvez également attribuer la version protocole sécurisée que vous souhaitez dans votre option de demande en :
secureProtocol: "TLSv1_2_method" //TLS 1.2 secureProtocol: "TLSv1_1_method" //TLS 1.1
Mise à jour tLS dans Ruby
Étape1:
TLS 1.1 '1.2 support a été ajouté à Ruby en v2.0.0. Tout comme PHP et Node.js, Ruby nécessite un OpenSSL fourni par le système et la version minimale est de 1.0.1c.
Pour vérifier la version d'OpenSSL actuellement installée avec Ruby, vous pouvez utiliser la commande suivante :
rubis -ropenssl -e 'met OpenSSL::OPENSSL_VERSION'
Étape2:
Dans Ruby, vous devez toujours vous connecter au point de terminaison "howsmyssl" pour obtenir un rapport de connexion:
exiger "net/https" besoin "uri" exiger "json" uri - URI.parse("https://www.howsmyssl.com/a/check") http - Net::HTTPS.new(uri.host, uri.port) http.use_ssl vrai resp - JSON.parse(http.request(Net::HTTP::Get.new(uri.request_uri)).body) met resp['tls_version']
Et la version SSL peut être réglé de cette façon:
http.ssl_version :TLSv1_1 //TLS 1.1 http.ssl_version :TLSv1_2 //TLS 1.2
Aller de l'avant avec TLS 1.1
Inévitablement, les anciennes versions des applications doivent être retirées un jour pour une raison ou une autre, et TLS 1.0 a été retiré pour des raisons de sécurité. Par conséquent, il est impératif que vous mettez à jour votre version à au moins TLS 1.1, bien que TLS 1.2 est préférable. Pour ces raisons de sécurité, les clients qui utilisent TLS 1.0 ne sont plus en mesure d'accéder au service OneSpan Sign jusqu'à ce qu'ils mettent à jour leur version.
Si vous avez des questions concernant ce blog ou toute autre chose concernant l'intégration de OneSpan Sign dans votre application, visitez les Forums communautairesdes développeurs . Vos commentaires sont importants pour nous!