Bien para empezar a crackear tenemos primero que familiarizarnos con ciertas partes de El microprocesador
dado que vamos a trabajar con lenguaje ensamblador y el lenguaje ensamblador es lo que está más bajo
nivel es decir más cerca de lo que es el lenguaje o el código máquina.
Si no es lo mismo código máquina que ensamblador como dice la mayoría el ensamblador es una serie de
nemotécnica de ayuda memoria para hacer operaciones que en código máquina puro serían valores en hexadecimal
sin sentido humano.
Digamos tenemos que tener una memoria increíble e inhumano programar de esa forma cuando hablamos de
cómo es un microprocesador que es en definitiva y que va a interpretar las instrucciones de ensamblador
de ese lenguaje que nosotros vamos a obtener por ingeniería inversa físicamente primero podemos definir
dos partes dentro de lo que sería la máquina.
Una de las partes como se ve acá abajo es la memoria que como dijimos es el banco de trabajo la memoria
RAM y por otro lado tenemos lo que sería la unidad central de procesamiento o central Processor Unit
CPU como se ve acá en el medio naranja que consta de varias partes las más importantes son en principio
digamos la Introducción la unidad de control la unidad aritmético lógica y estas dos flechas que están
acá abajo que suben y bajan entre la memoria y el bloque naranja que dice CPU.
Bueno son los bases de datos y los canales de datos son cables líneade por donde pasan información que
no son otra cosa que tensiones eléctricas.
Un cero se representa con ausencia de tensión de voltaje y uno 1 se representa con un voltaje y todo
regido con la precisión de una pieza de relojería suiza por un cristal que genera un temporización o
como un reloj es un permiso de relojes como un semáforo que te dice Puedes avanzar y si no está esa
señal de reloj todo se queda quieto es como un latido que hace que todo se procese ok tiene que estar
todo muy bien sincronizado.
En otras épocas el acceso a la memoria era secuencial recuerdan las viejas épocas en donde se veían
películas donde las computadoras eran gigantes como un armario ropero grande y tenían unos círculos
que giraban con cinta.
Ese tipo de memoria secuencial tenía la desgracia que no se podía accesar a cada parte de información
a la misma velocidad.
Yo quería el dato uno tenía que estar al principio de la cinta si quería el dato 20 tenía que adelantar
la cinta hasta el 20.
O sea que el tiempo de acceso que yo elegí al azar por ejemplo el dato 1 el dato 20.40 eran diferentes
tiempos la memoria RAM Random Access Memory significa que como vimos el acceso aleatorio que yo elija
cualquier parte del banco de datos me va a tomar exactamente el mismo tiempo sea para sacar el dato
1 o para sacar el dato XX.
Esto hace que se pueda sincronizar con la frecuencia de trabajo del microprocesador hay un multiplicador
como vimos que eleva la velocidad con respecto a la memoria RAM y el procesador si generalmente un multiplicador
por 10 o sea que todo este bloque naranja va a estar andando diez veces más rápido tenemos algo llamado
un poco más acá arriba hay Lebu Unidad aritmético y lógica.
Bueno es básicamente una calculadora de qué se encarga o no se encarga de como dice ahí lo vamos a ver
mejor después la parte de aritmética se encarga de hacer cuentas sumar restar y la parte de lógica del
nombre se encarga de hacer comparaciones por ejemplo en algo y algo algo o algo o comparación Exmor
negada así si es algo pero no es otra cosa.
Así que entonces en definitiva la unidad aritmético lógica es lo que hace el cálculo ahí se mandan los
cálculos.
Una máquina aunque hace esas maravillas que nosotros podemos llegar a ver de correr un juego casi idéntico
a la realidad o mover un satélite a miles de kilómetros o un robot marciano.
En realidad si uno hace zum hacia el interior de la máquina no deja de ser una calculadora no deja de
ser una máquina que suma y resta.
Aunque parezca mentira después hay algo llamado unidad de control la unidad de control lo que hace es
ejecutar operaciones físicas elementales es decir a nivel electrónico si todo son compuertas que se
abren que se cierran un dato pasa por acá se va para otro lado.
Así que la unidad de control entonces lo que se hace es regida por un clock un reloj una señal de temporización
que tienen las placas madres en donde se ponen los microprocesadores.
Si con esa tutoría de ese reloj lo que va haciendo es interpretar cada una de las instrucciones que
genera un programa ya vamos a ver que cada instrucción en ensamblador le hace por ejemplo mover un dato
de la memoria a los registros y todos esos datos tienen que ir por un lugar llamado tãpac un camino
que hay toda esa lógica a nivel electrónico la maneja la unidad de control.
Es como si en la realidad sería la operación matemática sería por ejemplo que un paquete se mueva de
Rusia a Estados Unidos.
Esa sería la operación mover de Rusia a Estados Unidos mover de tal registro el registro a Rusia el
registro Estados Unidos.
Esa es la operación que haría la ALU pero en realidad hay que hacerlo hay que agarrar envolver el paquete
llevarlo al correo que lo suban al avión que lo bajen que lo reciba la otra oficina de correo bueno
eso que parece transparente lo hace la unidad de control para que acepten la idea.
Después la tapa es el camino que siguen los datos.
Si dentro de lo que sería el procesador los datos no salen hasta la unidad digámoslo así va hasta el
disco rígido de la computadora sino que se maneja todo más contenido en la pastilla de el microprocesador.
Así que cuando uno habla de tapado camino de datos está haciendo referencia a los datos que se mueven
en la unidad aritmético lógica si los registros y los bases vamos a ver qué base como dije son una serie
de cables que conectan un lado al otro.
Puede haber en paralelo en serie y los registros son como unos cajones unos segmentos de memoria que
son mucho más pequeños que la memoria RAM pero infinitamente más rápidos.
Y qué tienen.
Es como la memoria una calculadora.
Si el botoncito es más o menos bueno algo así para que se entienda así el tapa con una especie de director
de orquesta así también un dato pasa por acá espera el otro pasa por acá.
Si algo importante es que cuando uno mira la tapa lo que va a estar viendo son los datos que se cargan
de la memoria a los registros.
Que el programa saca de la memoria RAM en donde están corriendo el programa y se van acercando los registros
de la máquina sea más al nivel de procesamiento de la máquina que es un crack.
Si ya a esta altura cuando yo dije en el display que había empezado a pensar sobre qué dar yo podía
haber dado un curso de cracking con el admit que es un crack mi uncanny es un programita para probar
las habilidades como ingeniero inverso.
Sí para hacer ingeniería inversa a lo que vamos a hacer acá y también hacer el cracking o sea obtener
el código pero también modificarlo y tratar de vencer algún desafío que generalmente es que vos le pongas
un código y que te aparezca el mago blanco o que hay como tiene solamente la porción que comprueba la
lógica y no tiene el resto del programa.
Entonces se considera legal decir no hay que tener tantos recaudos y uno puede agarrar un crack ni que
tenga la rutina de protección por ejemplo del último Windows.
Windows 10.
Sin Windows 10 y practican ingeniería inversa aprender cómo funciona la protección y si quiere derrotarla.
Sí pero bueno a mí me gusta hacerlo más como una pieza de software real porque porque si no Granny es
como agarrar un 1 por ciento del fragmento del código total es mucho más fácil encarar la ruptura de
un clan porque ya está ahí lo que uno tiene que romper.
En cambio en una pieza de software que tienen miles de códigos de línea de código por encima y por debajo
es un poco más difícil y más plasmado en la realidad utilizar un programa de verdad.
Y como dice ahí se utilizan para el aprendizaje.
Les voy a mostrar ahora mi máquina virtual acá en el celular que es un crack mi click.
Aquí estamos para mostrarle el sabor que tiene un Carmignac bueno acá tengo uno que me bajé acá abajo
que obviamente se llama Agní osa ejecutarlo tiene 83 K.
Porque claro es solamente la rutina de comparación Bueno ves lo que es.
Simplemente me puede pedir usuario y registro me voy a pedir la Laukiz solamente si yo le puedo poner
cualquier cosa por ejemplo o sea cambiar de teclado es tema lindo.
Vamos a ponerle tres tristes por ejemplo.
Y fíjense que lo único que puedo hacer es chequear a ver si es correcto.
Presiona el botón y no pasó nada.
Este es un buen Creamy porque no apareció el mago blanco ni el mago negro en lugar de decir como la
mayoría la mayoría del software código incorrecto.
No hace nada
esto lo vamos a ver cuando veamos las contramedidas es excelente que no haga nada.
Así tienen que hacer todos los programadores porque si hubiese puesto una ventana diciendo código incorrecto
ya tendríamos nuestro mago negro para buscar si bueno vaca dice Aboud es un crack que tiene un montón
de años.
Pero está bien bien hecho.
Vamos con la próxima clase donde vamos a estudiar el ófset concepto de ófset y lo que es un patch o
un parche el código.