web-dev-qa-db-fra.com

Firebug semble décrypter le trafic SSL: est-ce le bon comportement?

Dans mon entreprise, nous écrivions une petite application Web qui serait hébergée et testée sous le protocole HSTS.

Un de mes testeurs s'est plaint que le nom d'utilisateur et le mot de passe peuvent être vus en texte clair, il n'est donc pas sécurisé. J'ai répondu qu'en raison de la mise en œuvre de HSTS, il ne pouvait pas être déchiffré. J'ai signalé wireshark logs et prouvé qu'il était crypté.

Mon testeur a souligné Firebug de son propre navigateur et a dit qu'il affiche un nom d'utilisateur et un mot de passe en clair, donc il n'est pas sécurisé.

De ce qui précède, voici mon analyse et mes questions:

  1. Étant donné que HSTS permet la sécurité lorsque les données passent du navigateur au serveur Web, Firebug n'est qu'un plugin de navigateur, il connaît tout dans l'arborescence DOM pour pouvoir afficher les champs de formulaires, les noms d'utilisateur et les mots de passe.

  2. Est-il possible de désactiver Firebug d'identifier l'arbre dom?

  3. La révélation du contenu de Firebug est-elle vraiment une vulnérabilité? Si oui, comment puis-je l'atténuer?

On dirait qu'il y a une certaine confusion sur les protections fournies par les différentes parties de votre système.

HSTS applique HTTPS pour les utilisateurs qui ont déjà visité le site via HTTPS, pour une période donnée. Si un utilisateur n'a jamais visité la version HTTPS d'un site et que le site est également disponible sur HTTP (sans redirection vers HTTPS), il ne fera rien - le trafic sera non chiffré.

Firebug accède aux données après décryptage - c'est un outil de débogage. Si le navigateur peut le voir en clair, Firebug peut le voir en clair. Ce n'est pas une vulnérabilité, à moins que le site Web envoie des données qui ne devraient pas être envoyées (par exemple, les mots de passe du serveur), auquel cas la vulnérabilité réside dans le site Web, pas dans Firebug.

Si vous envoyez des mots de passe du serveur au client, vous avez un problème - cela ne devrait jamais être requis. Les mots de passe doivent être considérés comme une chose à sens unique - les utilisateurs les saisissent et ils sont vérifiés côté serveur. Cela minimise les risques de découverte de mots de passe sans un compromis de serveur plus important.

54
Matthew

NonFirebug ne déchiffre pas le trafic SSL.

Firebug rappelle juste un détail clé: une connexion SSL offre une protection contre l'écoute sur le chemin de connexion. SSL doit être considéré comme un tunnel crypté (VPN en est un autre), mais aux deux extrémités du tunnel, tout est en pleine lumière: en clair.

Firebugce n'est pas une vulnérabilité du tout.

22
dan
  1. Firebug peut accéder à tout ce que le navigateur peut accéder, il peut donc accéder au nom d'utilisateur et au mot de passe, tout comme le gestionnaire de mots de passe intégré ou les gestionnaires de mots de passe comme Lastpass.
  2. Non. Il n'est pas possible de désactiver Firebug à l'aide de l'arborescence DOM, sauf lorsque vous désactivez Firebug. Comme le dit OrangeDog, le blocage des addons n'aidera pas car Firefox a un débogueur intégré qui peut faire de même.
  3. Non. La révélation du contenu de Firebug n'est pas une vulnérabilité.
6
SPRBRN