sulea Posted December 27, 2011 Report Posted December 27, 2011 se da urmatorul program:Downloads - Tuts 4 You(prezent in lena's cracking lessons for newbies 12)cerinte:-inlaturati DOAR nag-screenul de la inceput, fara a inregistra programul-faceti crack aplicand DOAR un singur patch Quote
Flubber Posted December 29, 2011 Report Posted December 29, 2011 (edited) Ma chinui de cand ai postat sa inlatur acel NAG tampit. Am gasit rutinele pentru splash (si din olly si prin decompilare cu DeDe), insa ceea ce am observat este ca, string-urile pentru Standard,Advanced sau Service version inclusiv timpul trial, se stabilesc acolo (in rutinele respective), iar la o rutina deasupra acesteia, se stabileste poza aratata, insa NU se hotaraste daca sa se arate nag-ul sau nu, deasemenea cred ca tine de o valoare unde este procesata la rutina de la adresa: 46C7B0.Poti da vreun hint? Este cumva un call de la 550834? Nu am reusit decat sa inlatur ce tine de text (ASCII " ") si poza aceea stupida, in rest nu am gasit referinte catre o alta rutina ce hotaraste daca nag-ul apare sau nu (registered or not), in plus chiar daca este inregistrata (53AC32) tot apare, ceea ce inseamna ca se verifica de doua ori undeva folosindu-se de pointere (ce difera de la o verificare la alta).Ma tenteaza sa ma uit la tutorial (bineinteles, fara a mai spune apoi ca l-am rezolvat, cred ca este evident), dar incerc sa ma abtin.JUST GIVE ME SOMETHING, I'M GOING CRAZY HERE! Haha.Adaugare:Pentru About, inregistrarea (estetica) se stabileste la:0053AB5D . A1 F4535A00 MOV EAX,DWORD PTR DS:[[COLOR=#ff0000][B]5A53F4[/B][/COLOR]] [B][U]<--[/U][/B] [B][COLOR=red]Pointer-ul nostru mult iubit![/COLOR][/B]0053AB62 . 8038 00 CMP BYTE PTR DS:[EAX],00053AB65 . 74 22 JE SHORT aTeksche.0053AB89De tinut minte ptr-ul (dw): 5A53F4Alta adaugare:Ei bine, am reusit sa inlatur NAG-ul, gasiti constantele catre pointer-ul descris mai sus si puneti BP pe toate rezultatele, restartati aplicatia in Ollydbg (CTRL + F2), iar treptat folosind RUN (F9) veti da de toate verificarile ce stabilesc daca aplicatia este inregistrata sau nu, de aici cred ca este evident ca la fiecare BP intalnit veti folosi Step over (F8), iar unde credeti ca este de cuviinta la vreun CALL "suspicios", Step into (F7).Acum este timpul sa puricam rutinele si sa vedem care este cea responsabila pentru NAG.Pentru cei ce folosesc TRACE sau ANIMATE OVER/INTO, daca rulati pe o masina virtuala va chinuiti degeaba, loader-ul pentru nt si dll-urile mi-au dat batai de cap, nici dupa 3 ore nu a reusit sa imi gaseasca vreun CALL pentru initializarea NAG-ului (asta pentru ca nu este vreunul, tin sa cred ca fiecare componenta a programului este initializata treptat la 46C7B0) fiind blocat intr-un loop.In caz ca doriti sa vedeti dump-ul la "decompilare" (este un sumar cu adresele api-urilor folosite, form-urilor initializate etc.), click aici.Pass la arhiva: rstcenter.comHave fun students.Si uite asa am revenit cu rezolvarea mea, un singur patch pentru a realiza crack-ul, inlatura nag-ul fara a inregistra aplicatia:Patches, item 0 Address=00592404 [I][...][/I] [COLOR=#ff0000][B]Old=CMP BYTE PTR DS:[EAX],0[/B][/COLOR] [U][B]-->[/B][/U] arata NAG [COLOR=#0000ff][B]New=CMP BYTE PTR DS:[EAX],1 [/B][/COLOR][U][B]-->[/B][/U] nu mai arata NAG (patch-ul propriu-zis) Edited December 29, 2011 by Flubber rezolvare Quote
sulea Posted December 30, 2011 Author Report Posted December 30, 2011 frumos fluber, felicitari.in rezolvarea ta te-ai folosit de legatura neinregistrat->nagam vazut ca ai inceput cu dede, dar dupa te-ai intors iar la olly. de ce nu ai continuat cu dede??uite cum am facut eu:am folosit protectionID, iar cu ajutorul optiunii 'WinSpy' am vazut ca clasa nagului este: TMySplash, iar cea a programului principal este TMainForm.apoi, ruland programul din nou, am vazut ca mai intai se creaza programul principal (deci TMainForm), iar apoi se creaza nagul(TMySplash) -asta fara sa fie luat vreun input de la user. deci nagul se creaza undeva in mainformbun, primul lucru a fost sa folosesc DeDe. In dede m-am dus la 'procedures' unde am cautat cautat TMainFormApoi in 'eventurile' mainformului (procesare timpi, butoane etc), am inspectat tot ce ar fi putut avea legatura cu crearea nagului (deci m-am uitat peste procedura de Timer1Timer, FormCreate, FormShow, FormActivate) si am ajuns la Timer2Timer(nu am verificat ce se intampla in Open1Click sau ExplorerButton12Click pt ca nagul este afisat fara ca userul sa faca ceva)-deci cel mai probabil la initializarea/activarea mainformului sau in vreun timersi asa am ajuns sa investighez eventul Timer2Timer*'investigarile' astea au constat in cautarea cuvantului 'splash' prin eventurile dezasamblate in dede unde am gasit o chestie interesanta:am dezasamblat programul in ida pt o vizionare cat mai buna, si m-am dus la locul cu pricina: 00594A19aici este clar ce se poate face, un jump neconditionat si la revedere nag.iar ca sa sapam si mai adanc sa vedem unde mai este folosit flagul 5A5C58, am cautat xrefs la el, iar primul xref m-a dus exact unde ai facut tu patch: Quote
Flubber Posted December 30, 2011 Report Posted December 30, 2011 Intr-adevar sunt mai multe metode, as fi fost curios sa vad ce alte metode ar fi postat ceilalti, desi in vederea acestui nag banuiesc ca se aplica doar `plain stupid patching' cum ar spune si lena151, neavand in vedere inregistrarea programului. Deasemenea in Olly se pot folosi cautari dupa string-uri (search for -> all referenced strings) afisate in NAG, dar sunt sigur ca majoritatea stiu asta, numai ca in acest caz specific ar fi esuat, in afara de cuvantul "unregistered" (case sensitive + entire scope) si o cercetare mai buna.Nu am mai continuat in DeDe fiindca am vazut la ce adresa se initializa NAG-ul (TMySplash :: 550834) si ma asteptam sa dau de o rutina simpla cu niste jump-uri conditionale, dar cand mi-am dat seama ca nu acolo este luata decizia de a se arata sau nu, am incercat si alte variante. Foarte rau sa asumi si sa te astepti la ceva specific, haha.Am sa tin minte solutia ta, este foarte frumoasa, multumesc. Quote