Drill Draw 6.3.3

Vous avez un problème pour cracker ou vous souhaitez parler de reversing en général...

Re: Drill Draw 6.3.3

Messagepar 288-10 » 14 Mars 2012, 05:02

Je crois que j'ai trouvé l'endroit.
Code: Tout sélectionner
Public Property Status As String
    Get
        Return Me.status
    End Get
    Set(ByVal value As String)
        Me.status = value
    End Set
End Property

Comment faire maintenant pour changer value pour 0 et toujours obtenir LOGIN_SUCCESS.
Merci pour votre aide.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar Todd » 14 Mars 2012, 07:43

Tu pourras voir une chose, c'est qu'à cet endroit, il n'y a pas beaucoup de place pour insérer du code. :( Mais ça tombe bien puisqu'il ne faut pas y coller la chaine "LOGIN_SUCCESS", mais seulement y charger sur la pile son pointeur ! 8)
Tu dois donc parcourir le code avec IDA pour trouver où cette chaine est utilisée et comment elle l'est. :wink:
IDA te permettra également d'identifier l'offset où se trouve le GET/SET à modifier. :D
Un petit coup d'éditeur hexa et tu auras encore franchi une étape. :roll:

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

Re: Drill Draw 6.3.3

Messagepar 288-10 » 15 Mars 2012, 03:29

Bon ce soir j'ai tournée en rond. Je suis bloqué car je ne sais plus comment m'y prendre. J'ai trouver le code suivant dans IDA mais je ne sais pas quoi faire avec.
Code: Tout sélectionner
 
 {
    .maxstack 2
    ldarg.0
    ldarg.1
    stfld    string DrillDraw.LiveUpdate.RequestData::status
    ret
  }

Je n'ai jamais vu de code IL. Je crois que statut dois retourner LOGIN_SUCESS si je ne me trompe pas. Mais j'ai aucune idée comment m'y prendre. Suis-je sur la bonne piste au moins ?
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar Todd » 15 Mars 2012, 11:13

288-10 a écrit:Je n'ai jamais vu de code IL
C'est chose faite ! :D Alors je fais les présentations : "288-10, voici du code IL... et IL je te présente 288-10." :lol:
288-10 a écrit:statut doit retourner LOGIN_SUCESS
Disons que c'est ce que tu aimerais ! :P
288-10 a écrit:j'ai aucune idée comment m'y prendre
J'ai dit en chargant l'offset de "LOGIN_SUCESS" sur la pile. :wink:
Il faut donc remplacer :
Code: Tout sélectionner
    ldarg.1
    stfld    string DrillDraw.LiveUpdate.RequestData::status
Par :
Code: Tout sélectionner
ldstr "LOGIN_SUCESS"
Mais là seul IDA pourra te donner la valeur hexa(cte :aie:)
ATTENTION à remplacer le nombre exacte d'octet ! :roll:
288-10 a écrit:Suis-je sur la bonne piste au moins ?
Non pas du tout ... je suis un sadique ! :twisted: :lol:
En fait, si tu as généré un serial valide et que tu penses qu'il est refusé par le serveur et que c'est le dernier point bloquant !? Modifier la propriété GET t'assurera d'avoir systématiquement un réponse valide. C'est une certitude ! 8) Au delà de ça je n'ai pas la réponse et tu devras essayer. :wink:

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

Re: Drill Draw 6.3.3

Messagepar 288-10 » 16 Mars 2012, 03:59

J'ai modifié le code avec reflexil j'ai mis ldstr "LOGIN_SUCESS" et ca ne fonctionne pas. Il fait la connection au site web et il reste gelé là. Je reste avec le symbole triangle jaune avec un point d'exclamation écrit connection. Je ne vois pas ou je fait l'erreur.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar Todd » 16 Mars 2012, 07:44

