logo Homepage
+  NewbieContest
|-+  Divers» Hacking» Les md5
Username:
Password:
Pages: 1 [2]
  Imprimer  
Auteur Fil de discussion: Les md5  (Lu 12605 fois)
Gardel

Profil challenge

Classement : 670/54283

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1012


Voir le profil
« #15 le: 19 Août 2006 à 12:37:51 »

merci Mic32768 !

En effet, j'ai lu un article sur John hier qui disait qu'il ne supportait pas les md5, ce qui confirme le pourquoi du comment
Journalisée

Selon le postulat que les filles, c'est du temps accordé et de l'argent dépensé : Filles = Temps . Argent
Et comme chacun le sait, "le temps c'est de l'argent", donc : Temps = Argent
Par conséquent : Filles = Argent . Argent
Et parce que, "l'argent est la racine du mal" : Argent = sqrt(Mal)
On en déduit que : Filles = sqrt(Mal).sqrt(Mal)
Force est de constater que : Filles = Mal
Freem
Profil challenge

Classement : 4502/54283

Néophyte
*
Hors ligne Hors ligne
Messages: 26


Voir le profil
« #16 le: 24 Août 2006 à 23:51:05 »

Euh... pour ce qui est du code en C, il n'y a presque rien a changer, a part déclarer les varaibles au début du prog, inclure les bibliothèques et gérer les E/S....
Par contre, (j'ai envie de mettre un p'tit grain de mer**) tu aurai pu eviter un if ainsi que la fonction de test.
Enfin, poour mieux m'expliquer, j'ai "traduit" en C mais avec des E/S de console (je ne me souvient plus comment on fait pour les E/S avec une page web):
Code:
// il faudra penser a inclure la bibliothèque qui contient la fonction "char *md5(char *)"

#include <stdio.h>
#include <string.h>

void main(void)
{
char alphabet[]="abcdefghijklmnopqrstuvwxyz";
unsigned long=size_alph=strlen(alphabet),
size_pwd=strlen(pwd),
position=0,//focus
i;
char first_letter, current_char, next_letter;

//if(isset($_GET['pass'])) pwd = _GET['pass'];
scanf("%s",pwd);
/*je ne sais pas comment remplacer la ligne au dessus, donc, bah...
mon prog ne s'éxécute pas en cgi ;) mais dans une console.
En fait, on peut dire que je n'ai rien changé a une ou deux lignes,
puisque le PHP (comme le java) est dérivé du C pour la syntaxe (entre autres)
Pour refaire le prog comme dans sa version PHP, il suffit de modifier les E/S*/
else pwd=alphabet[0];

while(!strcmp(md5(pwd),"hash a cracker"))
{
    position=strlen(pwd)-1; // on place le focus sur le dernier caractère

    // tant que l'on a le dernier caractère, on remonte
    while(pwd[position]==alphabet[size_alph-1]) position--;

    // Si on a trop remonté, on crée un nouveau caractère
    if(position==pow(2,1+sizeof(long))-1)
    {
        $pwd.=0; // ajout d'un élément vide
       
        size_pwd=strlen(pwd); // on actualise la taille
        // on remet tout à zéro :
        first_letter=alphabet[0];
        for(i=0;i<size_pwd;i++) pwd[i]=first_letter;
    }
    else
    {
        // sinon on incrémente le caractère sur lequel on a le focus
        current_char=pwd[position];
        i=0;
        next_letter='';
        // on cherche la lettre suivante dans l'alphabet
        while(!next_letter)
        {
            if(alphabet[i]==current_char) next_letter=alphabet[i+1];
            i++;
        }
        // on met à jour le caractère
        pwd[position]=next_letter;

        // tous les caractères qui suivent le caractère changé doivent être remis à zéro  
        for(i=position+1;i<size_pwd;i++) pwd[i]=alphabet[0];
    }
}
printf("%s",pwd);
}
Journalisée
Mic32768
Profil challenge

Classement : 1033/54283

Membre Junior
**
Hors ligne Hors ligne
Messages: 67


Voir le profil
« #17 le: 25 Août 2006 à 00:50:00 »

Es-tu certain que la fonction md5() existe en C
Journalisée
Freem
Profil challenge

