67 votes

net::ERR_INSECURE_RESPONSE dans Chrome

Je reçois une erreur net::ERR_INSECURE_RESPONSE dans la console Chrome lorsque je récupère des données de mon API.

Cette erreur se produit généralement à la suite d'un certificat non signé ; cependant, ce n'est pas un problème dans le cas présent car j'ai un certificat valide et signé.

L'erreur ne se produit pas souvent et disparaît si je redémarre mon navigateur Chrome. Elle ne se produit pas non plus dans d'autres navigateurs (testé sur Safari, Mozilla, Opera).

Une idée de la raison pour laquelle cela se produit ? S'agit-il d'un simple bug du navigateur ?

2 votes

J'ai également ce problème, mais il est répétable à 100% sur le site d'un client et à 0% en dehors de celui-ci. J'utilise également un certificat valide et signé, ce qui rend presque toutes les informations sur le web inutilisables car elles font déjà référence à des certificats auto-signés.

0 votes

L'API que vous contactez est-elle également sur un SSL ?

78voto

Quandary Points 12867

Cela se produit lorsque vous effectuez une mise à jour de Chrome 55 vers Chrome 56 (56.0.2924.87).
Il s'agit d'un renforcement de l'application de la sécurité.
Il ne disparaît pas en redémarrant le navigateur, et ce n'est pas un bug.

Mountain View dit qu'il espère que vous ne ferez jamais car les autorités de certification doivent arrêter de délivrer des certificats SHA-1 en 2016. Juste au cas où, Google prévoit de continuer à émettre des avertissements jusqu'à ce que Chrome cesse complètement de prendre en charge SHA-1 le 1er janvier 2017. Lorsque ce jour arrivera, un site web qui utilise encore la fonction [ ] (Source : Engadget.com )

Si cela se produit, la cause la plus probable est que votre certificat SSL (ou celui du site web) utilise SHA1.
SHA1 est cassé, et les certificats SSL utilisant SHA1 ne sont plus sécurisés (cela fait maintenant longtemps que Chrome vous le montre - maintenant il bloque NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM ).

Une autre cause probable est que votre certificat SSL a expiré.
De plus, vous devez désactiver la compatibilité ascendante avec SSL2 et SSL3 ( Attaque de caniches ).
Vous ne devez utiliser que TLS (SSL 3.1+).

Pour tester le certificat SSL de votre domaine, vous pouvez utiliser la méthode suivante Laboratoires SSL Test SSL .

Pour découvrir quel est exactement le problème : Ouvrez la console du développeur de chrome (CTRL + SHIFT + J OU F12) Et passez à l'onglet sécurité

Security

Console

Details

Pour plus d'informations :
https://support.google.com/chrome/answer/95617?visit_id=1-636221396724527190-3454695657&p=ui_security_indicator&rd=1

FYI :

SHA-1 s'est affaibli et est devenu de moins en moins sûr chaque jour. ce qui est dangereux si l'on considère que nous avons tendance à faire confiance aux sites web ayant "https://" dans leurs URLs. D'autres navigateurs comme Mozilla Firefox et Microsoft Edge prévoient également d'arrêter de le prendre en charge afin de d'encourager les propriétaires de sites web à swi plus sûrs, dès que possible.

Si vous avez un besoin urgent de le contourner (vous devez fermer tous en exécutant d'abord des instances de Chrome - sinon cela ne fonctionnera pas ):

chrome --args --ignore-certificate-errors

Attention : ne faites pas de banque en ligne ou de Gmail avec ces paramètres de ligne de commande actifs dans votre instance de Chrome.

0 votes

Bonjour - Excellente explication ! J'ai configuré mon certificat avec ce tutoriel avec succès, digitalocean.com/community/tutorials/ Mais maintenant, je reçois cette erreur chaque fois que j'essaie de charger scripts. Des idées sur la façon de mettre à jour ? Je pensais que c'était l'option la plus récente disponible.

0 votes

J'ai corrigé cela pour Mac par la commande 'defaults write com.google.Chrome EnableSha1ForLocalAnchors -bool true' et redémarrer Chrome. Il existe différents détails sur la façon d'exécuter enableSha1ForLocalAnchors sur d'autres OS.

0 votes

Une autre cause est que vous êtes un développeur web utilisant un certificat auto-signé. Merci Google.

65voto

Radium Points 866

J'ai eu un problème similaire récemment. J'essayais d'accéder à un point de terminaison REST https qui avait un certificat auto-signé. J'obtenais net::ERR_INSECURE_RESPONSE dans la console de Google Chrome. J'ai fait quelques recherches sur le web pour trouver cette solution qui a fonctionné pour moi :

  1. Ouvrez un nouvel onglet dans la même fenêtre que celle où vous essayez d'effectuer l'appel API.
  2. Accédez à l'URL https à laquelle vous essayez d'accéder par programme.
  3. Vous devriez voir un écran similaire à celui-ci : enter image description here
  4. Cliquez sur Avancé > procédez à <url> et vous devriez voir la réponse (s'il y en a une)
  5. Essayez maintenant d'effectuer l'appel API par le biais de votre script.

0 votes

J'espère que vous ne l'utilisez pas pour transmettre des informations confidentielles (paiement par carte de crédit). Si vous avez un certificat interne auto-signé, évidemment la bonne approche est d'ajouter le certificat aux certificats de confiance sur la machine/domaine (ou mozroots sur Linux). Unsafe ignorera toutes les erreurs de certificat - ce qui signifie que l'utilisation de SSL est complètement inutile, vous pourriez aussi bien utiliser HTTP.

2 votes

Cette réponse a été très utile. Merci !

0 votes

Oui, j'ai utilisé la même astuce, mais utiliser un vrai certificat semble être la seule solution viable.

2voto

Herri Points 31

Un certificat intermédiaire manquant peut être à l'origine du problème.

Vous pouvez vérifier votre https://hostname avec curl, openssl ou un site web tel que https://www.digicert.com/help/ .

Je ne sais pas pourquoi Chrome a (éventuellement) parfois des problèmes pour valider ces certitudes.

2voto

james2doyle Points 107

J'ai obtenu cette erreur sur amazon.ca, meetup.com, et la page d'accueil de Symantec.

Je suis allé sur la page de mise à jour du navigateur Chrome (il était à 53.*) et j'ai vérifié s'il y avait une mise à jour. aucune mise à jour disponible . Après avoir demandé à mon bureau, il s'est avéré que la dernière version était la 55 mais que j'étais bloqué sur la 53 pour une raison quelconque.

Après la mise à jour (j'ai dû télécharger manuellement à partir du site Web de Chrome), les problèmes ont disparu !

2voto

B Charles H Points 55

Pour moi, la réponse à cette question était disponible ici, sur StackOverflow :

ERR_INSECURE_RESPONSE causé par un changement dans la génération du certificat racine de Fiddler en utilisant CertEnroll pour Windows 7 et ultérieur

Malheureusement, ce changement peut causer des problèmes pour les utilisateurs qui disposent de précédemment fait confiance au certificat racine de Fiddler ; le navigateur peut afficher un message d'erreur tel que NET::ERR_CERT_AUTHORITY_INVALID ou The n'a pas été émis par une autorité de certification de confiance.

(Citation de la source originale )

J'ai eu cette erreur ERR_CERT_AUTHORITY_INVALID sur le navigateur et ERR_INSECURE_RESPONSE affichée dans Developer Tools de Chrome.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X