288-10 a écrit:j'ai mis ldstr "LOGIN_SUCESS" et ça ne fonctionne pas.
Je me doutais que tu dirais ça ! :roll: A quel endroit as-tu mis exactement cette "ligne" ? J'ai parlé de 2 instructions à remplacer par 1 seule ! :wink:
En cliquant sur le bouton pour valider ton serial, tu ne peux avoir qu'un message de validation. 8) Sinon tu t'es planté ! :(

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

Re: Drill Draw 6.3.3

Messagepar 288-10 » 17 Mars 2012, 16:54

Voici comment je modifie et la réponse que j'obtiens.
Image
Image
Image
Voilà le résultat obtenu lorsque je le sauvegarde et essaie le programme.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar Todd » 17 Mars 2012, 23:39

Je n'utilise plus Reflexil depuis bien longtemps, alors je ne sais pas s'il gère correctement la suppression de ligne !? :? Tu en as 4 d'origines et 3 ensuite ! :shock: Tu seras fixer en remplaçant la ligne 1 (ldarg.1) par NOP. :wink:
Pour l'autre ligne, tu as fait la bonne modification, sauf que là encore je ne sais pas comment réagit Reflexil !? :( Ajoute-t-il une constante ou utilise-t-il celle existante ? Le résultat devrait être le même, mais le problème peut aussi venir de là !? Le mieux est de se référer à IDA pour en être sûr. :wink:

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

Re: Drill Draw 6.3.3

Messagepar 288-10 » 18 Mars 2012, 21:51

Bonjour Todd et merci de ton aide.
Avec IDA je remplace ldarg.1 avec 00 (NOP). Ensuite j'ai trouvé ldstr "LOGIN_SUCESS" ailleur dans le code et ça me donne 72 2C 62 01 70 mais lorsque je l'utilise pour remplacé
stfld string DrillDraw.LiveUpdate.RequestData::status ça ne fonctionne pas. Pourtant lorsque j'utilise 72 35 E1 00 70 que j'ai trouvé ailleur et qui veut dire "LOGIN" ça fonctionne. Je ne comprends pas pourquoi. Comment faire pour convertir mon String "LOGIN_SUCESS" en Hexa ? Ensuite je serai prêt à tester.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar 288-10 » 18 Mars 2012, 23:40

Bon finalement dans IDA PRO dans la vue IDA-View j'ai le code suivant.
Code: Tout sélectionner
 
 {
    .maxstack 2
    ldarg.0
    nop
    ldstr    "LOGIN_SUCESS"
    ret
  }

Dans la vue Hexa j'ai la suivante.
Code: Tout sélectionner
02 00 72 6D 3B 00 70 2A

J'ai toujours le même problême. Le programme reste figé à connection au serveur.
Là je ne sais plus quoi faire. Je croyais bien avoir réussi.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar 288-10 » 19 Mars 2012, 03:01

Bon finalement j'ai réussi à passé la vérification sur le web :D .
Ce n'est pas le set que j'ai du modifier mais bien le get de la façon suivante.
Code: Tout sélectionner
  {
    .maxstack 1
    ldarg.0
    ldstr    "LOGIN_SUCESS"
    ret
  }

Un autre problème à l'horizon par contre :cry:
Il vérifie la licence sur le web dit que le code est bon ensuite le programme ouvre mais j'ai les même limitation que si le programme était en essaie. C'est à dire que je ne peux pas sauvegarder plus de 2 exercices et sur les dessins de patinoire il est écrit version d'essaie.
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar Todd » 19 Mars 2012, 11:04

288-10 a écrit:Il vérifie la licence sur le web dit que le code est bon ensuite le programme ouvre mais j'ai les même limitation que si le programme était en essaie.
J'avais fait le même constat, mais j'aurai cru que ton keygen aurait fait la différence ! :(
Visiblement l'investigation n'est pas finie :roll: ... soit ton keygen est erroné :?, soit dans la réponse du serveur, il y a autre chose qui te fait basculer du côté obscur ! :lol:
On peut facilement trouver l'origine du mode démo, car certaines routines d'initialisation sont plus qu'explicites ! :shock: Alors à toi de trouver, où elles sont appelées et comment les contourner, maintenant que tu maitrises la technique de modification du code IL. :D
Et tu en auras besoin bien plus que Reflexil, si tu veux modifier certains sauts conditionnels imbriqués. :wink:

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

Re: Drill Draw 6.3.3

Messagepar 288-10 » 20 Mars 2012, 03:37

Bonjour à tous.
J'ai continuer mes recherche ce soir. Je pense avoir trouvé quelque chose d'intéressant mais je ne suis pas capable de le modifier comme je voudrais. Voici le code.
Il est située drawTools.dll DrillDraw.App_Manager.BigBoss
Code: Tout sélectionner
Public Shared Function accessCodeOK(ByVal accessCode As String) As Boolean
    If ((DateTime.get_Now.get_Month < BigBoss.NotOKCodes_Month) AndAlso (DateTime.get_Now.get_Year < BigBoss.NotOKCodes_Year)) Then
        Dim i As Integer
        For i = 0 To BigBoss.OKAccessCodes.Length - 1
            If (accessCode = BigBoss.OKAccessCodes(i)) Then
                Return True
            End If
        Next i
    End If
    Return False
End Function

J'ai fait plusieurs essai pour retourner la valeur True au lieu de false. Je crois avec un retour à true le programme débloquerais.
Un autre point que j'ai remarqué, lorsque je vais dans Aide, a propos, afficher information de la licence il est encore écrit:
Licence valide pour: Edition pro - version 6 **version d'essaie** même après avoir eu un LOGIN SUCESS auprès du serveur.
Crois-tu que je suis sur une bonne piste ?
Ce peux-t-il qu'il ne soit pas crackable ?
Merci pour tes réponses Todd.
J'était encouragé hier, aujourd'hui un peu moins :D
288-10
Débutant
Débutant
 
Messages: 36
Inscription: 03 Septembre 2007, 18:13

Re: Drill Draw 6.3.3

Messagepar ga » 20 Mars 2012, 12:57

Salut,

Quant je disais que ce programme était pas évident, je n'étais pas dans le faux. :mrgreen:

288-10 a écrit:J'était encouragé hier, aujourd'hui un peu moins
Courage, la joie d'avoir réussi n'en sera que plus grande. :wink:
L’Univers est affecté par chacun de nous, chacun de nous est dépendant de l’état de l’Univers.
Avatar de l’utilisateur
ga
King of Cracking
King of Cracking
 
Messages: 779
Inscription: 27 Décembre 2006, 19:11
Localisation: Tranquillement chez moi !

Re: Drill Draw 6.3.3

Messagepar Todd » 20 Mars 2012, 21:49

288-10 a écrit:Crois-tu que je sois sur une bonne piste ?
Je ne suis pas à l'origine du programme :shock:, j'en sais rien ! :? Qu'est-ce qui t'empêche d'essayer, la modification que tu proposes est extrêmement simple ! :roll:
Remplacer "ldc.i4.0" par "ldc.i4.1" n'est pas ce qu'on peut appeller une difficulté !? :?

288-10 a écrit:Se peut-il qu'il ne soit pas crackable ?
:shock: Certainement pas ! :gné: Le code est tellement transparent qu'on voit presque au travers ! :lol:
Ce n'est pas difficile... c'est long et tu as probablement fait le plus gros, car plus tu avances, plus tu t'approches de l'objectif au vue des terminologies employées. 8) Et je pense que "BigBoss" n'est pas un terme anodin. :wink:

Todd
Avatar de l’utilisateur
Todd
Modérateur
Modérateur
 
Messages: 1795
Inscription: 19 Avril 2009, 12:11

PrécédenteSuivante

Retourner vers Reversing

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 5 invités