Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Bases Del Hacking Ético, Ejercicios de Informática

Tips, y consejos para hacer buen uso del hacking ético

Tipo: Ejercicios

2020/2021

Subido el 17/12/2021

raul-sanchez-47
raul-sanchez-47 🇲🇽

1 documento

1 / 24

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
(LECCION SESENTA Y UNO)
Introducción de Ricardo Narvaja: Mr. Gandalf está hecho una máquina de hacer tutes de
calidad, otra muestra de ello es este tute, que es nuestra lección 61, una vez más. Le
deseamos suerte en lo que está esperando, el sabe.
GRACIAS GANDALF
Programa: Kitchendraw 4.0
Download: www.scitechsoft.com
Protección: Trial de tiempo. Carga de horas a través de un código.
Dificultad: Fácil.
Herramientas: SoftICE 4.0. W32Dasm 8.93. TechFacts 98. Advanced Registry Tracer
1.43. Hiew 6.76.
Cracker: mR gANDALF.
Fecha: 8/02/2002
Introducción: Mientras espero una llamada importante solo tengo dos opciones: Volver a
fumar o seguir "desguazando" bytes. Nada calma mis dendritas como cepillarme una
protección. Como no me llame hoy el Cifuentes me va a dar un jamacuco.
En fin, que como anduvieron pidiendo el crack del kitchendraw este lo he instalado y la
verdad que es facilón. El programa en sí se trata de un CAD de cocinas, no lo he probado
mucho, todo sea dicho, pero skrapie sí y le gusta bastante. Cuando lo instalamos y lo
ejecutamos por 1º vez nos aparece un contador de tiempo en la esquina sup-dcha que índica
29:55.
Son 30 las horas que este trial nos dejará usarlo y cada vez que lo usemos nos restará al
menos 5 minutos. Tenemos una ventana que nos permite introducir un código para la
recarga de tiempo que previamente habremos comprado por teléfono o por internet, algo
parecido a las tarjetas de teléfono móvil.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18

Vista previa parcial del texto

¡Descarga Bases Del Hacking Ético y más Ejercicios en PDF de Informática solo en Docsity!

(LECCION SESENTA Y UNO)

Introducción de Ricardo Narvaja: Mr. Gandalf está hecho una máquina de hacer tutes de calidad, otra muestra de ello es este tute, que es nuestra lección 61, una vez más. Le deseamos suerte en lo que está esperando, el sabe.

GRACIAS GANDALF

Programa: Kitchendraw 4.

Download: www.scitechsoft.com

Protección: Trial de tiempo. Carga de horas a través de un código.

Dificultad: Fácil.

Herramientas: SoftICE 4.0. W32Dasm 8.93. TechFacts 98. Advanced Registry Tracer 1.43. Hiew 6.76.

Cracker: mR gANDALF.

Fecha: 8/02/

Introducción: Mientras espero una llamada importante solo tengo dos opciones: Volver a fumar o seguir "desguazando" bytes. Nada calma mis dendritas como cepillarme una protección. Como no me llame hoy el Cifuentes me va a dar un “jamacuco”. En fin, que como anduvieron pidiendo el crack del kitchendraw este lo he instalado y la verdad que es facilón. El programa en sí se trata de un CAD de cocinas, no lo he probado mucho, todo sea dicho, pero skrapie sí y le gusta bastante. Cuando lo instalamos y lo ejecutamos por 1º vez nos aparece un contador de tiempo en la esquina sup-dcha que índica 29:55. Son 30 las horas que este trial nos dejará usarlo y cada vez que lo usemos nos restará al menos 5 minutos. Tenemos una ventana que nos permite introducir un código para la recarga de tiempo que previamente habremos comprado por teléfono o por internet, algo parecido a las tarjetas de teléfono móvil.

Desguaze: El objetivo de este tutorial es averiguar como realiza el programa el conteo del tiempo y detenerlo. Este es el listado del TechFacts cuando el programa cuenta que nos quedan 29 horas y 20 minutos:

TechFacts 98 System Watch Report 02/08/02 04:17:00 pm

The following files were modified:(5) c:\KD\Catalogs\catalogs.lst c:\KD\Scenes\Key0202.log c:\KD\Scenes\scenes.lst c:\WINDOWS\APPLOG\APPLOG.ind f:\kd\Space.ini

No changes made to INI file: C:\WINDOWS\WIN.INI

No changes made to INI file: C:\WINDOWS\SYSTEM.INI

Registry key values changed: (4) HKEY_CLASSES_ROOT\G Value "517215146": binary data changed HKEY_LOCAL_MACHINE\Software\CLASSES\G Value "517215146": binary data changed

