Author Topic: Newbie crackME - 2 -> [SOLVED]  (Read 1535 times)

llAmElliK

  • [TiME4CRiME]
  • Administrator
  • VIP
  • *****
  • Posts: 960
Newbie crackME - 2 -> [SOLVED]
« on: August 14, 2005, 10:17:12 AM »
CrackME - od Chiwaka
Packer - není
Protect - N/S
MASM/TASM
TiME AND CRiME ARE ETERNAL-REVERSE ENGINEERiNG iS MODERN PHiLOSOPHY AND iSN'T CRiME
[TiME4CRiME]

Z!L0G80

  • -=[t4C]=-
  • Senior Member
  • ****
  • Posts: 280
Newbie crackME - 2 -> [SOLVED]
« Reply #1 on: August 14, 2005, 04:40:14 PM »
myslim ze tohle pro zacatecnky zrovna nebude ;)
-= SmrT SiGNaTuRaM !!! =-

CZerezpiCZkin

  • Junior Member
  • ***
  • Posts: 181
Newbie crackME - 2 -> [SOLVED]
« Reply #2 on: August 14, 2005, 05:18:10 PM »
Suhlasim s tebou, ale nevzdavam sa ...  :))
CZpCZ

Master

  • [t4C]newbie child
  • VIP
  • *****
  • Posts: 615
Newbie crackME - 2 -> [SOLVED]
« Reply #3 on: August 14, 2005, 06:59:51 PM »
jo to mate pravdu :)

BlackRose

  • [CSCF]
  • Newbie
  • ***
  • Posts: 24
Newbie crackME - 2 -> [SOLVED]
« Reply #4 on: August 15, 2005, 07:02:48 AM »
Hm, taky myslim, ze je to pro zacatecniky trosku :eek:

Master

  • [t4C]newbie child
  • VIP
  • *****
  • Posts: 615
Newbie crackME - 2 -> [SOLVED]
« Reply #5 on: August 15, 2005, 09:20:06 AM »
No ja u? zkoumam kod :) zatim sem dosel na nejaky SHR funkce,ale jeste porad nevim,jak tam pracuje ta fce WideCharToMultiByte  :o

DARKER

  • [SCF]
  • Administrator
  • Senior Member
  • *****
  • Posts: 336
Newbie crackME - 2 -> [SOLVED]
« Reply #6 on: August 15, 2005, 12:42:14 PM »
Master> WideCharToMultiByte ?
hxxp://msdn.microsoft.com/library/default.asp?url=/library/en-us/intl/unicode_2bj9.asp
je to co hladas :-)

API funkcia mam dojem dokaze konvertovat UNICODE (dvojbytove) stringy na NORMAL stringy a mam dojem ze dokaze konvertovat aj CodePage ...

joe

  • Newbie
  • *
  • Posts: 46
Newbie crackME - 2 -> [SOLVED]
« Reply #7 on: August 15, 2005, 01:29:12 PM »
Som v polovici cesty. To je sialene: suma hex char, suma dec char -> dec char.
A+B*256+C*256^2+... a to je len uvod.
 :eek:

CZerezpiCZkin

  • Junior Member
  • ***
  • Posts: 181
Newbie crackME - 2 -> [SOLVED]
« Reply #8 on: August 15, 2005, 04:07:49 PM »
Pani, neviem ako vam, ale mne z toho uz j..e.    :eek:

>Master&Joe
Myslim, ze ste este daleko, ale drzim palce. Mna dostalo, ze aj ta zaverecna sprava pri spravnom SN je kodovana cez tabulku... (teda aspon to tak zatial vyzera) A ako by toho nebolo dost, este ani netusim, odkial sa berie to cislo, s ktorym sa potom zacinnaju tie "rotacne manevre" (SHR,SHL,ADD a pod.)

Fakt som spravne na Newbie threade?  :confused:
CZpCZ

