QUESTIONS NEWBIE

Tout sur les langages de programmation.

QUESTIONS NEWBIE

Messagepar totobot » 24 Février 2014, 11:28

Bonjour à tous , je suis entrain d'apprendre le cracking ,

Mais je me pose plusieurs questions :

Qu'est ce qu'un CALL ? c'est une instruction de vérification ? par exemple la vérification d'un sérial ?

Peut on remplacer un call par un nop ?

Du coup pas de vérification non ? ou je me trompe

Et si j'ai bien compris PUSH met le registre concerné sur la pile (PUSH ECX = met ECX sur la pile).

eu c'est quoi la pile , quelqu'un peut m ' expliqué ?

merci :boulet:
totobot
 
Messages: 7
Inscription: 20 Février 2014, 12:35

Re: QUESTIONS NEWBIE

Messagepar etherlord » 24 Février 2014, 11:38

Qu'est ce qu'un CALL ? c'est une instruction de vérification ? par exemple la vérification d'un sérial ?


Non, c'est un appel à une fonction.

Peut on remplacer un call par un nop ?

Techniqueemnt, oui tu peut. Fortement déconseillé.

Et si j'ai bien compris PUSH met le registre concerné sur la pile (PUSH ECX = met ECX sur la pile).


Oui.

eu c'est quoi la pile , quelqu'un peut m ' expliqué ?


http://fr.wikipedia.org/wiki/Pile_(informatique)

etherlord
etherlord
Triumvirat
Triumvirat
 
Messages: 2476
Inscription: 22 Mars 2004, 16:12

Re: QUESTIONS NEWBIE

Messagepar totobot » 24 Février 2014, 11:45

merci ether , mais ton article sur wikipédia est vide lol :gné: , bon d'accord j'ai compris je cherche sur google !

Peut tu m'expliquer , pourquoi c'est fortement deconseillé ?
totobot
 
Messages: 7
Inscription: 20 Février 2014, 12:35

Re: QUESTIONS NEWBIE

Messagepar Kiri » 24 Février 2014, 12:00

Chatlu !!! totobot
pour l'article wikipedia, etherlord a raison...regardes, il suffit de cliquer sur la ligne précédée de la loupe... :roll:
Si tu veux réussir en cracking, il va falloir être plus curieux, et ne pas s'arréter aux apparences...je le sais parce que c'est un de mes défauts :D :wink:
@++
Le bug se situe toujours entre la chaise et le clavier
Avatar de l’utilisateur
Kiri
Mega Crackeur !
Mega Crackeur !
 
Messages: 299
Inscription: 22 Novembre 2011, 09:16
Localisation: trop tard ! j'y suis déjà plus...

Re: QUESTIONS NEWBIE

Messagepar totobot » 24 Février 2014, 12:20

Merci kiri , et je suis quelqu'un de très curieux ,

Et son lien est pas bon : au dessus de loupe j'ai ça :Wikipédia ne possède pas d'article avec ce nom.

Je suis pas débile quand même !

C'est bon j'ai compris , j'ai cracké mon premier link lool , enfaite il a oublier d'inclure la derniére parenthése dans le lien du coup ça m'envois sur
http://fr.wikipedia.org/wiki/Pile_(informatique , suffit de mettre une parenthèse pour sauter ce jnz lol
totobot
 
Messages: 7
Inscription: 20 Février 2014, 12:35

Re: QUESTIONS NEWBIE

Messagepar Kiri » 24 Février 2014, 14:03

Chatlu !!!
Je n'ai pas dit au dessus de la loupe, mais précédée de la loupe...j'aurais du dire "la ligne correspondant à la loupe"ou "au niveau de la loupe" :wink:
Mais bravo tu viens effectivement de réussir ton premier crack :wink:
@++
Le bug se situe toujours entre la chaise et le clavier
Avatar de l’utilisateur
Kiri
Mega Crackeur !
Mega Crackeur !
 
Messages: 299
Inscription: 22 Novembre 2011, 09:16
Localisation: trop tard ! j'y suis déjà plus...

Re: QUESTIONS NEWBIE

Messagepar etherlord » 24 Février 2014, 14:50

totobot a écrit:Peut tu m'expliquer , pourquoi c'est fortement deconseillé ?


Parce que tu va probablement détruire le flux du programme, et qu'en général cela signifie crash de l'application.

(en gros, quand tu fait une modif, c'est quand tu as comrpis ce que fait le programme,e t que tu sait exactement ce que tu veut modifier et comment)

etherlord
etherlord
Triumvirat
Triumvirat
 
Messages: 2476
Inscription: 22 Mars 2004, 16:12

Re: QUESTIONS NEWBIE

Messagepar totobot » 24 Février 2014, 15:13

Quelqu'un peut t 'il m'expliquer ces quelques lignes de codes que je comprenne mieux ?

.method public instance void Initialize() cil managed
{
.maxstack 5
.locals init (
[0] string str,
[1] class [mscorlib]System.Exception exception,
[2] class [mscorlib]System.Text.StringBuilder builder,
[3] object[] objArray,
[4] valuetype [mscorlib]System.DateTime time)
L_0000: ldsfld bool WindowsApplication1.LicenseGlobal::LicenseInitialize ==> (met la valeur sur le haut de la pille ? quelle valeur je comprends pas bien )
L_0005: brfalse.s L_0008 ==> si la valeur est =0 (false), on saute jusqu'a L_0008
L_0007: ret
L_0008: ldc.i4.1 ==> ldc.id4.1 qui mets "1" (donc TRUE) en haut de la pile et ldsfld qui prend la valeur en haut de la pile (donc False) ?
L_0009: stsfld bool WindowsApplication1.LicenseGlobal::LicenseInitialize
L_000e: ldarg.0
L_000f: callvirt instance string WindowsApplication1.License::get_ID()
L_0014: call bool [mscorlib]System.String::IsNullOrEmpty(string)
L_0019: brfalse.s L_0027
L_001b: ldarg.0
L_001c: ldstr "Unable to initialize due to missing Net Seal ID."
totobot
 
Messages: 7
Inscription: 20 Février 2014, 12:35

Re: QUESTIONS NEWBIE

Messagepar Todd » 06 Mars 2014, 23:52

J'arrive peut-être un peu tard, mais l'analyse étant erronée, je me dois de corriger. :roll:

Code: Tout sélectionner
L_0000: ldsfld bool WindowsApplication1.LicenseGlobal::LicenseInitialize ==> On charge la valeur du boolean "LicenseInitialize" sur la pile, afin de l'évaluer.
L_0005: brfalse.s L_0008 ==> si la valeur de la pile vaut "0" (FALSE), on saute jusqu'a L_0008, sinon on sort. Au passage la pile est vidée de la valeur testée.
L_0007: ret  ==> Retour si la licence a déjà été initialisée.
L_0008: ldc.i4.1 ==> On charge "1" (donc TRUE) en haut de la pile.
L_0009: stsfld bool WindowsApplication1.LicenseGlobal::LicenseInitialize => On stocke cette précédente valeur dans "LicenseInitialize". La pile est à nouveau vidée de la dernière valeur stockée.

En conclusion, je doute que cette partie soit essentielle, car c'est une routine, certes avec condition, mais on voit clairement qu'il s'agit d'une technique pour ne pas initialiser plusieurs fois cette séquence. :wink:

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


Retourner vers Programmation

Qui est en ligne

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