0000000,DWORD:00000004,LPDATA:0085FB70,DWORD:00000004)

004871BA:RegSetValueExA = 0 (DV.DLL) 00487234:RegCloseKey() 00487239:RegCloseKey = 0 (DV.DLL) 004871CF:RegOpenKeyA(HANDLE:80000000,LPSTR:0085F37C:"G41512715",LPDAT A:0085F32C) 004871D4:RegOpenKeyA = 0 (DV.DLL) 00487198:RegQueryValueExA() 0048719D:RegQueryValueExA = 0 (DV.DLL) 004871F5:RegCloseKey() 004871FA:RegCloseKey = 0 (DV.DLL) 004871CF:RegOpenKeyA(HANDLE:80000000,LPSTR:0085FA94:"G41512715",LPDAT A:0085FA44) 004871D4:RegOpenKeyA = 0 (DV.DLL) 00487198:RegQueryValueExA() 0048719D:RegQueryValueExA = 0 (DV.DLL) 004871F5:RegCloseKey() 004871FA:RegCloseKey = 0 (DV.DLL) 004871CF:RegOpenKeyA(HANDLE:80000000,LPSTR:0085FA94:"G41512715",LPDAT A:0085FA44) 004871D4:RegOpenKeyA = 0 (DV.DLL) 00487198:RegQueryValueExA() 0048719D:RegQueryValueExA = 0 (DV.DLL) 004871F5:RegCloseKey() 004871FA:RegCloseKey = 0 (DV.DLL) 00487210:RegCreateKeyA(HANDLE:80000000,LPSTR:0085FABC:"G41512715",LPDA TA:0085FA4C) 00487215:RegCreateKeyA = 0 (DV.DLL) 004871B5:RegSetValueExA(HANDLE:C49FC390,LPSTR:0085FA94:"517215146",DWO RD:00000000,DWORD:00000003,LPDATA:0085FA74,DWORD:00000020) 004871BA:RegSetValueExA = 0 (DV.DLL) 00487234:RegCloseKey() 00487239:RegCloseKey = 0 (DV.DLL) 004871CF:RegOpenKeyA(HANDLE:80000000,LPSTR:0085F998:"G41512715",LPDAT A:0085F948) 004871D4:RegOpenKeyA = 0 (DV.DLL) 00487198:RegQueryValueExA() 0048719D:RegQueryValueExA = 0 (DV.DLL) 004871F5:RegCloseKey() 004871FA:RegCloseKey = 0 (DV.DLL) 004871CF:RegOpenKeyA(HANDLE:80000000,LPSTR:0085F820:"G41512715",LPDAT A:0085F7D0) 004871D4:RegOpenKeyA = 0 (DV.DLL) 00487198:RegQueryValueExA() 0048719D:RegQueryValueExA = 0 (DV.DLL) 004871F5:RegCloseKey() 004871FA:RegCloseKey = 0 (DV.DLL)

Parece que es en 004871CF donde se abre la clave y en 0048719D donde se lee. Sí ponemos un Bpx en 0048719D y traceamos un poquito (tratad bien a F10 que tiene que durarnos para otros tutes) llegamos a este trocito de código perteneciente a DV.dll:

004E820D E8E4970000 call 004F19F :004E8212 83C408 add esp, 00000008 :004E8215 8B45E4 mov eax, dword ptr [ebp-1C] :004E8218 8B55EC mov edx, dword ptr [ebp-14] :004E821B 03C2 add eax, edx :004E821D 8B4DE8 mov ecx, dword ptr [ebp-18] :004E8220 8B55F0 mov edx, dword ptr [ebp-10] :004E8223 03CA add ecx, edx <- ecx=Nº de usos gastados :004E8225 2BC1 sub eax, ecx <- eax=Nº usos restantes. :004E8227 8BE5 mov esp, ebp :004E8229 5D pop ebp :004E822A C3 ret

Imagínense las posibilidades que se nos ofrecen... por cierto, entren en DV.dll poniendo un bpx en hmencpy antes de pulsar ok en la ventana de introducción de códigos de recarga y tengan en cuenta que en el Sice la dirección es 558225 en vez de 004E8225.

El remate final lo dejo a su gusto, crackers.

mR gANDALF

DESCARGADO GRATUITAMENTE DE

http://visualinformatica.blogspot.com

Desensamblamos con el W32Dasm, y en String Referentes no veo nada que se le parezca (aquí hablo en 1ª persona a propósito, por motivos que veremos más abajo). Es hora de recurrir al TRW2K…

Antes de darle, otra vez, a probamos con bpx messagebox y messageboxexa, pero en ninguno de los dos salta el “debugger” al aparecer la ventana, como casi nunca falla lo intentaremos esta vez con bpx hmemcpy y … nada tampoco funciona. Pensemos un poco… el programa tiene que comprobar si hemos comprado el producto o no, y o accede al registro (vimos en la gran primera parte de esta lección, que se cambian algunas “cosas”) o lo comprueba de algún archivo escondido en las entrañas de nuestro PC. Lo intentaremos con el registro, poniendo bpx RegQueryValue (nunca lo había usado) y procedemos…

( Técnica de La Marcha Atrás ) ¡Si! Esta vez ha saltado el TRW, aparece en el Kernell, quitamos el bp (bc *).Pulsamos F12 hasta que aparece el “molesto cartelito”. Aceptamos y vuelve a saltar el TRW, esta vez aparece en User, clavamos el dedo en F10 (cuidado los que usen Softice) hasta que volvamos al código del programa (KD). Miramos donde hemos ido a parar y estamos en 004397D2. Usando la técnica de mirar lo que hay encima , nos pueden parecer interesantes algunas Calls y algunos saltos cercanos, pero como la zona “conflictiva” ya la hemos localizado, para verlo todo más cómodos volvemos al W32Dasm, buscamos 004397D2:

Ohh!! El mismo mensaje de “chico malo” (pero en francés) está ahí y en String Referentes antes no había visto nada, lo compruebo y está de las primeras. ¡Dolorrrrrrrr! Pero como aquí lo que intentamos es aprender no importa, porque gracias a no verlo he usado un bpx que hasta ahora no había empleado, y puede sernos útil para crackear programas donde no nos lo ponen tan fácil. Seguimos. La imagen lo aclara todo, los saltos que evitan el mensaje señalan hacia la misma dirección o sea que parcheando cualquiera de ellos funcionará igual (esto lo sé porque lo he comprobado con el debugger, jeje).

Con un editor hexadecimal cambiamos p. ej. el primer salto por 74 o EB (para que siempre salte), y ejecutamos el programa… Oh!!! Me estoy empezando a enfadar con los programadores de este “engendro”. El programa no funciona y da error, debe tener algún tipo de protección contra modificaciones en su código, pero siendo tan fácil de crackear se molestan poniendo esto?…

Tengo que borrarlo e instalarlo otra vez porque aunque hice una copia del original, esta también ha dejado de funcionar. La solución sería parchearlo en memoria: crearemos un loader con el R!SC's Process Patcher. Este es el script:

; KitchenDraw 4 (Produccion de imagen fotorealista)99 Euros menos ;-) ; Loader para Poder usar la Produccion de imagen fotorealista ; Esta opción sirve para poder ver el diseño en 3D con movimiento

F=kd.EXE: ; VICTIMA O=Loader_KitchenDraw.exe: ; ASESINO P=4397a8/75/74: ; Salta siempre, por favor $ ;end of script ; Fin

Lo probamos y funciona. ¡Lo hemos reventado, y además se lo merece! (Doble alegría) J

Scrapie

Saludos a todos los miembros de la lista.

PD: Gracias a Ricardo y mR gANDALf por sus fabulosas lecciones, perdón a mR gANDALf por copiar (también) la plantilla que usa para hacer sus magníficos tutes.

PD2: Este es mi primer tute, y no hace mucho que me incorporé a la lista por lo que pido perdón si hay algún error, ya que me doy cuenta cuando leo las lecciones de Ricardo y los demás, de lo poco que sé y de lo mucho que me queda por aprender.

DESCARGADO GRATUITAMENTE DE

http://visualinformatica.blogspot.com

Hasta aquí un breve resumen del tute de Kuato Thor. Pero si prueban a retrasar el reloj un mes, p.ej, verán que el programa reconoce que le han toqueteado el reloj, ya que seguramente guarde la fecha de instalación en el registro, y nos muestra un molesto cartelito.

Este cartelito nos aparece aunque hallamos cargado el programa con un loader evitando el call anterior. De hecho aparece antes de ese Call y es un messageboxexa. Traceando un poquito y cambiando alternativamente la fecha del sistema, vemos que:

:017C6581 8B151CB97C01 mov edx, dword ptr [017CB91C] <- Flag :017C6587 3B02 cmp eax, dword ptr [edx] <- EAX=Flag? :017C6589 0F849C090000 je 017C6F2B <- salta a cartel :017C658F A164BC7C01 mov eax, dword ptr [017CBC64] :017C6594 8B00 mov eax, dword ptr [eax] :017C6596 8B1568BB7C01 mov edx, dword ptr [017CBB68] :017C659C 3B02 cmp eax, dword ptr [edx] :017C659E 0F84D8080000 je 017C6E7C :017C65A4 A164BC7C01 mov eax, dword ptr [017CBC64] :017C65A9 8B00 mov eax, dword ptr [eax] :017C65AB 8B1504BC7C01 mov edx, dword ptr [017CBC04] :017C65B1 3B02 cmp eax, dword ptr [edx] :017C65B3 0F84CB090000 je 017C6F :017C65B9 A164BC7C01 mov eax, dword ptr [017CBC64] :017C65BE 8B00 mov eax, dword ptr [eax] :017C65C0 8B15BCBA7C01 mov edx, dword ptr [017CBABC] <- Flag :017C65C6 3B02 cmp eax, dword ptr [edx] <- EAX=Flag? :017C65C8 7432 je 017C65FC <- evita cartel :017C65CA A164BC7C01 mov eax, dword ptr [017CBC64] :017C65CF 8B00 mov eax, dword ptr [eax] :017C65D1 8B151CBB7C01 mov edx, dword ptr [017CBB1C] :017C65D7 3B02 cmp eax, dword ptr [edx]

Similares saltos presenta en 17C66A6 y 17C6793. “Corrigiéndolos” evitamos que si tenemos que mover el reloj para atrás por alguna razón nos salga el cartelito.

