web-dev-qa-db-fra.com

Est-il possible de voir un paquet avant le chiffrement?

Je veux dire, si je suis, par exemple, sur Facebook, chaque paquet que j'envoie de mon NIC est crypté. Mais il doit y avoir une phase de ce paquet avant qu'il ne soit crypté. Le navigateur (I pense) doit créer ce paquet et le crypter ensuite. Donc, si je suis sur la machine qui crée ces paquets, puis-je les voir avant le cryptage?

Et si oui, existe-t-il des logiciels malveillants capables de faire cela? Je pense qu'avec les privilèges administrateur/root, il est certain que c'est possible, mais qu'en est-il sans eux?

17
ShinobiUltra

Avec la disponibilité des extensions de navigateur, la lecture du trafic devrait être tout à fait faisable. Si à la fois le malware et le navigateur Web fonctionnent sous le même utilisateur (et peuvent donc écrire dans le répertoire du profil du navigateur), l'installation d'extensions de navigateur peut être effectuée relativement facilement.

Vous pouvez également ouvrir le Web Developer Tools, généralement accessible en appuyant sur F12 et visitez l'onglet Networking. Cela vous montrera tout le trafic avant qu'il ne soit chiffré et poussé sur le réseau.

Les méthodes ci-dessus sont des moyens passifs qui n'interfèrent pas avec les communications. Les méthodes actives exécutent une attaque de l'homme au milieu (MitM) et modifient réellement les données avant qu'elles ne soient transmises (Tylerl décrit un exemple avec Fiddler).

27
Lekensteyn

Le trafic réseau de votre navigateur est crypté avant que le navigateur n'appelle send() pour le mettre sur le réseau. Donc, pour l'intercepter avant le chiffrement, vous devez l'intercepter avant qu'il ne soit envoyé - c'est-à-dire dans le navigateur lui-même. Ce n'est pas impossible, mais c'est beaucoup de travail.

Une alternative consiste à configurer un proxy "Man In The Middle", tel que fiddler , qui déchiffre le trafic avant qu'il ne quitte votre réseau, l'inspecte, puis le rechiffre à sa sortie. SSL est généralement conçu pour empêcher cela, vous aurez donc besoin d'une certaine coopération de votre ordinateur pour le permettre (c'est-à-dire que votre navigateur devra faire confiance à la clé publique du violoneux), mais tout cela fait partie de la façon dont vous configurez le violoniste, donc c'est bien -assez documenté.

23
tylerl

Le navigateur (je pense) doit créer ce paquet et le crypter ensuite. Donc, si je suis sur la machine qui crée ces paquets, puis-je les voir avant le chiffrement?

Non, ce n'est pas comme ça que ça fonctionne. À l'intérieur du navigateur, les données sont cryptées et seules les données cryptées sont transmises entre le navigateur et la pile réseau. La pile de réseau divise les données chiffrées en paquets et réassemble les données chiffrées reçues à partir de paquets dans le flux de données pour que le navigateur les déchiffre. Il n'y a tout simplement pas de paquets au niveau que le navigateur gère, et le navigateur gère le chiffrement et le déchiffrement.

Votre question repose donc sur une fausse prémisse.

4
David Schwartz