Tutoriel sur le piratage QSetup Compositeur 7
Tutoriel sur le piratage QSetup Compositeur 7 (par rel4nium)
Outils: peid Upx_mod KWdsm OlyDGB Hiew tpePour commencer à déterminer ce qui est emballé notre victime, pour cette course peid:
UPX 0.89.6 - 1.02 / 01.05 à 01.24 (Delphi) stub -> Markus & Laszlo
Maintenant, nous avons besoin de déballeurs pour le UPX, upiksu lui-même est pas trop difficile, donc nous allons utiliser Upx_mod, déballez nous avons juste besoin d'exécuter Upx_mod comme suit:
unp1_24.exe -d QSetup.exe
Donc, le programme déballés, toutes les autres opérations, nous allons effectuer sur déballés taille exe-shnikom 1,69. Maintenant, nous devons voir quels types de protection sont utilisés dans le programme:
Nous avons donc 3 façons de protéger, maintenant nous avons besoin de trouver ces phrases / mots dizasemblere, exécutent KWdsm. Nous déterminons que nous recherchons:
1) Illégal Code d'enregistrement!
2) non enregistré Copie (DEMO)
3) QSetup Compositeur (DEMO)
Donc, après ces phrases sont trouvés, et a trouvé la fonction de voisins (je suis toujours à la recherche à courte portée transitions fonction, c.-à-je, jne, jmp;):
Illégal Code d'enregistrement! - Jne 0051D4FB
Copie non enregistré - jmp 0051D369
QSetup Compositeur - jne 0051DBA8
Encore une fois, je vais vous expliquer, nous étions à la recherche des points de référence pour la rupture, à savoir si nous ne trouvons pas l'erreur dans la fonction, nous allons utiliser les résultats pour aider DASM'a.Tantsuem plus loin, le lancement d'un allié. Juste pour le plaisir d'essayer de trouver la fonction:
bpx MessageBoxA
et nous ne trouvons pas rien, donc pas étonnant que nous avons cherché des phrases dans DASM) .Fraza numéro un:
0051D4DF |. 75 1A JNZ SHORT QSetup.0051D4FB
Cette fonction est intéressante pour nous car il retire son but:
0051D510 |. BA 70D65100 MOV EDX, QSetup.0051D670; ASCII "Vous devez disposer des droits d'administrateur pour inscrire!"
=> Nous examinons le code ci-dessus:
0051D47A |. 84dB ESSAI BL, BL 0051D47C 74 57 JE SHORT QSetup.0051D4D5 0051D47E |. E8 25B2FBFF CALL QSetup.004D86A8 0051D483 |. 84C0 ESSAI AL, AL 0051D485 74 0D JE SHORT QSetup.0051D494 0051D487 |. 8D45 FC LEA EAX, DWORD PTR SS: [RASE-4] 0051D48A |. BA 80D55100 MOV EDX, QSetup.0051D580; ASCII "QSetup PRO enregistré OK!" 0051D48F |. E8 0077EEFF CALL QSetup.00404B94 0051D494 |> E8 A7B1FBFF CALL QSetup.004D8640 0051D499 |. 84C0 ESSAI AL, AL 0051D49B |. 74 0D JE SHORT QSetup.0051D4AA 0051D49D |. 8D45 FC LEA EAX, DWORD PTR SS: [RASE-4] 0051D4A0 |. BA A4D55100 MOV EDX, QSetup.0051D5A4; ASCII "QSetup LITE Enregistré OK!" 0051D4A5 |. E8 EA76EEFF CALL QSetup.00404B94 0051D4AA |> QSetup.0051D5C8 68 C8D55100 PUSH; ASCII "| & OK | & Annuler | & Yes | & No | & Abort | & Retry | & Ignore |" 0051D4AF |. 6A 00 PUSH 0 0051D4B1 |. 8D45 F8 LEA EAX, DWORD PTR SS: [RASE-8] 0051D4B4 |. 8B4D FC MOV ECX, DWORD PTR SS: [RASE-4] 0051D4B7 |. BA 00D65100 MOV EDX, QSetup.0051D600; ASCII "FélicitationsJe ne sais pas pour vous, mais je me suis intéressé à la ligne:" 0051D4BC |. E8 4779EEFF CALL QSetup.00404E08 0051D4C1 |. 8B55 F8 MOV EDX, DWORD PTR SS: [RASE-8] 0051D4C4 |. B9 28D65100 MOV ECX, QSetup.0051D628; ASCII "Attention" 0051D4C9 |. B8 01000000 MOV EAX, 1 0051D4CE |. E8 39B1F7FF CALL QSetup.0049860C 0051D4D3 |. EB 61 JMP SHORT QSetup.0051D536 0051D4D5 |> 8B45 FC MOV EAX, DWORD PTR SS: [RASE-4] 0051D4D8 |. E8 2BACFBFF CALL QSetup.004D8108 0051D4DD |. 84C0 ESSAI AL, AL 0051D4DF 75 1A JNZ SHORT QSetup.0051D4FB 0051D4E1 |. 68 C8D55100 PUSH QSetup.0051D5C8; ASCII "| & OK | & Annuler | & Yes | & No | & Abort | & Retry | & Ignore |" 0051D4E6 |. 6A 00 PUSH 0 0051D4E8 |. B9 3CD65100 MOV ECX, QSetup.0051D63C; ASCII "Error" 0051D4ED |. BA 4CD65100 MOV EDX, QSetup.0051D64C; ASCII "Illegal de code d'enregistrement!"
0051D47C 74 57 JE SHORT QSetup.0051D4D5 0051D485 74 0D JE SHORT QSetup.0051D494Nous comprenons où ils sont, comment vidiv que dans la 1ère place, à savoir:
0051D4D5 |> 8B45 FC MOV EAX, DWORD PTR SS: [RASE-4]On peut comprendre que cette transition va à la phrase code d'enregistrement illégal!
Changez immédiatement 2 transition, comme si nous changeons un, vous ne serez pas avoir d'effet:
0051D47C 74 57 JNE SHORT QSetup.0051D4D5 0051D485 74 0D JNE SHORT QSetup.0051D494Donc, changer les fonctions de sortie, on obtient:
QSetup PRO Enregistré OK!
Mais réjouir trop tôt 2 autre protection ne soit pas compromise, et même si nous allons voir une boîte de fun que le programme est enregistré, il ne sera pas si, comme deux autres inscriptions sur place.
Zaymёmsya eux dans la ligne jmp 0051D369, nous ne hésitera pas et tournez immédiatement notre attention sur le code ci-dessus cette fonction:
0051D2F3 |. 84C0 ESSAI AL, AL 0051D2F5 |. 74 4F JE SHORT QSetup.0051D346 0051D2F7 |. E8 ACB3FBFF CALL QSetup.004D86A8 0051D2FC |. 84C0 ESSAI AL, AL 0051D2FE |. 74 0D JE SHORT QSetup.0051D30D 0051D300 |. 8D45 FC LEA EAX, DWORD PTR SS: [RASE-4] 0051D303 |. BA 94D35100 MOV EDX, QSetup.0051D394; ASCII "Copier enregistrés (PRO)" 0051D308 |. E8 8778EEFF CALL QSetup.00404B94 0051D30D |> E8 2EB3FBFF CALL QSetup.004D8640 0051D312 |. 84C0 ESSAI AL, AL 0051D314 |. 74 0D JE SHORT QSetup.0051D323 0051D316 |. 8D45 FC LEA EAX, DWORD PTR SS: [RASE-4] 0051D319 |. BA B4D35100 MOV EDX, QSetup.0051D3B4; ASCII "Copier enregistré (LITE)" 0051D31E |. E8 7178EEFF CALL QSetup.00404B94 0051D323 |> 8B55 FC MOV EDX, DWORD PTR SS: [RASE-4] 0051D326 |. 8B83 DC060000 MOV EAX, DWORD PTR DS: [EBX + 6DC] 0051D32C |. E8 6379F5FF CALL QSetup.00474C94 0051D331 |. 8B83 DC060000 MOV EAX, DWORD PTR DS: [EBX + 6DC] 0051D337 |. 8B40 68 MOV EAX, DWORD PTR DS: [EAX + 68] 0051D33A |. BA 180000FF MOV EDX, FF000018 0051D33F |. E8 989CF0FF CALL QSetup.00426FDC 0051D344 |. EB 23 JMP SHORT QSetup.0051D369 0051D346 |> BA D4D35100 MOV EDX, QSetup.0051D3D4; ASCII "Copie non enregistré (DEMO)"Nous voyons une protection typique, mais est plus facile, cette fonctionnalité JE SHORT QSetup.0051D346, si CH entré est pas vrai, nous apporte une fenêtre: Copie non enregistré (DEMO), et t.d.Poetomu changer la fonction sur:
0051D2F5 75 4F JNZ SHORT QSetup.0051D346 0051D2FE 75 0D JNZ SHORT QSetup.0051D30DIl est maintenant 2 programme simple algorithme de protection piraté, laissé seul. Nous allons à la fonction trouvée dans DASM: jne Code 0051DBA8.Smotrim dans son ensemble, il est responsable, de mettre dans la fenêtre du programme DEMO:
0051DBCB |. 8D45 FC LEA EAX, DWORD PTR SS: [RASE-4] 0051DBCE |. BA C4DC5100 MOV EDX, QSetup.0051DCC4; ASCII "QSetup Composer" 0051DBD3 |. E8 3072EEFF CALL QSetup.00404E08 0051DBD8 |. 8B55 FC MOV EDX, DWORD PTR SS: [RASE-4] 0051DBDB |. A1 40E25400 MOV EAX, DWORD PTR DS: [54E240] 0051DBE0 |. 8B00 MOV EAX, DWORD PTR DS: [EAX]Et elle se soucie de boucle avant d'aller:
0051DBA8 |> 6A 00 / PUSH 0 0051DBAA |. 6A 00 | PUSH 0 0051DBAC |. 49 | décembre ECX 0051DBAD |. ^ 75 F9 \ JNZ SHORT QSetup.0051DBA8Tout se passe sur le fait qu'il y ait une sorte d'algorithme pour vérifier que nous avons pas remarqué. Maintenant, nous avons besoin d'ouvrir à nouveau le programme dans le dasme.Posle d'ouverture à nouveau la recherche d'un QSetup de glace Compositeur et attire immédiatement le regard:
0051DBC3 |. E8 48ABFBFF CALL QSetup.004D8710
Effectuez cet appel, en appuyant simplement sur le bouton d'appel sur la barre d'outils.
Exercée ici:
004D8710 / $ 53 PUSH EBX 004D8711 |. 8BD8 MOV EBX, EAX 004D8713 |. 8BC3 MOV EAX, EBX 004D8715 |. BA 54874D00 MOV EDX, QSetup.004D8754; ASCII "DEMO" 004D871A |. E8 31C4F2FF CALL QSetup.00404B50 004D871F |. E8 84FFFFFF CALL QSetup.004D86A8 004D8724 |. 84C0 ESSAI AL, AL 004D8726 |. 74 0C JE SHORT QSetup.004D8734 004D8728 |. 8BC3 MOV EAX, EBX 004D872A |. BA 64874D00 MOV EDX, QSetup.004D8764; ASCII "PRO" 004D872F |. E8 1CC4F2FF CALL QSetup.00404B50 004D8734 |> E8 07FFFFFF CALL QSetup.004D8640 004D8739 |. 84C0 ESSAI AL, AL 004D873B |. 74 0C JE SHORT QSetup.004D8749 004D873D |. 8BC3 MOV EAX, EBX 004D873F |. BA 70874D00 MOV EDX, QSetup.004D8770; ASCII "LITE" 004D8744 |. E8 07C4F2FF CALL QSetup.00404B50 004D8749 |> 5B POP EBX 004D874A \. C3 RETNEncore une fois, la conception de la protection familiale, et maintenant ne reste plus qu'à changer JE 004D8734 004D8734 JNE et le programme dans la fenêtre supérieure écrit PRO) .Vot et toute protection simple. Maintenant, nous avons seulement patcher le programme reste, vous pouvez utiliser hiew 'a.Patchit doivent fonctionner aux adresses suivantes:
0051D47C, 0051D485, 0051D2F5, 0051D2FE, 004D8726 je tout besoin de changer jne et le programme sera toujours se considérer comme enregistré.
Après la correction du programme peut faire un patch en utilisant TPE (à ce sujet je l'ai dit dans les articles précédents, donc je ne vais pas répéter)
Le programme est cassé, le patch a été créé ...
Commentaires
Commentant, gardez à l' esprit que le contenu et le ton de vos messages peuvent blesser les sentiments des gens réels, montrer du respect et de la tolérance à ses interlocuteurs, même si vous ne partagez pas leur avis, votre comportement en termes de liberté d'expression et de l' anonymat offert par Internet, est en train de changer non seulement virtuel, mais dans le monde réel. Tous les commentaires sont cachés à l'index, le contrôle anti - spam.