Aller au contenu

kyotoo

Actif
  • Compteur de contenus

    22
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre

Information du profil

  • Genre
    Homme
  1. Ok d'accord avec vous. En ce qui concerne le champ mot de passe je ne peux le préremplir car il est chiffré, je suppose que c'est ce que tu veux dire par (Attention cependant aux pass cryptés)
  2. Bonjour Sur une page membre que j'esquisse, chaque utilisateur peut mettre à jour ses infos : login mot de passe adresse mail texte de présentation etc Quelle est la méthode préconisée pour mettre à jour la bdd : - utiliser un bouton unique qui met à jour tous les champs (submit en bas de page) - utiliser un bouton pour chaque thème ? Merci
  3. ok j'ai ajouté mysql_real_escape_string() Bien vu.
  4. En effet, car elle est protegée au moment où je fais appel à la fonction : je passe les arguments après la moulinette suivante: function safe_input($input) { if (!get_magic_quotes_gpc()) { $input = addslashes($input); } $input = trim(htmlspecialchars($input)); return $input; } C'est un oubli dans le code du tutorial que je n'avais pas vu, merci Cette partie est mystique pour moi...
  5. Merci pour les précisions. En fait je me suis basé sur cet article : http://www.olate.co.uk/articles/185 Non seulement les mots de passe sont chiffrés, mais chiffrés de plus avec un "salt" En ce qui concerne l'identification et l'authentification elle se fait bien en 2 étapes : function user_login($username, $password) { // Try and get the salt from the database using the username $query = "select salt from user where username='$username' limit 1"; $result = mysql_query($query); if (mysql_num_rows($result) > 0) { // Get the user $user = mysql_fetch_array($result); // Using the salt, encrypt the given password to see if it // matches the one in the database $encrypted_pass = md5(md5($password).$user['salt']); // Try and get the user using the username & encrypted pass $query = "select userid, username from user where username='$username' and password='$encrypted_pass'"; $result = mysql_query($query); if (mysql_num_rows($result) > 0) { $user = mysql_fetch_array($result); // Now encrypt the data to be stored in the session $encrypted_id = md5($user['userid']); $encrypted_name = md5($user['username']); // Store the data in the session $_SESSION['userid'] = $userid; $_SESSION['username'] = $username; $_SESSION['encrypted_id'] = $encrypted_id; $_SESSION['encrypted_name'] = $encrypted_name; // Return ok code return 'Correct'; } else { return 'Invalid Password'; } } else { return 'Invalid Username'; } } Cependant, le fait de chiffrer les mots de passe n'empêche pas les tentatives de connexion, car dans le formulaire on saisit le mot de passe en clair. Celui-ci n'est chiffré que sur le serveur. En résumé il n'y a pas de méthode miracle, mais j'aimerais bien en savoir plus sur les clauses LIKE Si vous avez des liens ou infos...
  6. Bonjour Est-il possible de faire exécuter un script php, de façon régulière, autrement qu'en ayant un accès local à la crontab du serveur ? Christophe
  7. Pour ma part je bloque 24h, après 3 tentatives par IP, et ce quelque soit le login. Si c'est un utilisateur légitime, il a la possibilité de regénérer un mot de passe, ce qui a pour effet de débloquer son IP Pour regénérer un mot de passe il faut connaitre l'adresse email associée au compte qui a subi une tentative d'usurpation. Pas simple comme histoire
  8. Vous avez raison, je vais donc bloquer l'exécution du script. Il suffisait d'y penser...
  9. L'IP ne change pas si souvent (à part chez aol d'après mon expérience) et mon but est surtout d'éviter les scripts robotiques qui envoient des centaines de tentatives par minute. L'utilisateur "de base" va vite se fatiguer au bout d'une dizaine d'essais infructueux, surtout s'il doit changer d'IP à chaque multiple de 3 Quant à la désactivation du bouton je me suis posé la question. Je pourrais en effet afficher un message xyz.
  10. A priori si le bouton submit est désactivé la requête POST ne peut pas être envoyée, à moins que l'utilisateur ne rafraichisse la page, auquel cas c'est la même combinaison login/pass qui est envoyée (et non une autre combinaison permettant de faire du brute force) Aurais-je été enduit d'erreur ?
  11. kyotoo

    copie d'image

    Prérequis : - tes fichiers sont sur un serveur Unix/Linux - tu as un fichier toto.txt qui contient une référence par ligne - tu as un répertoire nommé "destination" Le script est le suivant : #!/bin/sh exec < $1 while read line do cp $line destination/$line done Appelle le "copie.sh", rends le exécutable et lance la commande ./copie.sh toto.txt N'oublie pas le . dans ./copie.sh
  12. Bonjour Afin de protéger un formulaire de login, j'ai mis en place un système de blacklist IP : Au bout de 3 essais infructueux, l'adresse IP est bloquée (bouton submit désactivé) Est-ce une méthode efficace pour freiner les attaques par dictionnaire ? A part le captcha (j'en ai lu des vertes et des pas mûres sur le sujet), connaissez-vous d'autres méthodes ? Note : le formulaire de login est envoyé via la requête POST Christophe
  13. Bonjour, Quel serait l'outil adapté pour que : - un visiteur accède à x revues techniques gratuitement (après inscription nom + adresse mail + validation) - un visiteur accède à l'ensemble des revues techniques après abonnement (paiement annuel ou trimestriel reconduit automatiquement) - un administrateur ajoute et mette à jour les revues - un administrateur gère les abonnés. - le tarif de l'abonnement tourne autour de 60 euros par an - les mises à jour de revues se font mensuellement Question annexe : existe t-il un moyen de protéger contre la copie ou diffusion des documents pdf (outre un mot de passe et une alerte juridique) ? Merci Christophe
×
×
  • Créer...