Fonction C pour tester un mot de passe Unix

Fonction C pour tester un mot de passe Unix - Programmation

Marsh Posté le 26-06-2002 à 13:18:21    

Existe t'il une fonction C qui permet de tester le mot de passe d'un compte systeme unix (linux).
 
genre : fonction(user,password) retourne 1 si mdp est ok
 
Je pense pas que çà existe mais bon :)
Sinon y aurait t'il un moyen de faire çà ?

Reply

Marsh Posté le 26-06-2002 à 13:18:21   

Reply

Marsh Posté le 26-06-2002 à 13:32:23    

#include <pam.h>
 
Et regarde la doc de PAM.


---------------
« No question is too silly to ask, but, of course, some are too silly to answer. » -- Perl book
Reply

Marsh Posté le 26-06-2002 à 19:53:04    

je cherche mais je trouve rien de bien terrible sur PAM

Reply

Marsh Posté le 26-06-2002 à 21:22:53    

netneo a écrit a écrit :

je cherche mais je trouve rien de bien terrible sur PAM




 
 :heink:  
 
15s sur google, et je sais pas ce que c'est PAM, et je code pas sous Linux (enfin, pas ca :p)
http://www.openwall.com/passwdqc/
 
Et c'est probablement ce que tu veux faire en fait, tu veux juste essayer de pirater un mot de passe hein  :sarcastic:


---------------
Informaticien.be - Lancez des défis à vos amis
Reply

Marsh Posté le 27-06-2002 à 10:54:50    

J'ai trouvé ce bout de code, çà correspond exactement à ce que je veut faire mais çà fonctionne pas  :(  
 

Code :
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <pwd.h>
  4. main(int argc, char *argv[])
  5. {
  6.   char *login=argv[1];
  7.   char *password=argv[2];
  8.   struct passwd *user;
  9.  
  10.   if ((user= getpwnam(login)) == NULL)
  11.     printf("No such user\n" );
  12.   else if (!strcmp(user->pw_passwd, crypt(password, user->pw_passwd))
  13.     printf("Password correct\n" );
  14.   else
  15.     printf("Password incorrect\n" );
  16. }


 
Il trouve bien le user, mais le password est toujours incorrect

Reply

Marsh Posté le 27-06-2002 à 10:57:19    

Les password n'étant pas en clair, il te faut certainement cripté le password entré en argument avant de le comparer au paswd de l'utilisateur.


---------------
Le Tyran
Reply

Marsh Posté le 27-06-2002 à 10:59:03    

http://www.unixpapa.com/incnote/passwd.html
 
la fonction crypt sert à crypter justement


Message édité par matt276 le 27-06-2002 à 11:00:35
Reply

Marsh Posté le 28-06-2002 à 01:10:59    

up

Reply

Marsh Posté le 02-07-2002 à 09:09:33    

up

Reply

Marsh Posté le 02-07-2002 à 10:04:53    

apt-get install libpam-doc
 
Et il faut éviter d'utiliser les fonctions à la getpwd, l'architecture d'authentification sous Linux, maintenant, c'est PAM et rien d'autre.


---------------
« No question is too silly to ask, but, of course, some are too silly to answer. » -- Perl book
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed