Jump to content
sulea

remove nag screen

Recommended Posts

Posted (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],0
0053AB65 . 74 22 JE SHORT aTeksche.0053AB89

De tinut minte ptr-ul (dw): 5A53F4

Alta 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.com

Have 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 by Flubber
rezolvare
Posted

frumos fluber, felicitari.

in rezolvarea ta te-ai folosit de legatura neinregistrat->nag

am 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 mainform

bun, primul lucru a fost sa folosesc DeDe. In dede m-am dus la 'procedures' unde am cautat cautat TMainForm

Apoi 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 timer

46347676992814513480.jpg

si 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:

50147509074989925511.jpg

am dezasamblat programul in ida pt o vizionare cat mai buna, si m-am dus la locul cu pricina: 00594A19

76794825929070184057.jpg

aici 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:

47943936024906721923.jpg

Posted

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.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...