begin process at 2008 08 30 01:51:19
1 233 984 membres
22 nouveaux aujourd'hui
14 294 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

HACKME PART ONE (HACKERS ET MOT DE PASSE)


Information sur la source

Catégorie :Sécurité Niveau : Débutant Date de création : 09/08/2002 Date de mise à jour : 09/08/2002 17:57:20 Vu / téléchargé: 14 441 / 786

Note :
Aucune note

Commentaire sur cette source (21)
Ajouter un commentaire et/ou une note

Description

Un petit exemple qui montre comment "cacher" un mot de passe, ceci est un exemple basic, si il a du succes, je vous montrerai comment le rendre plus difficile a hacké.

Conclusion

Bon coding a vous

ManChesTer
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de bgK le 09/08/2002 11:51:28

    y manquerait pas un petit truc dans le zip ??
    rien de bien important, juste le fichier dfm de la form...

  • signaler à un administrateur
    Commentaire de ManChesTer le 09/08/2002 17:53:17 administrateur CS

    lol, bgk, merci de me l'avoir signalè ...

    je l'ai ajouter ;o)) voila

    bon coding ....

  • signaler à un administrateur
    Commentaire de jado le 09/08/2002 23:41:38

    Pas mal ton truc :)

  • signaler à un administrateur
    Commentaire de zmc le 10/08/2002 00:19:00

    oui camarade j'offre une recompense a celui qui me ramene le mot de passe, mort ou vif !

  • signaler à un administrateur
    Commentaire de DelphiCool le 10/08/2002 09:54:50 administrateur CS

    zmc look ton crackme ;-)

    Manchester, ce n'est un hackme mais un crackme

    le hack c'est pour les pass internet

  • signaler à un administrateur
    Commentaire de ManChesTer le 10/08/2002 12:55:08 administrateur CS


    lol, DelphiCool

    Quelque chose empêche d'utiliser cette technique pour une application internet ?

    Il me semble que non.

    Elle est donc généraliste, et c'est fait pour.... Et puis je lui donne le nom que j'ai envie. si j'avais voulu l'appelé PasswordProtect c'étais bon aussi, le but c qu'on pige de quoi ça parle et tu verras (mon titre n'est pas choisis pour la frime).

    la hackme fait référence aux hackers DelphiCool, et non a autre chose, tu ne crois pas que ça intéresse certaines personnes de comprendre les base de la protection par mot de passe ?

    Tu verra, l'épisode 2 seras un peux + hard et l'épisode 3 encore plus etc...

    Pour info sache que je donne des cours sur le sujet toute l'année et que les étudiants payent très cher ces infos que je place ici gratuitement.

    La protection d'applications c'est mon métier. Bien sur, je ne vais pas dévoilé ici les techniques les plus hard, mais une base qui permet de protéger par mot de passe assez efficacement une application sharware par exemple (sur le net ou non).

    On essayeras notamment d'apprendre comment décourager la plupart des hackers avec des techniques assez simple a mette en œuvre qui vont compliqué la vie des crakers, hackers et autres lamers, et en décourager un grand nombre.

    Voilà, vous savez ce qui vous attend.

    Je communiquerai le mot de passe et le moyen de généré des mot de passe pour cet exemple dans une semaine ...

    En attendant essayez de trouver un mot de passe valide....

    Bon coding

    Manchester.



  • signaler à un administrateur
    Commentaire de DelphiCool le 11/08/2002 18:08:27 administrateur CS

    lol

    je vais essayer de faire le keygen

    j'ai deja l'equation du second degres, reste plus qu'a la resoudre et c'est bon

    le bleme c'est que je e suis pas un matheux :-(

  • signaler à un administrateur
    Commentaire de zmc le 11/08/2002 18:34:33

    lol si ta deja des pb sur celui la le part 3 ca va etre bo ;o)

  • signaler à un administrateur
    Commentaire de DelphiCool le 11/08/2002 19:40:42 administrateur CS

    hihi

  • signaler à un administrateur
    Commentaire de DeeJay le 13/08/2002 22:55:43

       Ca y est, j'ai trouvé une sorte d'algorithme inverse :) Il fonctionne sur tout les mots de passe dont le cryptage donne un nombre positif (ou négatif mais sans bit perdu). En effet, si le nombre obtenu est négatif, cela signifie que lors de l'addition (et de la multiplication), le résultat a dépassé les 63 bits (modifiant donc le 64ième réservé au signe), et les bits situés après le 64ième bit ont été perdu. Donc à part inventer les bits perdu je ne vois pas trop de solution.



    --- Explication de l'algorithme ---
    Nous avons en boucle: sum := sum + (ord( psw[j] ) * sum) + ord( psw[j] )
    Soit x0 le sum de départ (c'est à dire 1234 lors du premier passage dans la boucle)
    Soit x1 le sum d'arriver et "a" la valeur de ord(psw[j]), et l'on obtient:
    x1 = x0 + ax0 + a

    On a la valeur du Sum final (x1), c'est à dire -8401839074697527297 pour le cas du code de ManChesTer, mais on va utiliser comme exemple le Sum final obtenu avec le code 'abcde', soit 12343825493999.
    On connait x1 et on cherche le sum précédent (x0). Donc:
    x1 = x0(1 + a) + a
    x0 = (x1 - a) DiviserPar (1 + a)

    Or, on sait que le résultat de cette division est un entier, c'est à dire (x1 - a)mod(1 + a) = 0. On teste toutes les valeurs de a dont on obtient un résultat sans reste.
    Avec 12343825493999, on obtient "abcdeghkmoqtvw" comme lettre minuscule possible. On en extrait x0 pour chaque lettre, et on recommence avec le Sum obtenu dans x0. (En recommençant on cherche biensûr la valeur du Sum situé avant x0, donc x0 prend la place de x1 dans la fonction).

    Si à la fin on arrive avec x0 < 1234 cela signifie que l'on a fait fausse route
    Si on a x0 = 1234 alors le code est valide
    Et si on a x0 > 1234 alors on continue (on cherche encore le Sum précédent).

    Pour 'abcde' on obtient comme code équivalent 'abced' ou encore 'AYdv<', '2bd<<', ' !""Gd', 'Adhvw',  :)



       Je ne vois pas où DelphiCool a put trouver une équation du second dégrès... Au début j'ai aussi essayé de résoudre le problème de façon mathématique, mais j'obtenais des équations que je n'arrivais pas à réoudre. Par exemple pour un mot de passe de 4 lettres:
    a(1 + b + c + d + bc + bd + cd + bcd) + b(1 + c + d + cd) + c(1 + d) + d = C
    avec a, b, c et d la valeur de chaque lettre et C une constante que l'on connait (C = 0x1CE5662AC6B7B4 pour le mot de passe de ManChesTer)

    Pour télécharger la source du programme, c'est ici:
    http://membres.lycos.fr/verygood/download/algo.zip

       Etant donné que toutes les solutions suceptible d'être correctes sont testées, le programme met quelques secondes, voir quelques minutes (ou quelques heures si on fait le test avec les caractères ASCII de 1 à 255) pour trouver un code correct.
    Pour ceux que ça intéresse, il y a une fonction qui convertie un nombre int64 en binaire et une autre qui fait l'inverse (binaire à int64) dans le zip.

    Voilà :-)

  • signaler à un administrateur
    Commentaire de ManChesTer le 14/08/2002 04:02:29 administrateur CS

    Deejay, ce serais sympa de mettre aussi la lib sFonctionsChaines dans ton zip.

    de toute facon, on complique un peux les choses le 18 ;o))

    et on ne parleras plu en secondes/minutes/heures mais en jours/semaine/mois pour trouvè 1 mot de passe +- valide ;o)), sinon fèlicitation pour ta rèflection.

    ps: remplace le sum=1234 par sum=-1;

    bon coding ...

    ManChesTer

  • signaler à un administrateur
    Commentaire de DeeJay le 14/08/2002 05:53:07

       Je viens de mettre à jour le zip en rajoutant les fonctions utilisées.

       Si c'est plus dur que ça le 18, je ne serai certainement pas à la hauteur ;) Sinon avec sum := -1 c'est beaucoup plus compliqué en effet, mon algorithme est inefficace :-)

  • signaler à un administrateur
    Commentaire de DelphiCool le 14/08/2002 09:39:23 administrateur CS

    bravo deejay

    l'uation que j'avais trouvé ressemble à la tienne

    somme actuelle = x + (y * x) + y
          x est la lettre
          y est la somme precedente

  • signaler à un administrateur
    Commentaire de ManChesTer le 19/08/2002 06:14:12 administrateur CS

    bon, le mot de passe est : "Je Suis Un Vrai Neuneu" sans les guillemets

    lol,

    Bon coding....

    ManChesTer

  • signaler à un administrateur
    Commentaire de DeeJay le 19/08/2002 08:34:49

    Il n'y a aucun algorithme inverse pour ce mot de passe... Fallait prévenir que le seul moyen de le trouver c'était le Brute Force :)
    C'était un défi perdu d'avance pour tout le monde (à moins de laisser son pc tourner pendant toute la semaine, voir plus).

    Enfin, je suis quand même content d'avoir trouver l'algo inverse pour les mots de passe court :p

  • signaler à un administrateur
    Commentaire de DelphiCool le 22/08/2002 22:41:29 administrateur CS

    Manchester, où est le generateur de code que tu avais promis?

  • signaler à un administrateur
    Commentaire de ManChesTer le 23/08/2002 13:14:24 administrateur CS

    Ajoute dans le code, avant le test if :

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Showmessage(Inttostr(calcpassword(edit1.text)));
    .... lasuite du code ....
    end;

    Je pensais que tous le monde avais trouvé ;o))

    Bon Coding

    ManChesTer

  • signaler à un administrateur
    Commentaire de DeeJay le 23/08/2002 15:51:19

    lol ManChesTer,

    DelphiCool voulait le générateur inverse je pense: à partir du code obtenir le mot de passe. Dans un commentaire tu as écrit:

    "Je communiquerai le mot de passe et le moyen de généré des mot de passe pour cet exemple dans une semaine"

    "le moyen de généré des mots de passe" est dans le zip, donc on a tous supposé que tu parlais de l'algorithme inverse. Enfin, je ne croit pas qu'il en existe un, le mot de passe est beaucoup trop long pour qu'à la fin de la boucle, le nombre obtenu tienne sur 64 bits... A moins d'inventer les bits perdus, c'est impossible.

    En tout cas, j'attend le "générateur inverse de code" avec impatience si il existe :) Et bravo pour TomRipley qui a trouvé le bon mot de passe en 15 minutes du "HACKME PART TWO". C'était plus un défi de crackeur que de programmeur :-)

  • signaler à un administrateur
    Commentaire de ManChesTer le 24/08/2002 04:45:14 administrateur CS

    Eneffet DeeJay,

    tu as raison l'algorithme inverse est impossible (pour les raison que tu explique d'ailleur).

    J'ai parler de "moyen de généré des mot de passe" (jaurais du ajoutè calculè) et pas d'algo inverse, an tappant votre password et le bou de code ci dessus, le showmessage affiche le résultat du calcul de votre password, que vous pouvez réutiliser plus tard.

    Je rapelle, que cette sèrie est destinée a apprendre des techniques, ce n'est pas un défit, si je veux faire un défit, il y a des sites pour ca !

    et tu veras dans HACKME PART TWO, quelques techniques anti-hacking, a vous de les compliquées, c'est les bases et non un travail fini ;o))

    (L'algo de cryptage de hackme part II est tres tres basic, je montre simplement la technique, a vous d'utiliser des algos complexes).

    Bon Coding...

    ManChesTer

  • signaler à un administrateur
    Commentaire de brado12696 le 30/05/2007 01:14:35

    dsl je ne conprend rien je suis un débutent pouvé vous mexpliquer

  • signaler à un administrateur
    Commentaire de valentin50 le 04/03/2008 14:49:00

    je les telecharger est jarrive pas a voir comment sa marche

Ajouter un commentaire

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

Boutique

Boutique de goodies CodeS-SourceS