sulea Posted March 25, 2014 Report Posted March 25, 2014 https://anonfiles.com/file/14102f6d1c31db9fd8e3fe548950b38ea se gasi codulma intereseaza modul de abordare a celor care-l rezolva Quote
giv Posted March 27, 2014 Report Posted March 27, 2014 Trebuie sa fii familiarizat cu programarea in ASM altfel portarea va fi destul de greoaie si multe comenzi nu pot fi portate in VB spre exemplu ca sa scrii o solutie automata.CPU DisasmAddress Hex dump Command Comments00401443 |. 0FBF05 409040 MOVSX EAX,WORD PTR DS:[crkme.409040]0040144A |. 99 CDQ0040144B |. B9 0A000000 MOV ECX,0A00401450 |. F7F9 IDIV ECX00401452 |. 66:8915 10904 MOV WORD PTR DS:[crkme.409010],DX00401459 |. 0FBF0D 409040 MOVSX ECX,WORD PTR DS:[crkme.409040]00401460 |. B8 67666666 MOV EAX,6666666700401465 |. F7E9 IMUL ECX00401467 |. 89C8 MOV EAX,ECX00401469 |. C1FA 02 SAR EDX,20040146C |. C1E8 1F SHR EAX,1F0040146F |. 01C2 ADD EDX,EAX00401471 |. 66:8915 40904 MOV WORD PTR DS:[crkme.409040],DX00401478 |. 0FBF05 409040 MOVSX EAX,WORD PTR DS:[crkme.409040]0040147F |. 99 CDQ00401480 |. B9 0A000000 MOV ECX,0A00401485 |. F7F9 IDIV ECX00401487 |. 66:8915 00904 MOV WORD PTR DS:[crkme.409000],DX0040148E |. 0FBF0D 409040 MOVSX ECX,WORD PTR DS:[crkme.409040]00401495 |. B8 67666666 MOV EAX,666666670040149A |. F7E9 IMUL ECX0040149C |. 89C8 MOV EAX,ECX0040149E |. C1FA 02 SAR EDX,2004014A1 |. C1E8 1F SHR EAX,1F004014A4 |. 01C2 ADD EDX,EAX004014A6 |. 66:8915 40904 MOV WORD PTR DS:[crkme.409040],DX004014AD |. 0FBF05 409040 MOVSX EAX,WORD PTR DS:[crkme.409040]004014B4 |. 99 CDQ004014B5 |. B9 0A000000 MOV ECX,0A004014BA |. F7F9 IDIV ECX004014BC |. 66:8915 20904 MOV WORD PTR DS:[crkme.409020],DX004014C3 |. 0FBF0D 409040 MOVSX ECX,WORD PTR DS:[crkme.409040]004014CA |. B8 67666666 MOV EAX,66666667004014CF |. F7E9 IMUL ECX004014D1 |. 89C8 MOV EAX,ECX004014D3 |. C1FA 02 SAR EDX,2004014D6 |. C1E8 1F SHR EAX,1F004014D9 |. 01C2 ADD EDX,EAX004014DB |. 66:8915 40904 MOV WORD PTR DS:[crkme.409040],DX004014E2 |. 0FBF05 409040 MOVSX EAX,WORD PTR DS:[crkme.409040]004014E9 |. 99 CDQ004014EA |. B9 0A000000 MOV ECX,0A004014EF |. F7F9 IDIV ECX004014F1 |. 66:8915 30904 MOV WORD PTR DS:[crkme.409030],DX004014F8 |> 66:A1 1090400 MOV AX,WORD PTR DS:[crkme.409010] ; loc_4014F8004014FE |. 66:3D 0300 CMP AX,3 Quote
Usr6 Posted April 3, 2014 Report Posted April 3, 2014 Multumesc, Am primit acordul lui @sulea pentru a face publica metoda prin care am gasit solutia. Desi este un challenge de reverse engineering poate fi rezolvat si prin metode care nu au nimic in comun cu RCE, eu am creat un script in python care gaseste solutia prin brute forcefrom subprocess import *for i in range (0,1000000): p = Popen("crackme.exe", stdin=PIPE, stdout=PIPE) p.stdin.write(str(i)+ "\n") print i, if p.stdout.read() != "nr=": breakSolutii identificate:9360 19360 2936074896 84896 94896 140432 150432 160432 205968 215968 225968271504 281504 291504 337040 347040 357040 402576 412576 422576 Quote
giv Posted April 4, 2014 Report Posted April 4, 2014 care gaseste solutia prin brute forceNaspa. Quote