Classement : 4502/54283

Néophyte
*
Hors ligne Hors ligne
Messages: 26


Voir le profil
« #18 le: 25 Août 2006 à 18:53:36 »

En fait elle n'existe pas dans la bibliothèque standard, mais je suis (quasi) sur que les bibliothèques php sont compatibles avec le C, voire même qu'elles ont été écrites en C/C++...
Mon prof d'info m'avait dit (si je me souvient bien) que les fonctions de php étaient dérivées du C, donc bon...
En plus, le php est un langage interprêté, donc beaucoups plus lent... je suis donc persuadé que les fonctions qu'il utilise ne sont pas codées en php.

Le problème revient donc a trouver dans quelle librairie cette fonction se trouve.
Journalisée
Nebelmann

Profil challenge

Classement : 462/54283

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1357


Voir le profil
« #19 le: 27 Août 2006 à 09:15:49 »

dans les libs de crypto... ou alors tu peux utiliser la commande md5sum sinon
Journalisée

-- Nebelmann -- Registered linux user #429186
«Si les lecteurs étaient des compilateurs, les posteurs feraient peut-être davantage attention à ce qu'ils écrivent...»
Folcan

Profil challenge

Classement : 508/54283

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #20 le: 27 Août 2006 à 22:51:06 »

Citation
Mon prof d'info m'avait dit (si je me souvient bien) que les fonctions de php étaient dérivées du C, donc bon...
Le php viens bien du C


Citation
1994/95 L’idée de Rasmus Lerdorf

Le langage PHP a été créé par un Danois, Rasmus Lerdorf en 1994 parce qu’il cherchait à élaborer un script simple pour enregistrer les passages sur une passage personnelle sur laquelle son CV était présenté. Ne trouvant rien de vraiment commode, il décide de créer on propre langage de script pour résoudre le problème.

Il faut dire que Rasmus Lerdorf n’est pas le premier informaticien venu : c’est un spécialiste des solutions Unix qui a déjà dix ans d’expérience dans le domaine. Mais au moment où il crée sa page perso, il est à la recherche d’un employeur, et se dit que montrer une page avec les logs des visiteurs peut en impressionner plus d’un.

Mais sa page est vue aussi par de nombreux webmasters, qui lui réclament son script (au départ une simple collection d’outils sous forme de scripts perl/cgi). Les premiers scripts sont déjà capables d’exécuter des requêtes mSql, et de gérer des formulaires.

L’ensemble constitue les "PHP Tools" (Personal Home Page Tools, outils pour pages personnelles), et c’est ce qui explique l’origine du nom PHP.

1995 : version 1.0 - l’interpréteur

Lerdorf a rapidement fait évoluer ses scripts, pour créer un véritable interpréteur de tags HTML qui simplifiait l’utilisation de ses scripts. Ce mini langage a connu un succès immédiat. Stimulé par la communauté des utilisateurs, qui lui suggèrent de doter le langage de boucles structures conditionnelles et d’autres fonctionnalités sympathiques, Lerdorf se plonge dans les langages évolués de l’époque pour en retirer le meilleur.

1996 : version 2.0 - PHP devient un véritable langage évolué

Lerdorf n’est pas un développeur expert, donc il garde la syntaxe du C, qui lui est familière, mais il s’imprègne également de concepts issus de Bison GNU et de YACC.

La version 2.0 est une révolution, car elle permet d’insérer dans une page HTML des instructions puissantes, mais aussi des requêtes sql, avec une facilité déconcertante. L’une des qualités les plus remarquées du PHP, c’est aussi la rapidité d’exécution des scripts, car il fonctionne comme un module compilé avec le serveur web Apache.

PHP/FI (c’est son nom à l’époque) intéresse déjà plusieurs sites commerciaux, qui l’adoptent. A partir de 1998, plusieurs hébergeurs commencent à proposer à leurs clients ce langage. Le phénomène PHP est lancé...

1998 : version 3.0 - La consécration

