Sie sind auf Seite 1von 36

FACULTAD DE INGENIERIA ESTADISTICA E INFORMATICA

MAESTRA EN INFORMTICA Mencin en Informtica Educativa


Tema:
CRACKERS
Curso: AUDITORIA INFORMATICA

Docente: M.S.C. EDELFRE FLORES VELAZQUES Presentado por el Grupo n 5

JORGE CONDORI CHAVEZ SANTIAGO RUBEN QUISPE ANDIA CESAR YUPANQUI BENDITA

Puno C.U. DICIEMBRE 2007


1

Presentacin
El presente trabajo: crackers esta elaborado para los estudiantes de la maestra en informtica educativa y publico en general con conocimientos en informtica

bsica, incluye conceptos bsicos sobre crackers y de profundidad en los diferentes aspectos relacionados con los crackers y el crackeo, con el presente trabajo los estudiantes conocern que es un crackers, algunos tipos de crackers, crackers famosos y las herramientas

usadas por los crackers , que son temas muy importantes en la formacin de los estudiantes

Esperamos que el presente trabajo tenga la acogida que nos hemos propuesto y agradecemos las sugerencias de las personas interesadas en el tema, que sin duda servirn para corregir y ampliar el trabajo y por ende motivara la investigacin para nuevos trabajos.

Los ejecutores Diciembre 2007

CRACKER
QUE ES UN CRACKER Tenemos las siguientes definiciones: El trmino cracker (del ingls crack, romper) tiene varias acepciones. Cracker es una persona que mediante ingeniera inversa realiza: seriales, keygens y cracks. Tambin se denomina cracker a quien disea o programa cracks informticos, que sirven para modificar el comportamiento o ampliar la funcionalidad del software o hardware original al que se aplican, sin que en absoluto pretenda ser daino para el usuario del mismo Tambin existen Crackers que se dedican a crear Cracks para Software importante y negocia con ellos, existen cracks para tarjetas, Shareware y sistemas electrnicos como el DVD o las consolas Playstation entre otros. Asimismo, un cracker tambin es aquel que practica el cracking (accin de modificar el cdigo fuente a un programa). sta actividad est prohibida a menos que el programa al que se le aplica sea de Software libre, y por lo general requiere muchos conocimientos sobre hacking. Un cracker es alguien que viola la seguridad de un sistema informtico de forma similar a como lo hara un hacker, slo que a diferencia de este ltimo, el cracker realiza la intrusin con fines de beneficio personal o para hacer dao, podemos recordar de nuevo que se trata de un Experto Hacker en cuanto conocimientos profundos de programacin y dominio de la tecnologa.

El Cracker disea y fabrica programas de guerra y hardware para reventar software y comunicaciones como el telfono, el correo electrnico o el control de otros ordenadores remotos. Muchos Crackers " cuelgan " pginas WEB por diversin o envan a la red su ultima creacin de virus polimorfico. El trmino deriva de la expresin "criminal hacker", y fue creado alrededor de 1985 por contraposicin al trmino hacker, en defensa de stos ltimos por el uso incorrecto del trmino. En ocasiones el cracking es la nica manera de realizar cambios sobre software para el que fabricante no presta soporte, especialmente cuando lo que se quiere es o corregir defectos o exportar datos a nuevas aplicaciones, en estos casos en la mayora de legislaciones no se considera del cracking como actividad ilegal. Otros, simplemente Crackean sistemas por diversin. Otros tantos, hacen Cracking al servicio del Don dinero o a las ordenes del gobierno. Estas son pues, las diferentes caras del Cracking, la terminologa Crack y los propios Crackers.

Reflexin sobre los Cracks Antes de continuar debemos de conocer perfectamente lo que es un Crack y cuando surgi esta idea. Un Crack es la rotura total de un sistema, ya sea de Software o Hardware. Los que realizan tales Cracks, son denominados Crackers, y son un eslabn ms de los Hackers. Si los Hackers son capaces de penetrar en los sistemas informticos, los Crackers son capaces de desproteger el mismo sistema informtico. El inicio de los Cracks no se gesta con el Software como se cree. Mucho antes de que conociramos Windows, aplicaciones de fotografa, editores HTML y un gran nmero de aplicaciones de Software que hoy da conocemos, los Cracks ya se haban hecho un hueco en el mundo Underground.

Pero entonces se denominaban Phreakers rompedores de sistemas telefnicos y ahora simplemente Crackers o HardwareCrackers. La acepcin acertada quizs no exista todava, pero si se pueden distinguir los diferentes grupos de Crackers que existen en la actualidad y que parecen estar divididos en varios grupos. Los Cracks de Software Programas tan importantes como 3D Studio Max, Photoshop 5.5, Dreamweaver 3 o Windows Millenium, corren por Internet completamente desprotegidos, es decir, no se caducan o estn registrados de forma fraudulenta. Son los denominados Warez o Appz. Ambas terminologas estn siendo utilizadas para definir un Software desprotegido y libre de pagos. Simplemente debes de tener un poco de paciencia al descargarlos de Internet, ya que se encuentran completos y por lo tanto estamos hablando de varios Megas interminables de descarga. En otras zonas de Internet, encontraras, sin embargo, pequeos Pacths que te permitirn desproteger el mismo Software, si te encuentras rulandouna Demo. Estos parcheadores son simples programas ejecutables, cuya nica tarea consiste en sustituir unas cuantas lneas de cdigo dentro del ejecutable. Estos ltimos son los denominados Cracks de Software y son los que mejor tienen planteada su supervivencia en la red, ya que son programas pequeos, que pueden ser descargados de forma rpida y adems cuentan con un funcionamiento muy sencillo. Tan sencillo como iniciar el programa dentro de la carpeta donde se encuentra la Demo y aceptar. Para los Crackers, esta es una forma de hacer llegar la tecnologa a todo el que la desee probar, al tiempo que se convierte en un reto el desproteger un Software cada da ms protegido. Un Hardware Cracker

Nace antes que el propio Cracker, es decir, aquel que desprotege sistemas informticos como Software. El Hardware Cracker comienzo su andadura desprotegiendo sistemas telefnicos y se gano el acrnimo de Phreaker, pero a da de hoy, las nuevas tecnologas aportan un nuevo reto para estos genios de la electrnica. La televisin digital, los sistemas de anticopiado de vdeo o las tarjetas inteligentes, son los nuevos pasteles para el Cracker. En este caso, el Cracker debe tener unos conocimientos muy elevados de electrnica ya que debe modificar circuitos electrnicos, es decir, Hardware. Por ello el acrnimo de Hardware Cracker . En la actualidad el HardwareCracker tambin est presente en Internet. Si buscas informacin sobre sistemas de televisin de pago, es fcil encontrar en la red paginas llenas de circuitos electrnicos que te permiten desproteger esos canales de pago . En este caso, aunque tambin puedes bajarte dicha informacin a tu ordenador, el realizar el Crack implica tener un poco de conocimientos de electrnica por parte del internauta para poner en marcha el mencionado Crack. Pero aun as, la nueva sociedad parece estar preparada para ponerlos en prctica con pocas dificultades.

Crackers al servicio del gobierno

El Crack realizado para los intereses de un gobierno y de un pas entero, fue el descubrimiento del funcionamiento de la maquina Enigma. Turing capitaneaba a un grupo de Hackers durante la segunda Guerra mundial y los Alemanes posean Enigma. Una maquina de cifrado de mensajes imposibles de entender. En la actualidad el panorama no es muy distinto. Despus de lo que se denomina la Guerra Fra parece encenderse una nueva Guerra Caliente , se trata de Echelon y Carnvoro. Ambos, sistemas de espionaje parapetrados por el gobierno ms poderoso de este planeta. Echelon consta de una flota de satlites y sistemas de interceptacin de ondas electromagnticas y elctricas. Detrs de esto, maquinas Crackeadoras de 6

claves, capaces de comprobar millones de claves por segundo, pero apenas conocen el texto en claro. Para ello esta Carnvoro, un Software empleado por el FBI y quien sabe quien ms capaz de rastrear todos los mensajes que se cruzan por la Red. Eso si, si le dejan instalar el susodicho Carnvoro, en el servidor. ste animal en forma de gran armario repleto de chips y cables, debe de ser instalado conjuntamente con cada servidor de Internet, lo que ha llevado a ciertas incompatibilidades con el Hardware de Carnvoro, menos mal!. Todo esto demuestra simplemente, que al final algunos buenos Crackers se reciclan y prestan sus servicios al Gobierno, o quizs es el gobierno quien les obliga a trabajar para ellos?. La idea final es la misma, crear un ejercito de Crackers para combatir al enemigo, los Crackers !.

Copiando todo, el Crack de los CD Cada ao se estiman unas perdidas de mas millones de dolares en el sector del Software, por culpa de las copias piratas de bajo coste que circulan por la red, por otro lado estas perdidas, llevan como consecuencia, el encarecimiento del producto software, para contrarrestar los gastos de desarrollo del producto, pero lo ms grave del asunto, es que si no se revierten los beneficios del mercado del Software, muchos programadores de elite podran quedarse sin trabajo en breve. Y es que los programadores y la propia creacin de nuevo Software esta en peligro. Con medios no tan elegantes o sofisticados como los que emplean los Crackers, para reventar un ejecutable los piratas informticos son autodidactas que se dedican a duplicar CDs uno tras otro, gracias a la nueva generacin de grabadoras de bajo costo. Estos programas duplicados son normalmente versiones que se registran legalmente para obtener el numero de serie del producto. Numero de serie que ser empleado para todas las copias del programa realizado.

Sin embargo la amenaza no viene siempre desde el duplicado de un CD. Los Crackers, avezados tozudos de la tecnologa logran siempre descompilar los principales ficheros de un programa y leer as todas las lneas de cdigo de programa. La alteracin de algunas de estas lneas permite registrar el programa de evaluacin sin mayor coste que el consiguiente gasto de energa en el tiempo empleado en modificar la lnea de cdigo adecuada. Estos Crackers programan despus pequeos programas denominados Cracks que se deben ejecutar en el directorio donde se encuentra la extensin EXE principal, consiguiendo aadir un pacht en tal fichero, modificando as el registro del programa. Otros menos expertos, descargan versiones Tryout de las WEB Sites oficiales y modifican los datos de la fecha para alargar la vida de las versiones de prueba. Esta ultima opcin de emplear un Software bajo el modo de modificacin de fechas, quizs es el modo menos perseguido, dado, que no se realiza copia del programa si no que se trata de alargar la vida operativa del mismo, hasta que un error lo caduca por completo. Por ello, muchas versiones de evaluacin poseen mayores limitaciones que la simple caducidad de la fecha de evaluacin, aadiendo por ejemplo un nmero de usos limitado a 15 o 5 usos. Versiones electrnicas de registro ESD, mtodo que crea ficheros de registro ocultos y que se ubican en la carpeta REG como mdulos inamovibles tambin impiden la modificacin de fechas, dado que se trata de una subrutina de control de fechas que detecta si esta es retrasada en el tiempo. Ocurrido esto, el programa se bloquea. Sin embargo no todo es oro lo que reluce, dado que la mayora de los programas se pueden desproteger si introduces la llave de desbloqueo del producto, algo bastante fcil para un Cracker, dado que este crea un nuevo miniprograma que obtendr la clave de desbloqueo a partir de, el numero de serie del producto. la obtencin de este numero de desbloqueo viene siempre definido por un tipo de algoritmo fijo .

Tambin existen otras muchas formas de proteger un programa o software, como por ejemplo encriptar ficheros DLL que se ubican en la carpeta Windows/System o emplear llaves electrnicas que deben descifrarse en una llave hardware conectada al puerto paralelo como las empleadas por Hardlook. Las denominadas llaves Bistro o de Hardlook, son unos pequeos conectores habituados al puerto paralelo de nuestro PC, en el cual lleva integrado un chip ASIC de alta seguridad capaz de generar hasta 43.000 algoritmos de cifrado diferentes. Esta pequea placa puede ser modificada o controlada mediante Software para reprogramarse o recuperar ficheros. Para llevar a cabo estas operaciones se requiere de una placa criptoprogramadora de llaves, la cual nos llega con un nico cdigo elegido al azar, esto es, ninguna otra placa criptoprogramadora tendr la misma llave de acceso. Este nuevo mtodo para proteger nuestros datos mediante sistemas basados en Hardware es probablemente uno de los sistemas mas seguros a la hora de proteger nuestro software o ficheros, dado que por citar un ejemplo, tenemos que hemos creado un Software y queremos distribuirlo, pero antes, alguien interesado en nuestro Software nos pide una copia para estudiarlo. Para evitar que esa copia estamos pensando lo peor sea duplicada y falsificada, podemos generar una llave de bloqueo en el arranque del programa, esto es, en el fichero EXE principal. Tras para lo cual se necesitara de la llave hardware, para arrancar el programa. Esta llave la programamos nosotros y la aadimos al producto. Este tipo de defensa nos permite controlar el numero de copias de nuestro Software y supera con creces la proteccin mediante Software como el de registro de ficheros de entrada, el cual puede ser saltado perfectamente congelando la fecha del ordenador. La guinda del pastel, la ofrecera la posibilidad de adaptar estas llaves con un segundo algoritmo temporal para muestras de evaluacin sin necesidad de llave fsica, para evitar el falseamiento de esta, algo casi imposible por tratarse de un ASIC.

