Ingeniería Inversa de Software - Una Introducción al Salvaje Mundo del CrackingIngeniería Inversa de Software - Una Introducción al Salvaje Mundo del Cracking Copyright (c) 1998 Volatility Documento por cortesía de The Immortal Descendants - http://www.immortaldescendants.org Mi intención en este documento, es proporcionar al newbie absoluto de alguna guía y antecedentes, para que puedan empezar una "carrera" exitosa en el Cracking. -------------------------------------------------------------------------------- ¿Qué es exactamente la Ingeniería Inversa (Cracking)? -------------------------------------------------------------------------------- El Cracking es un método para hacer que un programa de software funcione para una cosa distinta de la proyectada originalmente por medio de investigar el código, y, si necesario, parcheandolo. ¡Los diferentes tipos de Cracking son/pueden ser casi ilimitados! Quizá quieras quitar una molesta nag screen. Quizá quieras AGREGAR una funcionalidad que se suponía que no había. Quizá tú solamente quieres encontrar un código de registro correcto. Quizá quieres hacer al programa ACEPTAR CUALQUIER código de registro. -------------------------------------------------------------------------------- ¿Por qué Crackear? -------------------------------------------------------------------------------- Hay muchas razones y motivaciones acerca de por qué las personas invierten el software. Tristemente, una de las tendencias más comunes es que así la persona puede obtener todo el software gratis que él quiera. Mi consejo para ti - no permitas que esto se haga tu motivación. Hay muchas más razones para crackear, eso te dará MUCHA más satisfacción. Personalmente (y espero que sientas de la misma manera), me gusta crackear simplemente por el conocimiento y la satisfacción. ¡De hecho, después de que yo crackeo un programa, lo desecho! ¡No hay NADA más premiando que ver saltar caja de dialogo diciendo "¡gracias por registrarte!" después de trabajar como un esclavo encima de un pedazo de código, buscando desviar ese "salto" o "push" final durante horas. Yo crackeo además por mi propio conocimiento, y además escribo ensayos sobre mis conclusiones para ayudar al conocimiento de otros. Los conocimientos que el Cracking puede proporcionarte son casi ilimitados. ¿Cómo mejor puedes aprender cómo trabaja un programa, y COMO programar, que invirtiéndolo? -------------------------------------------------------------------------------- ¿Cómo aprendo yo? -------------------------------------------------------------------------------- Mi consejo sería conseguir en tus manos TODOS los tutoriales, ensayos, artículos, y nada más que tratar de crackear lo que puedas. Hay MUCHOS tutoriales EXCELENTES ahí fuera, y bastante sorprendentemente, muchos ellos están apuntados a los newbies y principiantes. Yo no estoy intentando poner cualquier favorito aquí, pero algo puesto fuera por +ORC, +HCU (grupo de crackers fundado por +ORC), The Keyboard Caper, Razzia, sólo por nombrar algunos, será MUY bueno. SIEMPRE debes estar al acecho de los NUEVOS nombres, y también tutoriales... las protecciones constantemente cambian, y cuando ellas lo hacen, está seguro, un cracker lo invertirá y hará sus hallazgos disponibles al público. En su mayor parte, los crackers son personas sumamente amistosas, y sumamente útiles. Aun no he encontrado uno que haya sido mal educado conmigo todavía (aunque yo sé que ellos están ahí fuera). Si le pides ayuda a un cracker, el 99% de las veces, él buscará la manera de ayudarte. Nos GUSTA introducir a nuevas personas a la escena... ¡quizá serás el primero en reventar esa protección complicada que lleva algún tiempo molestándonos! -------------------------------------------------------------------------------- ¡Arranca! Estoy Listo para Empezar... Mm... ¿Por dónde empiezo? -------------------------------------------------------------------------------- Como dije... consigue en tus manos TODOS los tutoriales y tal que puedas... Léelos por TODOS LOS LADOS........ hasta que lo entiendas. Casi CADA tutorial de introducción al cracking, como este, también te dirá que un BUEN conocimiento del funcionamiento del lenguaje Ensamblador es necesario. Tanto como me gusta el "meterle mano" al acercamiento para aprender... es verdad, NECESITAS saber un poco de Ensamblador. Cuanto más sepas, más rápido y mejor crackearás. Vas a querer meterte derecho... como yo hice. Yo gasté casi 8 condenados meses intentando encontrar una manera fácil de crakear sin leer mucho, y sin saber NADA de Ensamblador. No funciona... Creo que crackeé UN programa durante ese periodo. Así que cuando me tomé tiempo para empezar a leer... las cosas simplemente empezaron a encajar. LEE, LEE, LEE y LEE un poco más, incluso antes de que COMIENCES a empezar a jugar con algún código. Confía en mí, te compensará. -------------------------------------------------------------------------------- Ok, tengo mis Gafas de Lectura puestas, he conseguido algunos tutoriales, Ahora ¿Qué Herramientas Necesito? -------------------------------------------------------------------------------- La mayoría de los tutoriales te dirán EXACTAMENTE qué herramientas necesitarás, y los mejores te dirán los fundamentos de cómo usarlos. Esta introducción no lo va a hacer... lo que yo haré, es darte el nombre de tres herramientas que son un buen punto de comienzo. También puedes crackear muchos programas con SOLO estas herramientas. 1. SOFT-ICE- Discutiblemente el MEJOR debugger de los alrededores. A veces duro de preparar, a veces duro usar, a veces te hace lanzar objetos a tu monitor, pero eh, nada bueno llega fácilmente, ¿ correcto? Hay también MUCHOS grandes tutoriales de SOFT-ICE apuntados al newbie. 2. Wdasm - Windows Disassembler. Este programa (junto con un numeroso grupo de disassemblers de menor calidad)desmontará tu programa en código Ensamblador real. Te sorprendería cuántos programas puede crackear simplemente usando un desensamblador y un editor hex... 3. HIEW - Hacker's View Hex Editor. De nuevo, discutiblemente el mejor editor hexadecimal. Fácil de usar, MUCHAS funciones, y incluso tiene su propio buen Ensamblador incorporado dentro de él. Modificarás (parchearás) el código con esto. Esto de ninguna manera es todo lo que necesitarás para crackear. Estas herramientas son solo un punto de comienzo para conseguir "pensar" como un cracker. Tu, sin embargo, crackearás muchos programas con rutinas de protección simples con sólo estas herramientas. Cuanto más aprendes, con éstos, más fácil te será moverte dentro de las protecciones más avanzadas. -------------------------------------------------------------------------------- ¡Excelente! Solamente una pregunta final, ¿no es esto ilegal? -------------------------------------------------------------------------------- La respuesta: Sí y no. Si consideras mi consejo, y simplemente crackeas por el conocimiento y la satisfacción. No hay NINGUNA ley que declare que no puedes hacerlo así. Si inviertes TUS PROPIOS programas, y los desechas cuando terminas, no estás de ninguna manera quebrantando ninguna ley. Si, sin embargo, decides que quieres guardarlos, o distribuyes los programas crackeados. Estás quebrantando muchas leyes. Te alcanzarán. ¡No lo hagas! No jodas a los autores/vendedores de software. Ellos te atraparán, y te atraparán bien. -------------------------------------------------------------------------------- Notas finales -------------------------------------------------------------------------------- Espero que este tutorial te haya dado algunos pasos básicos para ir en tu camino a una carrera exitosa en el Cracking. Si no lo hace, no me ofenderé si lo desechas, y miras por otras fuentes. Hay muchos ahí fuera. Esto es simplemente una aguja en un pajar. El shareware es nuestra fuente para crackear. Nunca en la historia, ha habido semejante gran manera de distribuir algo. ¡Prueba antes de comprar, la última garantía de devolución del dinero - si no te gusta, líbrate de él! Apoya al shareware... muchos de los autores merecen recibir paga por su trabajo duro. ¡Hay algunos que están fuera solo por un dinero rápido, y publican programas medio- imbéciles que piden un brazo y una pierna registrarlos. ¡Jódelos! Nosotros invertiremos sus programas para llevar más allá nuestro propio conocimiento, y no les daremos un céntimo. Esto se está acabando. Gracias por tu atención, y la mejor suerte para ti. -volatility - Traducido por Txeli txeli_enlinea@hotmail.com Miembro de Tutorial Letal tutoletal.tsx.org