... la segunda parte: ese molesto logotipo en nuestros PDF`s ...

Fíjense que feo cartel nos parece utilizando la versión demo.

Fíjense además que en la cabecera aparece una frase de 3 líneas sobre las ventajas de registrarse (eliminación de cartelito incluida, claro esta). Indudablemente, durante el proceso de creación de nuestro PDF se ha sobreimpreso “esto”. Antes de apretar Ctrl-D como posesos pensemos un poco. Efectivamente se trata de Delphi y en estos casos olvídense de hacer nada sin el Dede. Tracear a lo bruto solo nos lleva a desgastar F10 y volvernos locos. Pero como Dede no admite empacados lo mejor es dumpear con ProcDump seleccionando de la ventana de procesos activos easypdf.exe (clic derecho y seleccionen dump full).

El dumpeado original lo editan con PE Editor, hacen dumpfix (lección 34) arreglan la tabla de secciones para que permita usar el Wdasm (E0000020) y lo cargan en el Dede. Aquí vallan a Procedures y elijan Main. Échenle un vistazo, sin duda se trata del procedimiento que crea la pagina principal, la que contiene el botoncito que al apretarlo nos crea nuestro PDF. Verán que hay uno que se llama DoPDFExecute, lo cual resulta mas que sugerente. Si ponemos un Bpx al comienzo del procedure, ósea en 68b144, veremos que nada mas tocar el botón caemos en el Sice.

:0068D0D3 DD45E0 fld qword ptr [ebp-20] :0068D0D6 83C4FC add esp, FFFFFFFC :0068D0D9 D91C24 fstp dword ptr [esp] :0068D0DC 9B wait :0068D0DD DD45E8 fld qword ptr [ebp-18] :0068D0E0 D83550D26800 fdiv dword ptr [0068D250] :0068D0E6 83C4FC add esp, FFFFFFFC :0068D0E9 D91C24 fstp dword ptr [esp] :0068D0EC 9B wait :0068D0ED 6A00 push 00000000 :0068D0EF 6854D26800 push 0068D :0068D0F4 8B45F4 mov eax, dword ptr [ebp-0C] :0068D0F7 50 push eax :0068D0F8 E83FD2FAFF call 0063A33C :0068D0FD 6A00 push 00000000 :0068D0FF 6834D26800 push 0068D :0068D104 8B45F4 mov eax, dword ptr [ebp-0C] :0068D107 50 push eax :0068D108 E8BBD1FAFF call 0063A2C :0068D10D 8B45F4 mov eax, dword ptr [ebp-0C] :0068D110 E87FD1FAFF call 0063A

  • Referenced by a (U)nconditional or (C)onditional Jump at Address: |:0068CF56(C) <- Aqui viene el salto que evita el “marcado” del texto. | :0068D115 8BE5 mov esp, ebp :0068D117 5D pop ebp :0068D118 C21000 ret 0010

Con esto queda limpia la protección. Puede hacerse un bonito loader con el Princess Sandy patcher.

Hasta la proxima... o nó, quien sabe?

PD: Agradecimientos en especial para Ricardo, a quién estimo más cada día.

mR gANDALF

DESCARGADO GRATUITAMENTE DE

http://visualinformatica.blogspot.com

(LECCION SESENTA Y TRES)

Introducción de Ricardo Narvaja: A pesar de que estamos de lleno metidos con el nuevo curso, nos siguen llegando colaboraciones de amigos, esta es de un amigo (JIKI) de 15 años, que hizo su primer tute y se lo agradecemos mucho, lo colocamos como LECCION 63 del curso viejo.

GRANDE AMIGO JIKI.

Programa : Bustout! Versión 2.

Tipo: Juego

Protección: Solo te deja jugar 3 pistas

Herramientas: TRW; w32dasm; hex workshop; language 2000; ProcDump.

Cracker (si se me puede llamar así): JIKI

Introducción...

Ya que todos están escribiendo algún tute es hora de que yo haga uno. Este juego es bastante viejo, pero a mí me encanta y seguro que a muchos de ustedes también les va a gustar. Es un juego que te ofrece la posibilidad de registrarte metiendo un serial, pero ese trabajo se lo dejaremos a un cracker con más experiencia.

Pos parto... Abrimos el juego con el Language 2000 y vemos que no está comprimido y está hecho en Visual C++. Paso siguiente abrimos el ProcDump, vamos a PE EDITOR, seleccionamos el nombre del juego y hacemos clic en abrir. Ni bien apretamos abrir nos saldrá una ventana en la cual hacemos un clic donde dice SECTIONS. Luego procedemos a hacer clic derecho en .data y ponemos edit section y en donde dice sections characteristics cambiamos de C0000040 a E0000020. Hacemos lo mismo con el .idata.

Al ataque... Abrimos el W32Dasm y desensamblamos el juego. Una vez abierto vamos a String Data Referentes y buscamos Free versión. Miren la sorpresa que debajo de Free versión está Full versión. Bueno ahí vamos (a full versión). Hacemos 2 clicks y vemos que para llegar ahí nos manda desde un salto condicional. Anotamos esa dirección en un papel. Volvemos a String data referentes y hacemos de nuevo 2 clicks en Full versión. Ahora vemos que es desde otra dirección de donde salta; la anotamos. Volvemos a hacer lo mismo solo que esta vez vemos otra cosa:

Vemos que ese cartel es llamado desde una Call en la dirección 405f0a, vamos a Goto/Goto code location y tipiamos la dirección. Así que lo que tendríamos que hacer sería anular esa Call. Tenemos que cambiar:

E8df020000 por 9090909090

Y listo, ya podemos jugarle a todas las pistas sin siquiera estar en “Full Versión” ¿Vieron que siempre hay otra salida?

(Esta es una foto del último level)

PD: Un enorme abrazo a Ricardo por confiar en mí aunque en un principio le hice muchas preguntas (¿Y QUE QUIEREN? SOLO TENGO 15 AÑOS).

DESCARGADO GRATUITAMENTE DE http://visualinformatica.blogspot.com

Ahí vemos que no hay ningún salto condicional anteriormente, el único salto que hay es uno que está en la palabra “EPOCH” (004B6AA9 7429 je 004b6ad4). Miren que raro que es desde esa palabra que se evita el comando “Incorrect code, please reenter”, bueno, yo ni me preocupé.

La joda es que lo crackeé a “lo bruto” (tenía un par de protecciones más) (External Exception %x y Access violation at adress %x y algo más que no va al punto). Bueno, el chiste es que una vez que lo crackeé me quedó una duda con la palabra EPOCH, así que instalé de nuevo el Calendar 200X, fui a File/Register Shareware, completé todos los datos con la palabra EPOCH y...

Bueno, después me dí cuenta que en el único lugar en donde tiene que estar la palabra EPOCH es en REGISTRATION CODE, en donde dice Name y Registration Number pueden poner lo que quieran.

PD: Bueno, un abrazo grande a Ricardo y aprovecho para saludarlo ya que hace mucho que no le escribo.

PD: DISCULPEN!!! En el tute anterior seguramente no habrán podido cambiar ningún valor en el Hex Workshop y es porque el atributo del juego estaba en “Solo Lectura” para cambiarlo hagan clic derecho en BUSTOUT, van a propiedades, le sacan el tilde a “Solo Lectura” y se lo ponen a “Archivo”.

PD: Traten de crackear el programa Calendar 200X con el TRW ¡¡¡ES MÁS FÁCIL QUE CON EL W32DASM!!! DESCARGADO GRATUITAMENTE DE http://visualinformatica.blogspot.com