IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] Force brut - comment s'en défaire et en faire? [Fait]


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de Ministar
    Inscrit en
    Septembre 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Septembre 2006
    Messages : 143
    Points : 56
    Points
    56
    Par défaut [Sécurité] Force brut - comment s'en défaire et en faire?
    J'en ai entendu parler il n'y a pas longtemps du coup je me pose des questions sur l'avenir de mon site.
    Comment faire pour ne pas laisser faire de la force brut?
    Au delà de la protection je me suis aussi demandé comment créer un bot qui executerais de la force brut sur mon site pour que je puisse tester sa résistance?

    Merci

  2. #2
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    essayer de trouver un mot de passe par la force brute, ça revient à tester toutes les combinaisons possibles pour un ensemble donné de caractères...

    http://www.developpez.net/forums/sho...d.php?t=271850

    Pour s'en protéger, il suffit par exemple soit d'imposer un délai entre deux essais, soit bloquer le compte au bout de X essais faux...

  3. #3
    Membre du Club Avatar de Ministar
    Inscrit en
    Septembre 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Septembre 2006
    Messages : 143
    Points : 56
    Points
    56
    Par défaut
    Merci pour les réponses, je vais voir comment les mettres en oeuvre.
    En ce qui concerne la deuxième partie de ma question, comment puis-je fabrique moi même un bot?

  4. #4
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    @Titoumimi
    Est-ce que tu as un exemple de code pour mettre un délai entre 2 essais?
    Quelle fonction utilises-tu?

    Merci !

  5. #5
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    Citation Envoyé par mathieugamin
    @Titoumimi
    Est-ce que tu as un exemple de code pour mettre un délai entre 2 essais?
    Quelle fonction utilises-tu?

    Merci !
    on suppose que ton pass est stoqué en DB.
    En cas d'erreur, tu va stoquer le timestamp dans ta base. à la prochaine tentative, tu va comparer la différence entre le timestamp stoqué et le timestamp courrant, et à ce moment là tester ou non le passord.

  6. #6
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    Mais bien sûr !
    Merci, c'est en fait tout simple !

    Ben je vais essayer ça tout de suite !

    Merci

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 310
    Points : 393
    Points
    393
    Par défaut
    Citation Envoyé par titoumimi
    on suppose que ton pass est stoqué en DB.
    En cas d'erreur, tu va stoquer le timestamp dans ta base. à la prochaine tentative, tu va comparer la différence entre le timestamp stoqué et le timestamp courrant, et à ce moment là tester ou non le passord.
    Tu pourrais aussi doublé le délai d'attente entre chaque tentative.

  8. #8
    En attente de confirmation mail
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Points : 265
    Points
    265
    Par défaut
    effectivement je n'y avais pas pensé... pas bête si ce n'est que ça peut embêter le vrai détenteur du compte. Moi je loggue l'IP si erreur. Au bout de 3 logs je bloque l'accès pour cette IP pendant X temps... Ce n'est pas parfait mais bon. Je me demande lequel des 2 systèmes est le mieux ?

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Août 2004
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 310
    Points : 393
    Points
    393
    Par défaut
    Citation Envoyé par bigsister
    si ce n'est que ça peut embêter le vrai détenteur du compte.
    À mon sens, le vrai détenteur du compte ne s'amusera pas à essayer 20 mots de passe, il va normalement utiliser la procédure de récupération de mot de passe.

  10. #10
    En attente de confirmation mail
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2002
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 314
    Points : 265
    Points
    265
    Par défaut
    À mon sens, le vrai détenteur du compte ne s'amusera pas à essayer 20 mots de passe, il va normalement utiliser la procédure de récupération de mot de passe.
    -> oui mais s'il passe juste après le hacker, il ne pourra pas se connecter à son compte car celui-ci l'aura bloqué...

  11. #11
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    Pour ma part, je suis plus favorable au blocage par IP, éventuellement combinée au blocage de compte, mais rien n'est parfait dans le domaine. Juste pour rappel, les attaques par force brute ne sont pas aussi fréquentes que les attaques par social engineering, sans compter que meilleur est le mot de passe, plus l'attaque par force brute est inefficace.

    Il est donc, à mon avis, plus intéressant de lutter pour avoir des mots de passe "sérieux" que pour éviter toutes les attaques qui seront statistiquement trop longues (peu de sites permettent par le débit de faire plus de 50 tentatives par seconde. Si tu as des mots de passe suffisamment complexes (au moins 8 chiffres + lettres Maj + Lettres Min + Caractères spéciaux)), le nombre de combinaisons à tester pour trouver un mot de passe (en supposant qu'un nom d'utilisateur soit connu) avoisine les 1,7 millions de milliards de possibilités et donc, même en considérant 1000000 de tentatives par seconde, tu peux attendre 53000 années pour être certain que le hacker ait trouvé ton mot de passe. Je ne chercherai donc pas à calculer si tu ajoutes quelques caractères aux mots de passe.

    Le seul site qui sera vraiment sécurisé est un site sur un serveur qui n'est pas connecté physiquement et éteint.

  12. #12
    Membre habitué
    Avatar de Amnesiak
    Profil pro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Points : 151
    Points
    151
    Par défaut
    Citation Envoyé par bigsister
    -> oui mais s'il passe juste après le hacker, il ne pourra pas se connecter à son compte car celui-ci l'aura bloqué...
    Exactement, c'est le principe de l'attaque du Deny of Service (DoS), faille souvent exploitée pour nuire à un utilisateur particulier.

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/11/2007, 02h27
  2. sécurité et virtualisation comment ca se passe?
    Par lenaida dans le forum Sécurité
    Réponses: 4
    Dernier message: 14/05/2007, 23h59
  3. comment placer une image et la faire bouger
    Par walido dans le forum MFC
    Réponses: 3
    Dernier message: 30/03/2007, 14h18
  4. Réponses: 2
    Dernier message: 27/06/2006, 08h34
  5. [cryptage]algo de force brut ?
    Par Regis.C dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 09/08/2005, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo