Un chercheur indépendant a découvert une faille de sécurité dans le flux de récupération des mots de passe mobiles d'Instagram qui aurait pu permettre aux pirates d'accéder aux comptes utilisateurs.

La faille, découverte et signalée par le chercheur indien Laxman Muthiyah, a depuis été corrigée par le propriétaire de l'Instagram, Facebook. Le chercheur, quant à lui, a reçu une prime de 30 000 $US pour sa découverte.

Muthiyah, qui a l'habitude de repérer des bogues de Facebook, a déclaré que son dernier effort de chasse aux bogues avait été motivé par la récente décision de Facebook d'augmenter les paiements pour les vulnérabilités qui peuvent mener à la prise en charge de comptes. L'interface Web d'Instagram avec une réinitialisation de mot de passe basée sur un lien n'est pas sensible à cette vulnérabilité.

Tel que décrit dans cet article et démontré dans cette vidéo de preuve de concept, la faille de sécurité concernait la façon dont le service de partage de photos permettait aux utilisateurs de retrouver l'accès à leurs comptes, au cas où ils auraient oublié leurs mots de passe.

Dans le cadre du processus de récupération de mot de passe, vous recevez un code à six chiffres à votre numéro de téléphone de récupération que l'on vous demande d'entrer dans l'application afin de valider votre identité. Le code expire au bout de 10 minutes et Instagram a mis en place des mesures de protection supplémentaires pour déjouer les attaques à la force brute, où les puits de fortune essayaient de se frayer un chemin en essayant toutes les combinaisons possibles afin d'arriver à la bonne. Avec six chiffres de 0 à 9, il n'y aurait pas plus d'un million de possibilités à essayer.

Pourtant, Muthiyah a démontré que le processus pouvait être renversé.

Prévoir le danger

L'avantage, c'est que le service de partage de photos plafonne le nombre de tentatives qui peuvent être effectuées à partir d'une adresse IP particulière dans la fenêtre de 10 minutes. Par conséquent, M. Muthiyah a d'abord constaté que seulement 250 des 1 000 demandes qu'il avait envoyées ont été acceptées, tandis que les autres ont été limitées ou ont été rejetées.

Cependant, il s'est rendu compte qu'il était « capable d'envoyer des demandes en continu sans être bloqué », même si le nombre de demandes envoyées dans un laps de temps donné était effectivement limité.

« Après quelques jours d'essais continus, j'ai trouvé deux choses qui m'ont permis de contourner leur mécanisme de limitation de la fréquence », explique Muthiyah. Les deux choses étaient la situation de compétition et une rotation IP. Il ajoute : « L'envoi de requêtes simultanées utilisant plusieurs adresses IP m'a permis d'envoyer un grand nombre de requêtes sans être limité. »

« Lors  d’un scénario d'attaque réel, l'attaquant a besoin de 5000 adresses IP pour pirater un compte. Cela peut paraître énorme, mais c'est en fait facile si vous utilisez un fournisseur de services dans les nuages comme Amazon ou Google. Il en coûterait environ 150 dollars pour réaliser l'attaque complète d'un million de codes. » D'une manière générale, les techniques de force brute sont également associées aux botnets.

En conclusion, en plus d'utiliser un mot de passe fort et unique pour accéder (non seulement) à votre compte Instagram, il est toujours préférable de compter sur un facteur d'authentification supplémentaire. La plateforme a récemment élargi ses options d'authentification à deux facteurs. Le mois dernier, le site a également annoncé la mise à l'essai d'un nouveau processus de mise en application permettant aux utilisateurs de retrouver l'accès à des comptes qui ont été dépassés par des cybercriminels.