Z!L0G80

  • -=[t4C]=-
  • Senior Member
  • ****
  • Posts: 280
Newbie crackME - 2 -> [SOLVED]
« Reply #9 on: August 15, 2005, 04:33:02 PM »
tohle opravdu neni pro zacatecniky! llamellik trosku ulitl :D
az bude cas sepisu sve momentalni poznatky a hodim to sem ...

... to cislo se tam bere s toho HTML formulare a generuje ho javascript je ve formatu widechar XXX?ZZZ?YYY

.. "tabulka" je pevna ,xoruje se informaci o procesoru zjednodusene ...
« Last Edit: August 15, 2005, 07:38:00 PM by Z!L0G80 »
-= SmrT SiGNaTuRaM !!! =-

joe

  • Newbie
  • *
  • Posts: 46
Newbie crackME - 2 -> [SOLVED]
« Reply #10 on: August 15, 2005, 04:36:50 PM »
No mal by som to upresnit, mal som len obednajsiu prestavku.  :)
No nechce sa mi pisat detaily, lebo ma este caka kus cesty  :confused: , tak len v skratke:
Zoberie ASCII kody mena a scita ich, potom dekadicky sucet chape ako znaky. Napr. "joe" je 6Ah+6Fh+65h=106+111+101=318 no a to je 1. cast "pracovneho cisla".
Pre MACHINE CODE je to rovnake. To je 3. cast "pracovneho cisla".
Zo Serial sa tvori podobne prostredna cast, len berie hexa tvar cisla.
Napr. "123" je 31h+32h+33h=96h teda znaky 96

Potom pre
Name: "joe"
Serial: "123"
MACHINE CODE: "2563756841" => 50+53+54+51+55+53+54+56+52+49=527

Z toho je pekne pracovne cislo: 318?96?527
Je to naozaj len uvod, uz len "spravne" vytvorit "pracovne" cislo.

Edit by Z80:
jen poznamka tohle se pocita v javascriptu v HTML formulari... check my post...
« Last Edit: August 15, 2005, 04:50:25 PM by Z!L0G80 »

Master

  • [t4C]newbie child
  • VIP
  • *****
  • Posts: 615
Newbie crackME - 2 -> [SOLVED]
« Reply #11 on: August 15, 2005, 07:10:48 PM »
No joe,ja nemohl zjistit,jak se pocita ty zasrany cisla.Ted uz mi to diky tobe doslo,ale pak sem si nekde vsim,ze z toho masine code se to prevadi pozpatku,prvni dva jsou stejne.Jinak ty decadicky a hexovy poznas z html codu,tam je x.strblablabla(10) nebo (16).
Dale se to na konci musi urcite byty rovnat,a ty byty jsou vzdycky posledni z pocetnich ukonu,tak?e udelat zpetnej algo to bude neco.
Jinak ze se zprava dela z tabulky,to jsem taky zjistil.

Z!L0G80

  • -=[t4C]=-
  • Senior Member
  • ****
  • Posts: 280
Newbie crackME - 2 -> [SOLVED]
« Reply #12 on: August 15, 2005, 07:21:26 PM »
Quote from: joe

... Zo Serial sa tvori podobne prostredna cast, len berie hexa tvar cisla.
Napr. "123" je 31h+32h+33h=96h teda znaky 96


pro upresneni neberou se zdvojene cisla "112233" takze to bude stale 96 ...

2joe:
pro upresneni to arrArgs je machine code ... z ... ze ? v JS se nejak nevyznam ...
« Last Edit: August 15, 2005, 07:25:31 PM by Z!L0G80 »
-= SmrT SiGNaTuRaM !!! =-

joe

  • Newbie
  • *
  • Posts: 46
Newbie crackME - 2 -> [SOLVED]
« Reply #13 on: August 15, 2005, 08:09:07 PM »
Je to uz na dobrej ceste. Prosim, este aspon 2 dni. Zacalo ma to bavit.
2 Z!L0G80: Dik za upresnenie. K tomu ako vzniklo MC, by som sa asi ani nedostal (ak najdem riesenie jednoducj\ho by som bral MC ktore by mi komp dal). Tie zdvojene cisla mi tiez usli.

Z!L0G80

  • -=[t4C]=-
  • Senior Member
  • ****
  • Posts: 280
Newbie crackME - 2 -> [SOLVED]
« Reply #14 on: August 15, 2005, 08:25:30 PM »
neco k generovani machine ID
Code: [Select]

ext:004010B2 Get_Machine_ID  proc near               ; CODE XREF: start+43p
.text:004010B2                 push    offset SystemInfo ; lpSystemInfo
.text:004010B7                 call    GetSystemInfo
.text:004010BC                 mov     eax, 0BAD0BABEh
.text:004010C1                 xor     ebx, ebx
.text:004010C3                 mov     ebx, SystemInfo.dwActiveProcessorMask
.text:004010C9                 add     eax, ebx
.text:004010CB                 rol     eax, 4
.text:004010CE                 mov     ebx, 0DECAFh
.text:004010D3                 add     eax, ebx
.text:004010D5                 rol     eax, 4
.text:004010D8                 mov     ebx, SystemInfo.dwProcessorType
.text:004010DE                 add     eax, ebx
.text:004010E0                 rol     eax, 4
.text:004010E3                 mov     bx, SystemInfo.wProcessorLevel
.text:004010EA                 and     ebx, 0FFFFh
.text:004010F0                 add     eax, ebx
.text:004010F2                 rol     eax, 4
.text:004010F5                 mov     bx, SystemInfo.wProcessorRevision
.text:004010FC                 add     eax, ebx
.text:004010FE                 rol     eax, 4
.text:00401101                 mov     proc_info_n, eax ; v eax cislo ziskane z informaci o procesoru
.text:00401106                 push    eax
.text:00401107                 push    offset aU       ; "%u"
.text:0040110C                 push    offset machine_id ; LPSTR
.text:00401111                 call    wsprintfA       ; prevedem na integer a dostanem machine code
.text:00401116                 add     esp, 0Ch
.text:00401119                 push    208h            ; cchWideChar
.text:0040111E                 push    offset machine_id ; lpMultiByteStr
.text:00401123                 push    offset machine_id_w ; lpWideCharStr
.text:00401128                 call    sub_401078      ; prevedem na widechar pro vypsani v HTML
.text:0040112D                 push    offset tab1     ; ".\b"
.text:00401132                 call    lstrlenA        ; delka od tab1
.text:00401137                 mov     lnght_tab1, eax ; je ... u me 7eh
.text:0040113C                 mov     ecx, eax
.text:0040113E                 mov     eax, proc_info_n
.text:00401143                 xor     edx, edx
.text:00401145                 mov     dx, ax
.text:00401148                 shr     eax, 10h
.text:0040114B                 xor     dx, ax
.text:0040114E                 and     dx, 1FFFh       ; timhle budem xorovat od adresy tab1 odelce .. X
.text:00401153                 lea     eax, tab1       ; ".\b"
.text:00401159                 xor     ebx, ebx
.text:0040115B                 jmp     short loc_401164
.text:0040115D ; ŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚŚ
.text:0040115D
.text:0040115D loc_40115D:                             ; CODE XREF: Get_Machine_ID+B4j
.text:0040115D                 xor     [ebx+eax], dx   ; xorujem tabulku
.text:00401161                 add     ebx, 2
.text:00401164
.text:00401164 loc_401164:                             ; CODE XREF: Get_Machine_ID+A9j
.text:00401164                 cmp     ebx, ecx
.text:00401166                 jb      short loc_40115D
.text:00401168                 retn
.text:00401168 Get_Machine_ID  endp

gdyby neco ptejte se ...
-= SmrT SiGNaTuRaM !!! =-