Le nombre d’installations augmentant, de nouveaux besoins apparaissent, et certains défauts sont devenus plus difficilement tolérables. Mais face à l’ampleur de la tâche, Lerdorf se fait aider cette fois-ci par une équipe de nouveaux développeurs bénévoles : on peut citer Stig Bakken, Shane Caraveo, Andi Gutmans, Zeev Suraski, et Jim Winstead.

C’est grâce à cette version que le php s’est imposé rapidement comme un véritable langage idéal pour générer des pages dynamiques. Associé à la base mysql, il s’est répandu chez la plupart des hébergeurs, gratuits ou payants, comme le successeur définitif des Perl CGI sur les serveurs LINUX/UNIX.

1999 : la version 4.0 - Le moteur Zend

Réécrit entièrement par Andi Gutmans et Zeev Suraski, le nouveau "moteur" du langage PHP, baptisé Zend, est intégré dans la version de base et donne la version 4.0 du langage. Cette version intègre une gestion des sessions, qui permet de faciliter l’écriture de pages dynamiques personnalisées.

2004 : vers la version 5.0...

Mais là on a un peu de temps pour en reparler...



source : http://www.webmaster-hub.com/publication/article9.html
Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
lordzak

Profil challenge

Classement : 2131/54283

Membre Senior
****
Hors ligne Hors ligne
Messages: 358


Voir le profil
« #21 le: 28 Août 2006 à 09:04:32 »

Ah c'est cool d'avoir fait une réécriture en C mais elle n'est pas encore très au point
je ferai la mienne quand j'aurais le temps.

Le PHP gère les chaines de caractères dynamiquement, bcp plus facilement qu'en C c'est pour ça que ce n'est pas forcément évident
Journalisée

"Il ne faut jamais prendre les gens pour des cons mais il ne faut pas oublier qu'ils le sont."
lilxam
Profil challenge

Classement : 130/54283

Membre Complet
***
Hors ligne Hors ligne
Messages: 154


Voir le profil WWW
« #22 le: 28 Août 2006 à 10:22:24 »

Moi avec John the ripper sa marche presque pas!!
Hier quand j'ai fai l'épreuve n°2 de hacking, pour decrypter le md5 j'ai passer au moins trois heures!
J'ai lue l'article sur newbiecontest puis enfin j'y suis arriver et quand j'ai voulu le refaire sa marchait plu!!!j'avait pourtant retaper exactement les meme commandes!!!
Comment sa se fait?
Journalisée

Pourquoi faire simple quand on peut faire compliquer ?
Folcan

Profil challenge

Classement : 508/54283

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #23 le: 28 Août 2006 à 14:02:37 »

Parce que tu l'as mal fait...

Perso j'ai testé pas mal de fois, et tout fonctionne normallement !
Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
lilxam
Profil challenge

Classement : 130/54283

Membre Complet
***
Hors ligne Hors ligne
Messages: 154


Voir le profil WWW
« #24 le: 28 Août 2006 à 14:36:57 »

Oui c bon j'ai trouver!!
Je le faisait effectivement mal !
Journalisée

Pourquoi faire simple quand on peut faire compliquer ?
MastringIp
Profil challenge

Classement : 11588/54283

Néophyte
*
Hors ligne Hors ligne
Messages: 2


Voir le profil
« #25 le: 31 Août 2006 à 11:16:06 »

Sinon, il y a des sites interessants...

Comme Milw0rm
Journalisée
lordzak

Profil challenge

Classement : 2131/54283

Membre Senior
****
Hors ligne Hors ligne
Messages: 358


Voir le profil
« #26 le: 31 Août 2006 à 11:18:16 »

Citation
Access Denied (content_filter_denied)

Votre demande a été refusée à cause de sa catégorie: "Criminal Skills;Malicious Sites"
Journalisée

"Il ne faut jamais prendre les gens pour des cons mais il ne faut pas oublier qu'ils le sont."
Delta

Profil challenge

Classement : 3775/54283

Néophyte
*
Hors ligne Hors ligne
Messages: 36


Voir le profil WWW
« #27 le: 31 Août 2006 à 11:49:28 »

Sinon il y a PasswordsPro qui est simple et permet des attaques comme BruteForce, Hybride, Masque ou Dictionnaire .
Journalisée

Pages: 1 [2]
  Imprimer  
 
Aller à: