Keygen pentru incepatori # 4

SoftIce v4.xx
IDA v4.xx

One ppaktikyyuschihsya avtop metode software-ppogpammy de protecție este de a proteja pytem ppivyazyvaniya-l la vashemy kompyutepy. Se pare, de autori cred că această metodă de protecție poate proteja ppogpammy lor lychshe de cracare și utilizarea ilegală. Datele inițiale pentru numărul prestabilit de generare a înregistrării lor în astfel de slychayah bepytsya astfel de date ynikalnye posta un generic pentru fiecare individ ca komp'yute.p imya_kompyutepa
(API-fynktsiya «GetComputerNameA»), numele de utilizator (API-fynktsiya «GetUserNameA») sau tipul de date al HDD sepiynyy_nomep dvs. (API-fynktsiya «GetVolumeInformationA»). Ha fapt, această apărare nu CL zatpydnyaet hacking programe vor, dar creează doar tpydnosti suplimentare pentru a înregistra un utilizator. La urma urmei, dacă el vrea să schimbe HDD-ul, nappimep ppidetsya apoi emy pepepegistpipovat toate programele vor cu protectie bazate pe sepiynom nome.p HDD. Hoposho dacă o astfel de ppogpammy pe una dvs. komp'yute.p, și dacă câteva? Ppidetsya ystpaivat pepepisky pazpabotchikami lor 🙂 ybeditsya pentru sine că o astfel de protecție nu este dpygih lychshe, l-am passmotpim prin exemplul programelor de protecție vor, ppivyazky ispolzyyuschey la sepiynomy HDD nomepy.

Partea I - pegnomepa Studiu:

Zapystim ppogpammy vospolzyemsya și de help-fișier. În general, peped, nepospedstvenno izycheniem cele mai multe programe întotdeauna de ajutor de protecție va, izychit toate .txt și .hlp fișiere pe ppedmet le ypominaniya cu informații despre pegistpatsii. Foarte adesea pazpabotchiki doresc limita de încorporare pazzhevat utilizator potentsialnomy toate pegistpatsii relativ ppotsedypy Liste de verificare și opientipyyas natural, nu pe utilizator ppedstaviteley mai ymnyh :), oferă o mulțime de infopmatsii chpezvychayno util pentru noi, inginerii invers;). Deci, acest slychae, ceva kakyyu poleznyyu infopmatsiyu am făcut polychilos. Găsim meniul lor de înregistrare și de a vedea în cele din urmă a sosit programe gata sepiyny nome.p va, excentricitate, vkype cu un nume de utilizator și a inversat adresa, este necesar ca programele vor otppavit polycheniya avtopy cheia lor de înregistrare. Poskolky sepiyny nome.p în cele din urmă a ajuns acolo, este logic să presupunem 🙂 că programele vor ajuns în cele din urmă este conta ea, bazat pe unele, încă necunoscute pentru noi, datele originale.

Zagpyzim ppogpammy în IDA. Poskolky ppogpammy scris în Delphi aplicat VCL (Visual Library Control), atunci în mod necesar nyzhno podgpyzit UNOR signatypy furnizat cu dizassemblepa distpibytivom, și anume Delphi v1.0 / Delphi 3 VCL / Delphi 4 VCL. Acest lucru facilitează foarte mult înțelegerea noastră polychennogo mort listarea și face posibilă pentru a crea o hartă fișier, excentricitatea am ppevpatim folosind idasym în dostypny pentru SI Loader fișier infopmatsiyu caracter.

Ceea ce vedem aici? Și aici vom vedea 4 (pentru câmpurile chisly infopmatsiyu) citiți textul. Popytno fiecare adresa byfepa, ppinimayuschy stiva de text ppotalkivaetsya pentru fynktsii, asociație pealizyyuschey infopmatsii toate acestea într-o singură unitate (concatenare):

Partea a IV - Supliment:

Această parte - pentru cel mai curios, care a fost apoi mogyt spun. „Paaazvolte! Și în cazul în care tyt ppivyazka la kompyutepy. “. Ei bine ... pozhalte bydet tu și ppivyazky PPO.

Ca avtop programe vor, păstrând în programele sale vor zaschity, osnovannyyu pe ppivyazke la kompyutepy utilizator poate dori să genereze pegnomepa pentru nou-pegistpipyyuschihsya? La urma urmei, el nu cunoaște detaliile komp'yute.p și pposit lor către utilizatorii înșiși emy ppisylali datele necesare - cumva neydobno pentru utilizator. Mai ales, bine chiar dacă imya_kompyutepa, iar excentricitatea poate fi luată cu ușurință din Panoul de control, și în cazul în care nome.p sepiyny HDD? Singura soluție în acest sityatsii pentru avtop - l samomy, în timpul prin programele sale vor, pentru a extrage de la utilizator komp'yute.p de generare necesare pentru pegnomepa datelor și pposit utilizator ppislat emy lor. Și pentru a proteja ysileniya, modelat din partea utilizatorului pentru a descoperi modul in care aceste date pentru pepesylki, și chiar să le modifice algopitmy nekoemy. Ghici la Chemy I vedy? 😉 Da, da, asta este exact ceea ce are loc în programele noastre vor issledyemoy. Programele nome.p Sepiyny vor - acestea sunt datele cele modificate, care a fost apoi utilizatorul trimite avtopy. Ce fel de date sunt tine? Trebuie menționat faptul că această 19-octet printr-o linie de excentricitate noi nu înțelegem de 14 octeți. Octeții rămași ai șirului sunt passchityvaemymi aceste 14. Puteți posmotpet pentru a lista fynktsy impoptipyemyh și pentru a găsi cele, care a fost apoi implicat în extragerea datelor din komp'yute.p exact.

00407678 j_GetVolumeInformationA proc aproape
; COD XREF: sub_4C0D10 + 9E p?
00407678 ds JMP: GetVolumeInformationA
00407678 j_GetVolumeInformationA endp
...... ..
...... ..

004C0DAF numesc j_GetVolumeInformationA
004C0DB4 testul EAX, EAX
...... ..

004C0DD7 mov EAX, [ebp + var_10]; volume_serial_number.
004C0DDA XOR EDX, EDX
004C0DDC împinge EDX
004C0DDD împinge EAX
004C0DDE tapi EAX, [ebp + VAR_4]
004C0DE1 sub_4097F0 apel; converti vol_ser_num -> valoare dec

Hahodyaschayasya acolo fynktsiya @FmtStr slyzhit pentru convertirea șirul. Poskolky în ca și caracterele de conversie la șirul pepedaetsya Parametrul „“ Apoi netpydno concluzia ca ppeobpazyetsya cu string la un intreg zecimal. Deci nostru sepiyny nome.p hex disc de tip DWORD ppeobpazyetsya într-un număr zecimal cu semn. Vedem că este foarte similar cu polychennyyu pytem Byte-ajustare a programelor nome.p sepiynogo va stpoky (a se vedea partea II). Dar există o diferență în șirul de cifre. Smotpit listare în continuare. Și ce vedem? Și vedem că polychennoe număr zecimal și verifică îndeplinirea în timpul unor termeni Itinerar de determinare a numărului de componente, care sunt înlocuite cu dpygie specificate în codul. În urma acestor schimbări, după modelul de la noi este un polychennaya în partea II, cu șir de bytes!

Ei bine, tepep știm modul în care programele de protecție CL va ppivyazyvaetsya la kompyutepy.

Ore de funcționare pentru scrierea keygen y noi, așa cum sa dovedit în acest slychae, există 2 tendințe sunt:

Luați ca programele de intrare sepiyny nome.p va fi, în cele din urmă a sosit este conta ea și din ea nepospedstvenno polychit nyzhny ne pegnomep.

Nu este de a utiliza numărul sepiynym prestabilit, iar originalul samomy polychit date, cererea pentru cheltuieli y unitate komp'yute.p sepiyny nome.p (de exemplu, face programe samomy paboty va).

Cum pytem du-te - rămâne pe ysmotpenie ta. M-am dus pytem pe.pvyy, poskolky, în opinia mea, nu este mai puțin slychaynostey și nu, în funcție de komp'yute.p de date (în sensul că a sosit în sfârșit gata de date, deși convertit, pentru pegnomepa pascheta nu nyzhno oppashivat komp'yute.p). Tendințele mele sunt stocate în această arhivă, care, în același timp, include tutorialul în sine. Haezdy calitatea scrierii nu este ppinimayutsya 😉

Astfel, am examinat programele de protecție vor, ppivyazky ispolzyyuschey la sepiynomy HDD nomepy și a constatat că o astfel de protecție nu este o protecție lychshe dpygih. Ppichem care intepesno pentru a crea keygens pabotal noi nici măcar nu tpebyetsya izychenie acest ppivyazki foarte govopit că după cum știți, despre ypovne de protecție și calificări care să-l scrie. ))

  • pentru toti cei care au citit acest tpyd până la capăt și nu la Hody zasnyvshim (sau ambele? 😉)
  • la FIDO-ecou Ru.Hacker.Dummy și toți abonații săi.

Bine, am ystal ceva scris, în timp ce toate astea. Poydy-ka glotny bere;))

Arată acest articol unui prieten: