457 votes

Les paramètres de la chaîne de requête sont-ils sécurisés en HTTPS (HTTP + SSL) ?

Les paramètres de la chaîne de recherche sont-ils cryptés en HTTPS lorsqu'ils sont envoyés avec une demande ?

0 votes

542voto

Joe R Points 10549

Oui. La chaîne de recherche est également cryptée avec SSL. Néanmoins, comme cet article montre, ce n'est pas une bonne idée de mettre des informations sensibles dans l'URL. Par exemple :

Les URL sont stockées dans les journaux des serveurs web - En général, l'intégralité de l'URL de chaque requête est stockée dans un journal du serveur. Cela signifie que toute donnée sensible contenue dans dans l'URL (par exemple un mot de passe) est enregistrées en clair sur le serveur

58 votes

Cela signifie donc que, lorsque DigitalOcean, Google ou d'autres vous demandent de mettre votre clé API dans le paramètre de requête, quiconque peut avoir un accès en lecture seule aux logs peut falsifier votre ID ? Disons que si quelqu'un chez Loggly divulgue des informations, de nombreux services seraient compromis ?

27 votes

La clé d'API est un jeton de courte durée, généralement valable pendant une heure ou un mois (pour oauth et les services similaires) - mais en cas de violation d'une telle ampleur, il suffirait d'invalider TOUS les jetons en circulation. Tout le monde doit s'authentifier à nouveau, en utilisant ses mots de passe (vraisemblablement) toujours sécurisés.

1 votes

Pour info, pour les utilisateurs de Rails... les chaînes de requête sont filtrées en plus des paramètres POST quand vous spécifiez config.filter_parameters stackoverflow.com/questions/2062405/

151voto

N'oubliez pas que SSL/TLS opère au niveau de la couche de transport, de sorte que toute la cryptographie s'effectue au niveau de la couche d'application HTTP.

http://en.wikipedia.org/wiki/File:IP_stack_connections.svg

c'est la façon longue de dire "Oui !".

67voto

Marcelo Cantos Points 91211

L'ensemble de la transmission, y compris la chaîne de requête, l'ensemble de l'URL, et même le type de requête (GET, POST, etc.) est crypté lors de l'utilisation de HTTPS.

51 votes

Attention ! Même si l'ensemble de l'URL est crypté, le nom de l'hôte peut être vu lors de la poignée de main SSL initiale, juste avant la transmission cryptée !

1 votes

@MatthieuCharbonnier est-ce que c'est valable pour le corps du post et les headers aussi ?

7voto

Steve Winter Points 31

Je ne suis pas d'accord avec les conseils donnés ici - même la référence de la réponse acceptée conclut :

Vous pouvez bien sûr utiliser des paramètres de chaîne de requête avec HTTPS, mais ne les utilisez pas pour quoi que ce soit qui puisse présenter un problème de sécurité. qui pourrait présenter un problème de sécurité. Par exemple, vous pouvez les utiliser en toute sécurité pour identifier des numéros de pièces ou des types d'affichage tels que "accountview" ou "printpage", mais ne les utilisez pas pour des raisons de sécurité. les mots de passe, les numéros de carte de crédit ou d'autres informations qui ne doivent pas être accessibles au public.

Donc, non, ils ne sont pas vraiment sûrs... !

80 votes

Toutes les réponses s'accordent sur leur degré de sécurité, et la question n'était pas de savoir s'ils sont "sûrs". Il s'agissait de savoir si les paramètres GET sont cryptés en HTTPS. Ce à quoi il est répondu, avec les mises en garde que vous citez. Je ne sais pas ce que votre réponse essaie d'ajouter ici par rapport à la question, car elle est vague et dérivée.

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