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