hacktricks/pentesting-web/2fa-bypass.md

147 lines
8.3 KiB
Markdown
Raw Normal View History

# Contournement de l'authentification à deux facteurs (2FA/OTP)
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Expert Red Team AWS de HackTricks)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
Autres façons de soutenir HackTricks :
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
2022-04-28 16:01:33 +00:00
</details>
## **Techniques de contournement améliorées de l'authentification à deux facteurs (2FA)**
2022-04-28 16:01:33 +00:00
### **Accès direct aux points de terminaison**
Pour contourner le 2FA, accédez directement au point de terminaison suivant en connaissant le chemin est crucial. En cas d'échec, modifiez l'en-tête **Referrer** pour imiter la navigation à partir de la page de vérification 2FA.
### **Réutilisation de jetons**
La réutilisation de jetons précédemment utilisés pour l'authentification dans un compte peut être efficace.
### **Utilisation de jetons inutilisés**
Extraire un jeton de son propre compte pour contourner le 2FA dans un autre compte peut être tenté.
### **Exposition du jeton**
Vérifiez si le jeton est divulgué dans une réponse de l'application web.
### **Exploitation du lien de vérification**
L'utilisation du **lien de vérification par e-mail envoyé lors de la création du compte** peut permettre l'accès au profil sans 2FA, comme indiqué dans un [article détaillé](https://srahulceh.medium.com/behind-the-scenes-of-a-security-bug-the-perils-of-2fa-cookie-generation-496d9519771b).
### **Manipulation de session**
Lancer des sessions pour le compte de l'utilisateur et celui d'une victime, et terminer le 2FA pour le compte de l'utilisateur sans poursuivre, permet de tenter d'accéder à l'étape suivante dans le flux du compte de la victime, en exploitant les limitations de gestion de session côté serveur.
### **Mécanisme de réinitialisation de mot de passe**
L'examen de la fonction de réinitialisation de mot de passe, qui connecte un utilisateur à l'application après la réinitialisation, pour sa capacité potentielle à permettre plusieurs réinitialisations en utilisant le même lien est crucial. Se connecter avec les nouvelles informations de réinitialisation pourrait contourner le 2FA.
### **Compromission de la plateforme OAuth**
La compromission du compte d'un utilisateur sur une plateforme **OAuth** de confiance (par exemple, Google, Facebook) peut offrir une voie de contournement du 2FA.
### **Attaques par force brute**
#### **Absence de limite de taux**
L'absence de limite sur le nombre de tentatives de code permet des attaques par force brute, bien que des limites de taux silencieuses potentielles doivent être prises en compte.
#### **Force brute lente**
Une attaque par force brute lente est possible lorsque des limites de débit existent sans limite globale.
#### **Réinitialisation de la limite de renvoi de code**
Le renvoi du code réinitialise la limite de taux, facilitant les tentatives de force brute continues.
#### **Contournement de la limite de taux côté client**
Un document détaille les techniques pour contourner la limitation de taux côté client.
#### **Actions internes sans limite de taux**
Les limites de taux peuvent protéger les tentatives de connexion mais pas les actions de compte internes.
#### **Coûts de renvoi de code SMS**
Le renvoi excessif de codes via SMS entraîne des coûts pour l'entreprise, bien que cela ne contourne pas le 2FA.
#### **Régénération infinie d'OTP**
La génération infinie d'OTP avec des codes simples permet la force brute en réessayant un petit ensemble de codes.
### **Exploitation de la condition de course**
L'exploitation des conditions de course pour contourner le 2FA peut être trouvée dans un document spécifique.
### **Vulnérabilités CSRF/Clickjacking**
Explorer les vulnérabilités CSRF ou Clickjacking pour désactiver le 2FA est une stratégie viable.
### **Exploitation de la fonction "Se souvenir de moi"**
#### **Valeurs de cookie prévisibles**
Deviner la valeur du cookie "se souvenir de moi" peut contourner les restrictions.
#### **Impersonation de l'adresse IP**
L'usurpation de l'adresse IP de la victime via l'en-tête **X-Forwarded-For** peut contourner les restrictions.
### **Utilisation de versions plus anciennes**
#### **Sous-domaines**
Tester les sous-domaines peut utiliser des versions obsolètes sans prise en charge du 2FA ou contenir des implémentations de 2FA vulnérables.
#### **Points de terminaison API**
Les anciennes versions d'API, indiquées par des chemins de répertoire /v\*, peuvent être vulnérables aux méthodes de contournement du 2FA.
### **Gestion des sessions précédentes**
La terminaison des sessions existantes lors de l'activation du 2FA sécurise les comptes contre l'accès non autorisé à partir de sessions compromises.
### **Défauts de contrôle d'accès avec codes de secours**
2022-04-28 16:01:33 +00:00
La génération immédiate et la récupération potentielle non autorisée de codes de secours lors de l'activation du 2FA, en particulier avec des configurations CORS mal configurées/vulnérabilités XSS, représentent un risque.
2022-04-28 16:01:33 +00:00
### **Divulgation d'informations sur la page 2FA**
La divulgation d'informations sensibles (par exemple, numéro de téléphone) sur la page de vérification 2FA est une préoccupation.
### **Désactivation du mot de passe réinitialisant le 2FA**
Un processus démontrant une méthode de contournement potentielle implique la création de compte, l'activation du 2FA, la réinitialisation du mot de passe et la connexion ultérieure sans l'exigence du 2FA.
### **Demandes leurres**
L'utilisation de demandes leurres pour obscurcir les tentatives de force brute ou induire en erreur les mécanismes de limitation de taux ajoute une autre couche aux stratégies de contournement. La création de telles demandes nécessite une compréhension nuancée des mesures de sécurité de l'application et des comportements de limitation de taux.
## Références
* [https://medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35](https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/%22https:/medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35%22/README.md)
* [https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718](https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718)
<details>
<summary><strong>Apprenez le piratage AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Expert Red Team AWS de HackTricks)</strong></a><strong>!</strong></summary>
Autres façons de soutenir HackTricks :
* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez-nous** sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts GitHub.
</details>