| ESTUDIO COLECTIVO DE DESPROTECCIONES Última Actualizacion: 25/10/2001 |
Programa | Quake 3 | W95 / W98 / NT
Descripción | Juego en primera persona
Tipo | CD-Check
Tipo de Tutorial | []Original, []Adaptación, []Aplicación, [X]Traducción
Url | http://www.quake3.com
Protección | CD Check
Dificultad | 1) Principiante, 2) Amateur, 3) Aficionado, 4) Profesional, 5) Especialista
Herramientas | W32dasm v8.9
Objetivo | No usar el CD
Cracker | r!sc : Traducción por DeeSe - [DS]
Fecha | 08 de Agosto de 2000
INTRODUCCION
Aqui tenemos una traduccion del Tutorial de r!sc para crackear el quake 3 cdcheck. Espero que os vaya bien. Lo he hecho lo mejor que he podido. Y creo que no hay ningun error. Si encuentras alguno, hazmelo saber. Venga. Lets Go Cracking!
AL ATAQUE
blah blah blah. q3 cd check aburrido? ja, me hace reir (lo hace, en serio) wdasm quake3.exe . . buscar en import \ getdrivetypea . . saluda al CD Check :004400C0 81EC84000000 sub esp, 00000084 :004400C6 56 push esi * Reference To: KERNEL32.GetDriveTypeA, Ord:0104h :004400C7 8B3590104B00 mov esi, dword ptr [004B1090] :004400CD C64424053A mov [esp+05], 3A ; ':' :004400D2 C64424065C mov [esp+06], 5C ; '\' :004400D7 C644240700 mov [esp+07], 00 ;) :004400DC C644240463 mov [esp+04], 63 ; en este punto, [esp+4] == 'c:\',0 * Referenced by a (U)nconditional or (C)onditional Jump at Address: :00440141(C) :004400E1 8D442404 lea eax, dword ptr [esp+04] :004400E5 50 push eax ; push 'c:\',0 :004400E6 FFD6 call esi ; llama a getdrivetypea :004400E8 83F805 cmp eax, 00000005 ; Es un CD ROm? :004400EB 7548 jne 00440135 ; No, mira las demas else.... * Possible StringData Ref from Data Obj ->"quake3" :004400ED 68A81A4C00 push 004C1AA8 ; push 'quake3',0 :004400F2 8D4C2408 lea ecx, dword ptr [esp+08] :004400F6 51 push ecx ; push 'c:\',0 ; o la letra que sea tu cd-rom * Possible StringData Ref from Data Obj ->"%s%s" ;se usa en el formato de cadenas. string/string :004400F7 68088B4B00 push 004B8B08 :004400FC 68F0895C00 push 005C89F0 :00440101 E899EE0500 call 0049EF9F ; despues de esto, tenemos 'c:\quake3',0 ? * Possible StringData Ref from Data Obj ->"quake3.exe" :00440106 689C1A4C00 push 004C1A9C ; push 'quake3.exe',0 :0044010B 68F0895C00 push 005C89F0 :00440110 8D542420 lea edx, dword ptr [esp+20] ; es nuestra cadena formateada ? * Possible StringData Ref from Data Obj ->"%s\%s" ; string '\' string :00440114 68941A4C00 push 004C1A94 :00440119 52 push edx :0044011A E880EE0500 call 0049EF9F ; despues de esto, 'c:\quake3\quake3.exe',0 ? :0044011F 8D442428 lea eax, dword ptr [esp+28] * Possible StringData Ref from Data Obj ->"r" ; read \ readonly .. .. :00440123 68901A4C00 push 004C1A90 :00440128 50 push eax :00440129 E877F90500 call 0049FAA5 ; leer\cargar\hacer sth con el archivo :0044012E 83C428 add esp, 00000028 ; fija la pila con todas las cademas formateadas :00440131 85C0 test eax, eax ; eax!=0 == buen chico :00440133 7518 jne 0044014D quake3 es un poco puta . . y tiene 2 de estas verificaciones . . la siguiente verificacion es ejecutada primero, pero es 100% igual a la otra . . si forzamos a que piense que quake3.exe esta cargado. obtendremos un crash en 49FA00 o algo asi. asi que . vamos a abrir quake3.exe primero apagamos . . donde esta puesta la letra de la unidad 'c:\',0. y mira si es un cdrom, y coje el directorio actual. y si es un Cd-Rom para el checkeo .. '.\',0,0 . . :d edita la primera parte del codigo para que se parezca a esta .. (y el otro codigo de cd check , @00440170) :004400C7 8B3590104B00 mov esi, dword ptr [004B1090] :004400CD C64424055C mov [esp+05], 5C ; '\' :004400D2 C644240600 mov [esp+06], 00 :004400D7 C644240700 mov [esp+07], 00 :004400DC C64424042E mov [esp+04], 2E ; en este punto, [esp+4] == '.\',0,0 * Referenced by a (U)nconditional or (C)onditional Jump at Address: :00440141(C) :004400E1 8D442404 lea eax, dword ptr [esp+04] :004400E5 50 push eax ; push '.\',0,0 :004400E6 FFD6 call esi ; llama a getdrivetypea :004400E8 83F805 cmp eax, 00000005 ;no es un cd rom. pero no hay problema :004400EB 7500 jne 004401ED ; mata el salto, efectivamente nopealo (NOP) ahora hemos de joder el codigo de formato. no queremos el directorio '.\quake3' a que no? solo mata la jodida llamada. :004400ED 68A81A4C00 push 004C1AA8 ; push 'quake3',0 :004400F2 8D4C2408 lea ecx, dword ptr [esp+08] :004400F6 51 push ecx ; push '.\',0,0 * Possible StringData Ref from Data Obj ->"%s%s" ; used in string formatting . string/string :004400F7 68088B4B00 push 004B8B08 :004400FC 68F0895C00 push 005C89F0 :00440101 B899EE0500 mov eax, 0005EE99 ; camino cruel para matar la llamadal . es B8 .. ; pero por lo menos no tenemos '.\quake3',0 ahora ok, 90% fixed. Ahora la siguiente parte del formato de cadenas . . el formato es '%s\%s' y si se ejecuta nosotros tenemos que acabarla con '.\\quake3.exe',0 . . y una '\' extra que es malo . . buscamos como texto '%s\%s',0 en quake3.exe . . hazlo 2 veces. pero una de estas esta muy cerca de 'quake3' & 'quake3.exe'. Tenemos que adivinar cual es el correcto. .. 'zen cracking' %s\%s...quake3.exe..quake3.. yaddayaddayadda . cambialo a '%s%s',0 . . i.e. quita la '\' . excelente . ahora .. tenemos que joder este codigo ( y su espejo..) * Possible StringData Ref from Data Obj ->"quake3.exe" :00440106 689C1A4C00 push 004C1A9C ; push 'quake3.exe',0 :0044010B 68F0895C00 push 005C89F0 :00440110 8D542420 lea edx, dword ptr [esp+20] ; nuestra cadena formateada anteriormente? ; '.\',0 hehehe * Possible StringData Ref from Data Obj ->"%s%s" ; stringstring :00440114 68941A4C00 push 004C1A94 :00440119 52 push edx :0044011A E880EE0500 call 0049EF9F ; despues esto, '.\quake3.exe',0 boom! haha . estupido tutorial . pero quake3 funciona ahora sin el cd! (si has parcheado los 2 check . .. ) entonces que hemos aprendido? q3 checkea si esta el propio exe en el cd rom .. . 'x:\quake3\quake3.exe',0 si matamos el cd check, peta. pero, le hechamos una mirada al disco duro buscando este 'importante' fichero . . por lo que, tendremos que parchearlo para k busque '.\quake3.exe',0 que se puede encontrar muy facilmente, por que si no esta instalado, en el directorio actual, como quieres jugar!? r!sc .. http://csir.cjb.net eVC/dVN rtl 2k ! Traducido por DS DeeSe - ©TeaM HeaT 16, 2000 para mas informacion: deese2k@yahoo.es
[ Entrada | Documentos Genéricos | WkT! Web Site ]
[ Todo el ECD | x Tipo de Protección | x Fecha de Publicación | x Orden Alfabético ]
(c) Whiskey Kon Tekila [WkT!] - The Original Spanish Reversers. Si necesitas contactar con nosotros , lee esto antes e infórmate de cómo puedes ayudarnos