Tout dépend de vos exigences en matière de sécurité, du choix de l'utilisateur et du risque de déclassement implicite. Désactiver les anciens chiffrements côté serveur est en grande partie nécessaire, car les navigateurs vont heureusement tomber sur des chiffrements absolument horribles côté client au nom de l'expérience utilisateur / de la commodité. S'assurer que rien de votre part qui dépend d'un canal sécurisé à l'utilisateur ne peut être atteint avec une méthode non sécurisée est, bien sûr, également très sain.
Ne pas me permettre de rétrograder explicitement en HTTP non sécurisé lorsque j'ai estimé que votre article de blog expliquant pourquoi vous aimez plus Python que Ruby (ne le dites pas, c'est juste un exemple générique) ne me dérange pas des spooks ou du public. Le problème auquel je me suis rendu est juste de me mettre sur mon chemin sans raison valable, en partant du principe que HTTPS sera trivial pour moi.
Il existe aujourd'hui des systèmes embarqués qui ne sont pas capables d'utiliser TLS par défaut ou qui sont bloqués par de vieilles implémentations (je pense que c'est terriblement dommage que ce soit le cas, mais en tant qu'utilisateur expérimenté de [insert embedded appareil ici], je ne peux parfois pas changer cela).
Voici une expérience amusante: essayez de télécharger une version récente de LibreSSL à partir du site amont d'OpenBSD via HTTPS avec une implémentation TLS / SSL suffisamment ancienne. Vous ne pourrez pas. L’autre jour, j’ai essayé sur un appareil doté d’une version plus ancienne d’OpenSSL datant de 2012 environ, car je souhaitais mettre à niveau ce système embarqué pour le rendre plus sécurisé, avec de nouveaux éléments de la source. Je n’ai pas le luxe d’un package préconfiguré. Les messages d'erreur lorsque j'ai essayé n'étaient pas vraiment intuitifs, mais je suppose que c'était parce que mon ancien OpenSSL ne prenait pas en charge les éléments appropriés.
Ceci est un exemple où le déplacement du seul système HTTPS peut réellement nuire aux personnes: si vous n'avez pas le luxe de bénéficier de packages pré-construits récents et que vous souhaitez résoudre le problème vous-même en générant à partir des sources, vous êtes bloqué. Heureusement, dans le cas de LibreSSL, vous pouvez demander explicitement à HTTP. Bien sûr, cela ne vous évitera pas un attaquant réécrivant déjà votre trafic, capable de remplacer les paquets source par des versions compromises et de réécrire toutes les sommes de contrôle dans des corps HTTP décrivant les paquets disponibles au téléchargement sur les pages Web que vous parcourez, mais cela reste utile dans la plupart des cas. cas plus commun.
La plupart d’entre nous ne sont pas à un téléchargement non sécurisé d’être détenu par un APT (Advanced Persistent Thread: jargon de sécurité pour les agences de renseignement nationales et autres cyber-menaces extrêmement bien dotées). Parfois, je veux juste wget
une documentation en texte brut ou un petit programme dont je peux rapidement auditer la source (mes propres petits utilitaires / scripts sur GitHub, par exemple) sur un boîtier ne prenant pas en charge les suites de chiffrement les plus récentes.
Personnellement, je demanderais ceci: votre contenu est-il tel qu'une personne puisse légitimement décider "Je suis d'accord pour que je puisse accéder à la connaissance publique"? Existe-t-il un risque plausible de risque réel pour les personnes non techniques qui rétrogradent accidentellement HTTP vers votre contenu? Pondérez vos exigences de sécurité, les exigences de confidentialité imposées pour vos utilisateurs et le risque de rétrogradation implicite par rapport à la capacité des utilisateurs qui comprennent les risques de faire un choix éclairé au cas par cas de ne pas être sécurisés. Il est tout à fait légitime de dire que pour votre site, il n'y a aucune bonne raison de ne pas appliquer HTTPS - mais je pense qu'il est juste de dire qu'il existe toujours de bons cas d'utilisation pour le HTTP simple.