Otra de las caractersticas que destacan este tipo de proteccin mediante Hardware, es la posibilidad de direccionar el chip en al menos 30 direcciones aleatorias, esto complica aun ms las cosas, dado que el Hacker debera, para romper el cifrado, adivinar en que registro esta la llave correcta. Por otro lado si un Hacker logra robarnos un fichero importante de nuestro disco duro, este seria inservible sin la llave fsica, nica y que esta en nuestro ordenador, mas concretamente en el puerto paralelo de nuestra maquina. Es pues, este, un sistema altamente seguro de proteccin de software. Todo lo descrito hasta aqu, sencillamente nos muestra como estn las cosas en el mundo del Software de PC, digamos que es una batida continua por ver quien es ms rpido en romper una proteccin. Sin embargo el inters principal de la comunidad Hacker no esta en precisamente romper la fecha de caducidad del programa, mas bien el inters esta en como copiar un CD protegido contra copia. Esto es as, ya que sin ir mas lejos, la Playstation emplea CD como soporte para sus videjuegos. Este mercado tan poderoso y la proliferacin de grabadoras para PC, son la combinacin perfecta para la comunidad Hacker. As que dejando a un lado los mtodos de proteccin de un ejecutable, pasemos a revelar los mejores Cracks de Cds protegidos. Crackers Famosos Algunos de los crackers ms conocidos son:

Fred Cohen en 1984 al sustentar su tesis para un doctorado en Ingeniera Elctrica, en la Universidad del Sur de California, demostr cmo se podan crear virus, motivo por el cual es considerado como el primer autor de virus "auto-declarado". Clasific a los emergentes virus de computadoras en tres categoras: Caballos de Troya, gusanos y Virus informtico.

10

Robert Tappan Morris fue uno de los precursores de los virus y recin graduado en Computer Science en la Universidad de Cornell, en 1988 difundi un virus a travs de ARPANET, (precursora de Internet) logrando infectar 6,000 servidores conectados a la red. La propagacin la realiz desde uno de los terminales del MIT (Instituto Tecnolgico de Massachussets). ARPANET empleaba el UNIX, como sistema operativo. Robert Tappan Morris al ser descubierto, fue enjuiciado y condenado el 4 de Mayo de 1990 a 4 aos de prisin y el pago de US $ 10,000 de multa.

Kevin David Mitnick desde muy nio sinti curiosidad por los sistemas de comunicacin electrnica y fue cultivando un obsesivo deseo por investigar cosas y lograr objetivos aparentemente imposibles, hasta llegar a poseer una genial habilidad para ingresar en servidores sin autorizacin, robar informacin, interceptar telfonos, crear virus, etc. En 1992 el gobierno estadounidense acus a Kevin de haber substrado informacin del FBI y de haber penetrado en computadoras militares, que lo convirti en un smbolo entre la comunidad internacional de crackers, despus de que el FBI lo investigara y persiguiera infructuosamente durante tres aos. Finalmente fue capturado en 1995 en North Carolina y fue condenado a pasar 5 aos en una prisin federal; finalmente sale bajo libertad condicional por un periodo de dos aos, despus de este tiempo inicia con su propia empresa, una consultara orientada a la seguridad informtica y especializada en ingeniera social.

Chen Ing-Hou fue el creador del virus CIH, que lleva sus propias iniciales. Motivo que justific por una venganza en contra de los que llam "incompetentes desarrolladores de software antivirus". Chen IngHou cre su famoso virus en Mayo de 1998, al cual denomin Chernobyl, en conmemoracin del 13 aniversario de la tragedia ocurrida en la planta nuclear rusa. Actualmente trabaja como experto en Internet Data Security.

11

Vladimir Harkonen otros alias, H4rK0n3N y Cibereye Miembro del famoso primer grupo conocido Hispahack, este joven espaol se especializ en diferentes disciplinas como Lurker, Phreaker, Hacker y Cracker. Se le atribuyen ataques en los ltimos 5 aos a diferentes empresas como Sony. Tambin es de mencin decir que tiene preferencia por centros gubernamentales y servidores de operaciones militares. Fue detenido por vez primera en 1998 como integrante de Hispahack pero por entonces no actuaba con ningn Nick conocido, entre los suyos se le define como un tipo escurridizo y para los miembros de la unidad de la guardia civil de delitos telemticos, una persona calculadora y maquinadora, con una mente fra. La ltima vez que fue detenido en Mayo del 2007 la polica llevaba 3 aos siguiendo sus escasas pistas. Una ancdota que cuentan los miembros de la Benemrita es que en todo el tiempo que lo siguieron usaba redes Wifi, que asaltaba con codificaciones de todo tipo adems de la habitual WEP. En la actualidad est pendiente de Juicio y tiene prohibido disponer de cualquier equipo informtico. Resida en una localidad del norte de Madrid. Jos Daniel Navarrete Cordero' Unos de los mas jvenes en el crack. se le estima la edad de 16 a 17 aos de edad, desde muy pequeo tuvo la obsesin de estar infectado las computadoras as como servidores muy pequeos. Aunque su paradero no es muy concreto este joven experto en la computacin, ha hecho varios cambios en la computacin usando un controlador de PC., logro invadir a el servidor de Hotmail por una semana, siendo que los servidores se encontraran bloqueados , Hotmail rastreo inmediatamente su correo electrnico mandndole un mensaje de notificacin que violaba las instituciones marcadas de "Sciency Tecnology" no respondiendo el mensaje Hotmail se vio obligado a utilizar el "firr" programa diseado para restaurar todo el sistema. Siendo as que Hotmail. salio de esos apuros, pero siendo que el joven no ha sido reprendido ni encontrado por la polica por escasas huellas. Solo se

12

tiene encuentra que reside en una parte del Estado de Mxico, ya que no se le encuentra gracias a que cambia de "IP." constantemente y no dejando una huella digital.

HERRAMIENTAS USADAS POR LOS CRACKERS Las herramientas de cracking son los programas y aplicaciones que ayudan al cracker a lograr su fin, aunque estos programas no necesariamente debieron estar diseados para ese fin especfico. Categoras: Desensamblador Un desensamblador es un programa de computacin que traduce desde lenguaje mquina (cdigo binario) al lenguaje de programacin (assembler). El programa desensamblador a utilizar, por trabajar con lenguaje mquina y ensamblador, depende exclusivamente del microprocesador que estamos usando (para que pueda reconocer las instrucciones del cdigo binario), de la arquitectura de la mquina y del sistema operativo en uso (no es lo mismo Windows que Linux).

Qu hace un desensamblador? El desensamblador transforma el cdigo binario en instrucciones bsicas de la PC en la que se ejecuta, el programa no es capaz de distinguir si dichas instrucciones provienen de un if, de un for o de un while. Tampoco conoce los nombres de las variables (no se incluyen en el cdigo binario ya que la mquina no usa nombres), as que suele inventar nombres como VAR_0001, VAR_0002, etc.

13

En cuanto a las funciones, algo parecido pasa con las funciones internas del programa, se suelen llamar CALL_0001 o JMP_0001, o algo por el estilo, dependiendo de si son direcciones de llamadas con o sin retorno, respectivamente. Las funciones externas son dependientes segn el sistema en el que se corra el programa a desensamblar: Bajo sistemas como DOS, la mayora de las veces puede indicar las funciones que se llaman (llamar a una funcin requiere tpicamente un llamado a interrupcin con valores especficos en los registros, que deben ser consultados si no son provistos por el programa desensamblador). Por ejemplo, para imprimir un texto en pantalla: mov ax, 0009 mov dx, offset TEXTO int 21h En cambio bajo sistemas operativos modernos como Windows, las funciones se llaman por nombres, y esto suele ser bastante autoexplicativo. Esto resulta cierto para la mayora de las funciones provistas por el sistema operativo y llamados externos en las DLLs. Por ejemplo, las funciones CreateFile o ReadFile.

Uso de los desensambladores Hoy en da los desensambladores tienen un uso principal: crackear programas); aunque son tambin herramienta de desarrolladores de software, investigadores, estudiantes. Otro de los usos en los que resulta fundamental tener un desensamblador es en la ingeniera inversa. Debido a cuestiones obvias de licenciamiento de programas, los desensambladores son mucho ms habituales en sistemas Windows que en sistemas Linux.

14

Ensamblador El trmino ensamblador (del ingls assembler) se refiere a un tipo de programa informtico que se encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto que contiene cdigo mquina, ejecutable directamente por la mquina para la que se ha generado. El propsito para el que se crearon este tipo de aplicaciones es la de facilitar la escritura de programas, ya que escribir directamente en cdigo binario, que es el nico cdigo entendible por la computadora, es en la prctica imposible. La evolucin de los lenguajes de programacin a partir del lenguaje ensamblador origin tambin la evolucin de este programa ensamblador hacia lo que se conoce como programa compilador. Funcionamiento El programa lee el fichero escrito en lenguaje ensamblador y sustituye cada uno de los cdigos nemotcnicos que aparecen por su cdigo de operacin correspondiente en sistema binario para la plataforma que se eligi como destino en las opciones especficas del ensamblador. Tipos de ensambladores Podemos distinguir entre tres tipos de ensambladores: Ensambladores bsicos. Son de muy bajo nivel, y su tarea consiste bsicamente en ofrecer nombres simblicos a las distintas instrucciones, parmetros y cosas tales como los modos de direccionamiento. Adems, reconoce una serie de directivas (o meta instrucciones) que indican ciertos parmetros de funcionamiento del ensamblador.

Ensambladores modulares, o macro ensambladores. Descendientes de los ensambladores bsicos, fueron muy populares en las dcadas de los 50 y los 60, antes de la generalizacin de los lenguajes de alto nivel. Hacen todo lo que puede hacer un ensamblador, y adems proporcionan

15

una serie de directivas para definir e invocar macroinstrucciones (o simplemente, macros). Ensambladores ensambladores modulares 32-bits o de alto nivel. Son

que aparecieron como respuesta a una nueva

arquitectura de procesadores de 32 bits, muchos de ellos teniendo compatibilidad hacia atrs pudiendo trabajar con programas con estructuras de 16 bits. Adems de realizar la misma tarea que los anteriores, permitiendo tambin el uso de macros, permiten utilizar estructuras de programacin ms complejas propias de los lenguajes de alto nivel DEPURADOR (DEBUGGER)

Un depurador (en ingls, debugger), es un programa que permite depurar o limpiar los errores otro programa informtico.

Uso Al iniciarse la depuracin, el depurador lanza el programa a depurar. ste se ejecuta normalmente hasta que el depurador detiene su ejecucin, permitiendo al usuario examinar la situacin. El depurador permite detener el programa en:

Un punto determinado mediante un punto de ruptura. Un punto determinado bajo ciertas condiciones mediante un punto de ruptura condicional. Un momento determinado cuando se cumplan ciertas condiciones. Un momento determinado a peticin del usuario.

Durante esa interrupcin, el usuario puede:

16

Examinar y modificar la memoria y las variables del programa. Examinar el contenido de los registros del procesador. Examinar la pila de llamadas que han desembocado en la situacin actual. Cambiar el punto de ejecucin, de manera que el programa contine su ejecucin en un punto diferente al punto en el que fue detenido. Ejecutar instruccin a instruccin. Ejecutar partes determinadas del cdigo, como el interior de una funcin, o el resto de cdigo antes de salir de una funcin.

El depurador depende de la arquitectura y sistema en el que se ejecute, por lo que sus funcionalidades cambian de un sistema a otro. Aqu se han mostrado las ms comunes.

Informacin de depuracin Para poder aprovechar todas las posibilidades de depuracin es necesario que, al compilar el programa a depurar, se indique al compilador que debe incluir instrucciones e informacin extra para la depuracin del cdigo. Dicha informacin extra consiste bsicamente en la correspondencia entre las instrucciones del cdigo ejecutable y las instrucciones del cdigo fuente que las originan, as como informacin sobre nombres de variables y funciones. An si no se incluye esta informacin de depuracin, sigue siendo posible monitorizar la ejecucin del programa. Sin embargo, resultar ms difcil y compleja debido a esa falta de informacin del contexto en el que se ejecuta el programa. Otros usos Un depurador tambin puede usarse para realizar ingeniera inversa o evitar protecciones de copia. Mediante el uso del depurador se puede conocer el

17

funcionamiento interno del programa examinado, ayudando al proceso de ingeniera inversa o permitiendo desarrollar tcnicas para evadir las restricciones impuestas por el programa. Efectos secundarios Es importante notar que un programa que est siendo depurado puede presentar un comportamiento diferente a si se ejecuta en solitario debido a que el depurador cambia ligeramente los tiempos internos del programa. Estos cambios en los tiempos de ejecucin afectan especialmente a sistemas complejos multihebra o sistemas distribuidos. Ejemplos de depuradores

GNU Debugger (gdb) SoftICE OllyDbg Trw2000 Ida Pro

EDITOR HEXADECIMAL

Un editor hexadecimal (o editor de archivos binarios) es un tipo de programa de ordenador que permite a un usuario modificar archivos binarios. Los editores hexadecimales fueron diseados para editar sectores de datos de disquetes o discos duros por lo que a veces se llaman "editores de sectores".

18

Utilizando un editor hexadecimal un usuario puede ver o puede redactar el contenido intacto y exacto de un archivo al contrario que con la interpretacin del mismo contenido que otro, de nivel ms alto software de aplicaciones puede asociar por la extensin de archivo. Por ejemplo, los datos intactos de la imagen (los raws), y la manera de interpretar el mismo archivo del software de edicin de imgenes. En la mayora de los editores hexadecimales los datos del archivo son representados como valores hexadecimales agrupados en dos grupos de 8 bytes y un grupo de 16 caracteres ASCII, los caracteres no reconocidos son representados normalmente por un punto "." en ASCII.

El estndar comando Unix shell es usado para mostrar (aunque no editar) un archivo en hexadecimal y octal.

COMPILADOR Un compilador es un programa informtico que traduce un programa escrito en un lenguaje de programacin a otro lenguaje de programacin, generando un programa equivalente que la mquina ser capaz de interpretar. Usualmente el segundo lenguaje es cdigo mquina, pero tambin puede ser simplemente texto. Este proceso de traduccin se conoce como compilacin. Un compilador es un programa que permite traducir el cdigo fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje mquina). De esta manera un programador puede disear un programa en un lenguaje mucho ms cercano a como piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora Partes de un compilador Normalmente los compiladores estn divididos en dos partes:

19

Front End: es la parte que analiza el cdigo fuente, comprueba su validez, genera el rbol de derivacin y rellena los valores de la tabla de smbolos. Esta parte suele ser independiente de la plataforma o sistema para el cual se vaya a compilar.

Back End: es la parte que genera el cdigo mquina, especfico de una plataforma, a partir de los resultados de la fase de anlisis, realizada por el Front End.

Esta divisin permite que el mismo Back End se utilice para generar el cdigo mquina de varios lenguajes de programacin distintos y que el mismo Front End que sirve para analizar el cdigo fuente de un lenguaje de programacin concreto sirva para generar cdigo mquina en varias plataformas distintas. El cdigo que genera el Back End normalmente no se puede ejecutar directamente, sino que necesita ser enlazado por un programa enlazador (linker)

Tipos de compiladores Esta taxonoma de los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categoras:

Compiladores cruzados: generan cdigo para un sistema distinto del que estn funcionando. Compiladores optimizadores: realizan cambios en el cdigo para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.

20

Compiladores de una sola pasada: generan el cdigo mquina a partir de una nica lectura del cdigo fuente. Compiladores de varias pasadas: necesitan leer el cdigo fuente varias veces antes de poder producir el cdigo mquina. Compiladores JIT (Just In Time): forman parte de un intrprete y compilan partes del cdigo segn se necesitan.

Pauta de creacin de un compilador: En las primeras pocas de la informtica, el software de los compiladores era considerado como uno de los ms complejos existentes. Los primeros compiladores se realizaron programndolos directamente en lenguaje mquina o en ensamblador. Una vez que se dispone de un compilador, se pueden escribir nuevas versiones del compilador (u otros compiladores distintos) en el lenguaje que compila ese compilador. Actualmente existen herramientas que facilitan la tarea de escribir

compiladores intrpretes informticos. Estas herramientas permiten generar el esqueleto del analizador sintctico a partir de una definicin formal del lenguaje de partida, especificada normalmente mediante una gramtica formal y barata, dejando nicamente al programador del compilador la tarea de programar las acciones semnticas asociadas.si el fortran

1) Qu necesitamos? Para esto de la Ingeniera Inversa se necesitan fundamentalmente las siguientes cosas: 1) Si quieren hacerse las cosas ms fciles para empezar, algn conocimiento de ensamblador, ste es un lenguaje de programacin de bajo nivel. Cuanto ms sepan mejor y ms rpido crackearn (para empezar, les recomiendo que lean el tutorial de Pr@fEsOr X sobre ensamblador que est muy bueno) 2)Cuando se llega a cierto nivel, a veces la ayuda de otro/s cracker/s ms experto/s

21

3)Ganas de aprender. No es leer los tutoriales sin entender nada y hacer los cracks sin saber lo que hicimos, es estudiar y comprender el funcionamiento del programa. 4)Herramientas 1) Depurador o debugger: es un programa que permite detenerte en cada paso que realizan otros programas, creo que no expliqu bien. Un programa no es ms que un conjunto de instrucciones, haz esto, haz lo otro. Entonces cuando se est ejecutando un programa y lo "depuras", por ejemplo hay una instruccin que dice: Muestra un cartel con las letras de color verde, te detienes en esa instruccin para poder cambiarla, parchearla, etc (el depurador te muestra todo en lenguaje ensamblador). El depurador ms famoso que usan casi todos los crackers es el Soft Ice (de ahora en adelante le llamaremos SICE) y se pueden hacer cosas que ni siquiera te has imaginado con l. Otros depuradores: tr (ahora est el TRW2000 que est bastante bueno), SICE (que lo utilizan casi todos los crackers), Debug( lo tienen todas las PC, slo abre el DOS, escribe Debug aprieta enter y ya ests en el, no lo recomiendo). 2) Desensamblador o dissasembler: este programa convierte el ejecutable de otros programas hechos en otros lenguajes a lenguaje ensamblador. A diferencia del depurador no lo hace cuando el programa se est ejecutando, si no que cuando nosotros queramos (nosotros abrimos el ejecutable con el desensamblador y estudiamos el cdigo todo el tiempo que queramos, a esto se le llama listado muerto). Desensambladores: IDA pro (DOS 32 bits), W32Dasm(el que la mayora usa y mi preferido), Sourcer 7, y muchos ms. 3) Editor Hexadecimal: es un programa que te permite editar archivos de forma hexadecimal y as cambiar bytes en l, les ensear a convertir de decimal a hexadecimal y binario. Editores hexadecimales: Hacker's View (DOS 32 bits), Ultraedit, y Hex Workshop, mi preferido. Creo que esto es todo ya que pienso que al principio no necesitarn herramientas como el Frogs Ice(programa que se usa con los ejecutables que tienen mtodos de detectar cuando el SICE est corriendo, y se usa para "esconderlo". Estas herramientas las pueden encontrar en la pgina de http://www.crackstore.com/, http://w3.to/protools, y si falta alguna fjate en otros tutoriales o en las pginas de TNT cracking team, kUT, Wkt, en la de karpoff, por supuesto en la de mi nuevo grupo, K-FoR y otras que hay millones de links.

22

3) Crackear y los sistemas numricos Supongo que ya tienen todo, si lo tienen comencemos lo terico de verdad. Por favor lean algo sobre ensamblador, es verdad, al principio todos estamos ansiosos de empezar a crackear ahora mismo y sin saber absolutamente nada ensamblador ni de ninguna de las herramientas pero lamentablemente eso no es posible:-( .Hay que tener paciencia para llegar a ser un buen cracker. Qu es crackear? Crackear, o Ingeniera Inversa (Reverse Engineering, como dicen los ingleses) se basa en reventar protecciones de software o hardware con fines intelectuales, personales, u otros, pero nunca lucrativos. De esta manera, el programa que estemos crackeando funcionar para lo que nosotros queramos y no para lo que fue diseado. Para qu crackear? La sociedad en que vivimos da asco. Hay una enorme discriminacin social. En esta sociedad la mayora de la poblacin est sometida al control de los que tienen dinero. El Cracking, es una forma de distribuir la riqueza entre la poblacin. Si ves un programa en Internet que te gusta y no tienes una cuenta un un banco internacional ni nada de ello, para que esperar para tenerlo, crackalo y publica el crack en Internet y estars ayudando a mucha gente que vive a merced de los que son "importantes"(o sea, tienen cuentas en bancos internacionales, mucho dinero, etc). Por supuesto que el Cracking tambin es para los programadores. As podremos ensearles que sus programas no son perfectos y tienen muchos errores tontos que podran corregirlos. Y tambin ensearles a no ser perezosos y crear buenas protecciones. Empezaremos por aprender lo que es un sistema numrico. Nosotros contamos el el sistema numrico de base decimal (la base de este sistema es el nmero 10). Esto quiere decir que el primer nmero formado por ms de una cifra (0 1 2 3 4 5 6 7 8 9 10)de este sistema es el 10. Pero para las computadoras, este sistema no es conveniente, ya que la informacin se maneja codificada en forma de bits verdaderos y falsos 1=verdadero 0=falso. Esto lleva a la utilizacin de dos sistemas en la informtica, binario (de base dos) y hexadecimal (de base diecisis). Convertir nmeros de binarios a decimales: En ensamblador nos encontramos con la necesidad de convertir nmeros de binarios utilizados por la PC, a decimales que son los que nosotros entendemos. Mira la siguiente tabla y puedes ir guindote:

23

Decimal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Binario 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111

Como se muestra en la tabla 1+1 en binario=10. Esto es muy fcil, ya vers. Los nmeros de binarios a decimales se pasan as: Binario: 11011 Decimal:

+ 8

16

todo esto = 27 en decimal Nota: Hice este dibujo para que se entendiera mejor. En realidad, en la computacin, el carcter ^ se utiliza para potenciar y el carcter *se utiliza para multiplicar. Supongo que todos entienden ese dibujo. Si lo miran bien, vern que los nmeros que estn resaltados en azul, forman el nmero binario. Convertir nmeros de decimales a binarios: Hay varias formas de hacerlo pero esta es la ms fcil: Ejemplo, el nmero 25 en decimal. 25/2 =12 y el resto es 1

24

12/2 = 6 y el resto es 0 6/2 = 3 y el resto es 0 3/2 = 1 y el resto es 1 1/2 = 0 y el resto es 1 Despus tomamos el nmero de abajo hacia arriba y tenemos el nmero en binario 11001.

Nmeros hexadecimales: Puedes ir guindote con la siguiente tabla: Decimal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Hexadecimal 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 1A

Como ven en esta tabla, en el sistema hexadecimal los nmeros que estn formados por nmeros de una sola cifra son: 0 1 2 3 4 5 6 7 8 9 A B C D

25

E F. Es exactamente igual que contar en decimal pero nada ms que el 9 sera el 16 (no s si entienden). Para convertir de nmeros hexadecimales a binarios se debe agrupar en grupos de cuatro bits empezando de derecha a izquierda. Despus, en el ltimo grupo, se rellenan los espacios en blanco con ceros. Tomaremos como ejemplo el nmero binario 1101011 separamos en grupos de 4 bits, 110 1011 rellenamos los espacios con ceros, 0110 1011 Despus tomamos cada grupo y lo transformamos a base 10(pueden fijarse en la tabla) 0110= 6 1011= 11 Pero como 611 no es correcto en el sistema hexadecimal sustituimos el 11 por su valor correspondiente en hexadecimal y obtenemos 6Bh (la h se pone para indicar que el nmero est en el sistema hexadecimal) Para convertir un nmero de hexadecimal a binario solo es necesario invertir estos pasos. SUPONGO que alguna vez tuvieron una clase de matemticas y saben sumar, restar y potenciar, no, era un chiste:-) ya que si no saben, estn muertos (y les sugiero que tomen clases de matemticas)

4) Muy bsico sobre ensamblador Si ya leyeron algo sobre ensamblador, supongo que ya saben esto, pero lo escribo para los que son vagos y no se quisieron molestar en dejar este tutorial y leer otro para luego volver a este. El ensamblador o ASM es un lenguaje de programacin de bajo nivel. Esto quiere decir que, a diferencia de C o C++ (lenguajes de alto nivel), mientras ms programemos o ms programa creemos, menos control tendremos sobre ste. Este lenguaje les va a ayudar mucho ya que es fcil de aprender y necesitan saber de ensamblador para saber crackear. Registros

26

Empezaremos por aprender (los que no leyeron sobre assembler) que son los registros. AX, BX, CX, DX (no son slo estos, hay ms pero por ahora pienso que es suficiente). Estas "palabras" son registros de datos. stos contienen clculos y otras cosas que necesita un programa para ejecutarse. Es como que guardan datos temporalmente en la memoria. Los registros de 16 bits son estos (AX, BX, CX y DX) pero si trabajamos en 32 bits, o sea Windows 95, se les agrega una E delante entonces los registros de 32 bits seran as: EAX, EBX, ECX, EDX... Si ven algo como AL y AH, no se preocupen, es que los registros se separan (BX se separa BL y BH...) Cada registro tiene un valor que se le asigna y se le modifica con algunas instrucciones en ensamblador. Aqu tienen los principales saltos condicionales e incondicionales del ensamblador: Hexadecimal: 75 o 0F85 74 o 0F84 EB 90 77 o 0F87 0F86 0F83 0F82 0F82 0F83 0F86 0F87 0F8F 0F8E 0F8D 0F8C 0F8C 0F8D 0F8E 0F8F ASM: jne Je jmp nop Ja jna jae jnae Jb jnb jbe jnbe Jg jng jge jnge Jl jnl jle jnle Significa: salta si no es igual salta si es igual salta directamente a..... ningn funcionamiento (No OPeration) salta si es superior salta si no superior salta si es superior o igual salta si no est sobre o igual salta si est debajo salta si no est debajo salta si est debajo o igual salta si no est debajo o igual salta si es mayor salta si no es mayor salta si es mayor o igual salta si no es mayor o igual salta si es menor salta si no es menor saltan si es menor o igual saltan si no es menor o igual

Cuando vean algn cmp por ejemplo cmp eax, ebx, quiere decir que compara, cmp proviene de "comparar". Compara el valor de los registros para luego haber un salto condicional o incondicional como 75 o 0F84 (condicionales) o un EB (incondicional). Veamos un poco de esto en un ejecutable cualquiera de mi computadora: 27

:00402BB1 6A28 push 00000028<-----Mete 28 en la pila :00402BB3 50 push eax<----------Mete EAX en la pila. :00402BB4 8BCD mov ecx, ebp<------EBP y ECX ahora valen lo mismo :00402BB6 FF523C call 00436E04<-----Llama a la instruccin ubicada en la direccin 0 :00402BB9 83F828 cmp eax, 00000057<-Compara el valor de EAX con 28, en ASCII, la :00402BBC 0F8593010000 jne 00402D55<------Si no son equivalentes nos vamos a la dire :00402BC2 8B442440 mov eax, dword ptr [esp+40]<----Son iguales, continuamos con es :00402BC6 83F828 cmp eax, 00000061<--Compara EAX con 61, en ASCII la a. (Nota importante: en Cracking desde cero para sper newbies 2 hablaremos de la pila y del cdigo ASCII).Antes de ver un salto condicional o incondicional, vern alguna instruccin que diga cmp xx-xx o test-xx-xx (dnde xx es un registro), ests instrucciones provienen de comparar los valores de los registros para determinar un posterior salto condicional o incondicional.

5) Familiarizndonos con las herramientas Para crackear bien y ms rpido, es necesario familiarizarse con las herramientas. As aprenderemos a utilizarlas bien. Si bajaste un trial que expira dentro de un da y tu no has aprendido a usar bien esa herramienta, tmate tu tiempo, la crackeas, y podrs usarla todo el tiempo necesario. Pero cuando la sepas utilizar la compras, ya que habamos dicho que el Cracking nunca se practicaba con fines lucrativos. W32Dasm: W32Dasm es un desensamblador, o sea, convierte el cdigo de un programa hecho en otros lenguajes como C, C++, Delphi, Visual Basic, Pascal, etc, al lenguaje de ensamblador. Editor hexadecimal: el Hex Workshop y el ultraedit son muy fciles de usar y no necesitarn leer ningn tutorial para aprender a usarlos (y que yo sepa no hay ninguno). El Hacker's View (HIEW) es ms complicado ya que es de DOS y hay una cantidad de teclas para memorizarse, F1, F2, F7....y muchas ms. Recomiendo que si eligieron el HIEW, se lean algn tutorial sobre l. Mi preferido es el Hex Workshop pero es mi preferido y eso no quiere decir que los est obligando a tener Hex Workshop, encuentren el editor hexadecimal que ms les guste. Soft Ice: este programa si es muy difcil llegar a conocerlo todo. No podrn hacer absolutamente nada si no leyeron algn tutorial sobre l. Hganme caso, yo al principio odiaba al SICE, con esa estpida ventanita de DOS, pero ahora que aprend a usarlo, me parece que es una maravilla. Cuando lo instales el SICE (o Soft Ice, como le quieran llamar) debers pasar por las siguientes configuraciones: 1) Nmero de serie: si bajan el SICE y viene en un zip, posiblemente venga con un archivo en formato txt llamado sn, ah estar nuestro nmero de serie. 28

Si no viene con un archivo llamado sn, puede venir con un archivo, llamado lame, leer o sino un archivo nfo tambin puede estar el serial en estos archivos. 2) Tarjeta de video: el SICE detectar tu tarjeta de video cuando oprimas el botn test. Como en mi caso (no detect mi Diamond Viper 770), si no es as, selecciona la tarjeta Standar Display Adapter VGA. 3) Mouse: en mi caso, cuando instal el SICE por primera vez, mova el mouse y no me andaba, si no que me aparecan en la parte de arriba los carteles que dicen copy, paste, copy&paste, display, un-assemble, what y previous. Lo peor era que no se poda seleccionar nada en los carteles, hacan como intermitencia cada vez que mova el mouse. Si esto les pasa, en la instalacin, pongan cmo que estn usando Microsoft Intelli Mouse y a ver si les anda. 4) Modificacin de tu AUTOEXEC.BAT: si no sabes lo que es el AUTOEXEC.BAT puedes mandarme un mail y te lo dir. Cuando instalas el SICE, te dan la opcin de crear un autoexec.ice, modificar tu AUTOEXEC.BAT o no hacer ningn cambio. Te recomiendo que no elijas la opcin de no hacer ningn cambio si quieres que el SICE funcione:-) Ahora si, de verdad, te recomiendo que dejes que el programa de instalacin modifique tu AUTOEXEC.BAT por que si no cada vez que quieras ejecutar el SICE tendrs que salir a DOS y cargar el archivo que el programa de instalacin cre (en este caso autoexec.ice). La otra cosa que puedes hacer es crear un bat pero cada vez que quieras ejecutar SICE tendrs que salir a DOS para cargar tu bat. Como ustedes son newbies, no creo que sepan lo que son los bats, como se crea uno, configurarlos, ni nada de eso, as que mi direccin de coreo electrnico est abierta para preguntas y sugerencias, cualquier cosa mndenme un mail a dek_oin@hotmail.com . 5)Cuando est instalado lanzar Symbol Loader: debers lanzar el "symbol loader", ir al men edit, luego a SoftICE initialization settings. en donde dice "Initialization string" debes poner X;wl;wr;wd7; code on;, y en donde dice "History Buffer size (KB)" debes poner 512. 6)Modificacin de winice.dat: con cualquier editor de texto debes abrir el archivo "Winice.dat". Vers que hay unas cosas que dicen ms o menos as, ;EXP= , en todos los ;EXP=, debers quitarle el ; que est delante para que quede EXP=. Si no entiendes bien o piensas que ests haciendo todo mal, mndame un mail que te doy el Winice.dat ya modificado. 7) Deben reiniciar el equipo para obtener una actualizacin completa de los cambios. Recomiendo que si no leyeron nada sobre el SICE y lo tienen instalado y configurado nunca presionen ctrl+d ya que con estas teclas se abre el SICE. Les digo esto para que no les pase lo que me pasaba a mi, que estaba escribiendo rpido, iba a poner una d mayscula y al apretar shift el dedo se me corra y apretaba ctrl. Despus tena que reiniciar el equipo porque no saba

29

cmo salir del SICE (se sale con ctrl+d, como se entra) y as se me perdan los trabajos que estaba haciendo!!!:-(. No hablo ms porque no quiero acordarme!!!

6) Nuestro primer crack Por fin!!!!. Si nunca hicieron un crack y este es el primero, felicitaciones, podran convertirse en la nueva generacin de crackers si ponen ganas y empeo. Detalles del programa vctima: Vctima: URL: Descripcin: Tamao del ejecutable: Tipo de Proteccin: Mtodo de ataque Objetivo Dificultad Herramientas Toggle Disk Space v 2.0 www.toggle.com Optimizar el rendimiento del disco duro 805 kb. Nmero de serie Desensamblar y parchear Simular estar registrados Newbie - Aficionado - Avanzado - Experto - lite W32Dasm y editor hexadecimal

El programa vctima, tena que ser uno de los programas de Toggle (firma que pone a nuestra disposicin muchos productos de shareware para bajar gratis y para registrarnos antes de 30 das porque si no el programa deja de funcionar, estos programas son facilsimos de crackear!!!). Recuerden que crackeamos solo para extender el perodo de prueba de un programa y para observar al mximo sus capacidades, reitero, nunca se crackea con fines lucrativos, si te gusta el programa CMPRALO!!!. El Toggle Disk Space es un programa que nos permite ver como est funcionando el disco duro y corregir errores en l. Si no estamos registrados, tenemos algunas limitaciones, como por ejemplo, no podemos usar la opcin de speed, etc. Lo que ms odio son esas estpidas nag-screens que aparecen cuando abrimos el ejecutable, pidindonos que nos registremos y dndonos opciones. El Toggle Disk Space caduca despus de 30 das de concurrida la instalacin si no nos registramos. Esta proteccin es fcil. Pero no tan fcil como otras. Si quieren aprender a hacer las cosas no hagan todo a merced de lo que dice esto. Prstenle atencin a las explicaciones y tambin razonen por ustedes mismos (es decir, pienso que si esto pasa lo otro tendra que pasar, etc). Muy bien, empezaremos con nuestro programilla. Ejecutmoslo y veamos que aparece una nag screen que nos da opciones para lo que queremos hacer. La nag:

30

Hmm, esa nag no me gusta para nada. Hagan clic en "Enter your registration code, hagan clic en next y aparecer algo as:

Pongan un nombre cualquiera como por ejemplo deK_Oin en donde dice company pueden no poner nada ya que dice que es opcional y luego escriban un serial como 1234567890. Hagan clic en next y...

Nooooo!!!!!!!!!!. Parece que nuestro serial 1234567890 no funcion. Les gusta la nag y el cartel que dice que nuestro serial no es el correcto?. Pues a mi no as que vamos a eliminar todo eso.

31

Comencemos: Ejecutemos el W32Dasm, vayamos al men Dissasembler\Open file to Dissasemble y abran el ejecutable toggleDISKSPACE.exe. Primero miren este esquema para saber para que sirven los botones de W32Dasm:

Ven el botn que est al lado de imprimir, si, el que dice referencias de cadenas, hagan clic en el. Este nos mostrar muchas cosas. Recuerdan el mensaje que nos deca que no habamos introducido un serial correcto, era "The registration information that you have entered is not valid. Please comfirm that you have entered the infomation correctly" Bueno, busquemos este mensaje en las referencias de cadenas (o String References) y.... aha!! aqu est, casi al final.

Haz doble clic en l para ver cuantas referencias hay sobre l pero solo hay una. Ho te preocupes por si el mensaje no est completo, es lo mismo. 32

Cuando hagas doble clic en l, el W32Dasm nos llevar a un lugar del cdigo as:

:004028C9 8BCD :004028CB E820F9FFFF :004028D0 EB0E

mov ecx, ebp call 004021F0 jmp 004028E0

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses: |:004025DF(C), :00402622(C), :00402855(C) | :004028D2 6A00 push 00000000 :004028D4 6A00 push 00000000 * Possible StringData Ref from Data Obj ->"The registration information you " ->"have entered is not valid. Please " ->"confirm that you have entered " ->"the information correctly." :004028D6 685C714500 push 0045715C

Si ven un poco ms arriba de "The registration...", vern que hay un texto que nos dice que el mensaje de error fue llamado por 3 saltos condicionales o incondicionales ubicados en las direcciones 004025DF, 00402622, y 00402855. Razonen... si el mensaje de error fue llamado desde 3 saltos que se ubican en 3 diferentes direcciones, que pasara si los noperamos (con 90 que significa sin operacin) para que el programa no ejecute ninguno de esos saltos (son los que indican que el serial que introducimos es errneo) cuando escribimos nuestro serial y pulsamos en aceptar?. Muy bien!!!! (supongo que ya pensaste y que pensaste la respuesta correcta) el programa nos aceptar cualquier serial. Para parchear los 3 saltos hagan lo siguiente: Hagan clic en el men Goto\go to code location y escriban la direccin del salto. Empezaremos con el primes salto 004025DF, haz clic en OK. Aqu est, hmm salto condicional, :004025D8 85C0 test eax, eax :004025DA 0F94C1 sete cl :004025DD 84C9 test cl, cl :004025DF 0F85ED020000 jne 004028D2 * Possible StringData Ref from Data Obj ->"26893278" | :004025E5 BE38724500 mov esi, 00457238

33

Cambimoslo por 909090909090 para que el programa no haga nada con el serial que metemos, solo llevarnos al preciado mensaje de "GRACIAS POR REGISTRARSE". Si se fijan bien en la parte inferior de la pantalla vern una cosa as:

Ven donde dice Offset. El offset es la direccin real de memoria y lo que introduciremos en el editor hexadecimal. NO DEBES PONER LOS CEROS, SON PARA QUE LOS ENTIENDA EL DESENSAMBLADOR, NI LA h QUE SIGNIFICA QUE EST EN HEXADECIMAL. Abre el Hex Workshop (yo explicar todo como si estuvieras usando el Hex Workshop ya que ese es el que yo uso) haz clic en file\open y abre el ejecutable toggleDISKSPACE.exe. Luego haz clic en edit\goto y escribe la direccin del offset, o sea 19DF. Ah vers el salto condicional que habamos visto en el W32Dasm 0F85ED020000 y lo cambiaremos por 909090909090. Slo sita al cursor entremedio de la primera cifra y la anterior a sta y escribe los 90. No cierres el Hex Workshop!!!, recuerda que hay 3 saltos que parchear y este es solo el primero. Vuelve al W32Dasm busca de nuevo el mensaje "The registration information...." y haz doble clic en l. Estamos en el mismo lugar que antes. Solo mira un poco ms arriba del mensaje de error y observa:

:004028C9 8BCD :004028CB E820F9FFFF :004028D0 EB0E

mov ecx, ebp call 004021F0 jmp 004028E0

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses: |:004025DF(C), :00402622(C), :00402855(C) | :004028D2 6A00 push 00000000 :004028D4 6A00 push 00000000 * Possible StringData Ref from Data Obj ->"The registration information you " ->"have entered is not valid. Please " ->"confirm that you have entered " ->"the information correctly." :004028D6 685C714500 push 0045715C

Ese es el segundo salto que tendremos que parchear. Haz igual que el primero, edit\goto 00402622 a ver... otro salto condicional. Mira el offset, e insrtalo en el hex workshop y cambia el salto por 90909090...

34

Vuelve al W32Dasm. Solo nos queda un salto por parchear. Edit\goto 00402855(direccin del tercer salto). Otro salto condicional. Insertemos el offset en el hex workshop y cambiemos el salto por 9090 (el salto es 757B). Guarda los cambios desde el Hex Workshop y ejecuta toggleDISKSPACE.exe. Todo normal, como antes, selecciona la opcin de "enter registration code" y escribe un nombre como deK_Oin en company puedes no poner nada y en Reg. code puedes poner cualquier cosa. Probemos ....cha cha cha channnnn.........

Felicidades!!!!!!!!!!!!!!!!!!!!!!! Has hecho tu primer crack. Todos esperamos que no sea el ltimo. Cuando crackeen algo despus de hacerlo, escriban un tutorial, ya que los conocimientos hay que compartirlos si no se te pudren en la cabeza!!!. Si hay algo que odio, son las faltas de ortografa (palabra grave terminada en vocal:-). Si notan alguna, por favor contctenme a mi mail (dek_oin@hotmail.com) . Espero que este tutorial les haya sido de ayuda para todos aquellos newbies que lo leyeron. Pueden mandarme mails con preguntas o sugerencias. ESTOY BUSCANDO PROGRAMAS CON PROTECCIONES INTERESANTES. SI HAY ALGUNO QUE NO PUEDAN CRACKEAR CUANDO SU NIVEL SEA UN POCO MAYOR, MNDENME UN MAIL Y POSIBLEMENTE ESCRIBA UN TUTORIAL.

35

36

Das könnte Ihnen auch gefallen