TORN@DO presents: cRACKER's n0TES
FAQ



Preguntas frecuentes
�C�mo est�n relacionados los registros EAX, AX, AL y AH?
EAX es un registro de 32 bit (un ' doubleword', o ' double'). La parte m�s baja de (E)AX es AX, un registro de 16 bits (word) AX puede descomponerse en partes m�s altas y m�s bajas, AH y AL (estos son registros de 8 bits).

(E)AX = 934F93AB

Aqu� la parte m�s alta es EAX=934F y la parte m�s baja de (E)AX es AX: 93AB. �stos son los �ltimos 8 bits (byte) de �l (recuerdas 2 bits = 1 hex). Se relacionan AH y AL directamente a este como AH=93, AL=AB. Ellos no son independientes. Modificando EAX modificas a AL, AH, etc... y modificando a AL cambia AX y EAX. (NOTA: lo que ves en SoftICE [en la ventana del registro] realmente es el valor en hex.) (NOTA 2: (E) normalmente indica que es un registro de 16 bit).

�C�mo puedo usar el comando BPM en SoftICE para encontrar serials?
�ste es un comando muy �til. Una vez has encontrado donde tu serial ficticio se guarda, puedes querer hacer un BPM SEG:OFFSET r. Esto le dir� a SoftICE que rompa siempre que el programa intente una lectura [(r)ead] de tu serial ficticio (obviamente por que tendr� que validarlo). Otra forma es conseguir descifrar la rutina del c�digo comprimido. Encuentra el comando que piensas que se descomprime en alguna parte. Pon un BPM SEG:OFFSET w en el. Reinicia el programa. BOOM! SoftICE aparece de golpe en medio de la rutina de descifrado donde el comando esta escribiendo [(w)ritten] en la memoria. Encuentra un espacio vac�o y remienda esa direcci�n despu�s de la rutina del descifrado;)


�Qu� hacen esas abreviaciones que est�n en la parte superior derecha del SoftICE?


    CoRN2:
  
  O D I S Z A P C 

  | | | | | | | | 
  | | | | | | | +------- Carry Flag 
  | | | | | | +--------- Parity Flag 
  | | | | | +----------- Auxiliary Carry Flag 
  | | | | +------------- Zero Flag (MUY UTIL! ) 
  | | | +--------------- Sign Flag 
  | | +----------------- Interrupt Flag 
  | +------------------- Direction Flag 
  +--------------------- Overflow Flag
    

�Puedes darme alguna informaci�n detallada sobre los registros?
Registros de uso variado
EAX: - El acumulador. Uso general
EBX: - La base...
ECX: - el contador... principalmente para los bucles...
EDX: - El desplazamiento...


Registros de la pila
EBP - el Indicador de la Base... para la pila..
ESP - el indicador de la pila..


Registros del segmento
CS - Code Segment.(Segmento de c�digo) Esto es donde las instrucciones son...
DS - Data Segment.(Segmento de datos) Esto es donde pueden accederse a los datos. Segmento de c�digo al tratar con operaciones de strings.
ES - Extra Segment.(Segmento extra) Este segmento tambi�n puede usarse como un segmento de datos. Segmento de c�digo al tratar con operaciones de strings.
SS - Stack Segment.(Segmento de pila) Este segmento es para las direcciones...


Registros del �ndice
ESI - el Indice del Origen. Usado por operaciones de string como procedencia.
EDI - el Indice del Destino. Usado por operaciones de string como destino.
(BX - BX tambi�n puede usarse como un registro de �ndice. �stos registros se usan junto con los registros del segmento como un offset)

As� que,�Qu� quieren decir DS:SI entonces? Bien, simplemente ese DS apunta al segmento de datos y SI es un desplazamiento en el segmento de datos.


Estoy buscando una gu�a did�ctica [inserta nombre]. �Puedes ayudarme?
�Para encontrar la gu�a did�ctica que est�s buscando, simplemente comprueba el
PUBLIC TUTORIAL SEARCH ENGINE!


Soy solamente est�pido o es imposible conseguir que SoftICE escriba en un archivo. Digamos por ejemplo que quiero escribir una pantalla de SoftIce a un archivo de texto y as� puedo examinarlo despu�s. �Puede hacerse esto?

Pasos:

Primero lanza el symbol loader y vas a softice initialization settings. Pon history buffer size de m�s de KB, obviamente: -) (el valor por defecto es 256, no es bastante para un listado grande). Entonces lanza el SoftICE. Pon tus breakpoints y todo para llegar al c�digo deseado. Desensambla por ejemplo con,

U CS:EIP L 1000

Y despu�s CTRL-D inmediatamente para volver a Win9x/NT, lanza el Symbol Loader de nuevo y escoges File/Save SoftICE History As... Y el archivo guardado contiene tu c�digo, SoftICE cargado, todos lo que tecleas (aun cuando est�s trazando SIN la ventana de c�digo adelante), etc.


�Puedes decirme por favor qu� llamadas necesito trazar?
Normalmente necesitas trazar las llamadas anteriores a hacer saltar el mensaje de error.


�Puedes crackear por favor [inserta nombre aqu�]?
Yo no acepto peticiones de cracks... �si me pides de nuevo que crackee algo, publicar� tu e-mail en
http://crackmes.cjb.net!!


�Puedes enviarme por favor [inserta nombre aqu�]?
Yo no te enviar� nada... Solamente ignorare este e-mail.


Yo tengo [inserta problema aqu�] con [inserta nombre de herramienta aqu�]. �Puedes ayudarme?
�Haz la pregunta en
Fravia's Tools of the Trade Forum y conseguir�s una respuesta!


�Qu� significa [eax], [ebx], etc - mi pregunta "[]" eso que es?

VERtiCES:

[]significa, los DATOS dentro de �l.

Por ejemplo MOV EAX,DWORD PTR [EDX]
En la direcci�n EDX, imagina que los primeros 4 bytes son 05 04 AF EE. As� que, despu�s de esta instrucci�n, EAX debe tener el valor EEAF0405 h (recuerdas, siempre es en orden inverso)


Soy un Newbie y necesito saber si es posible averiguar si algo esta comprimido o no.
Usa
GetTyp!


�Que es HMEMCPY?

Volatility:

HMEMCPY es una llamada de API de Windows que usa memoria (RAM) para leer, manipular, comparar y almacenar strings (el texto que has introducido en un programa). La funci�n toma la informaci�n que has entrado (como el nombre y n�mero de serie en una pantalla del registro) y los pone en la memoria. La funci�n procede entonces a manipular estos strings, moviendo y compar�ndolos (por ejemplo, comparando t� n�mero de serie al correcto), y entonces decide si tu string es correcto o incorrecto. La funci�n reenv�a entonces esta informaci�n a la aplicaci�n, y tu procedes como un chico bueno, o un chico malo.


�C�mo encontrar espacio libre en la Secci�n del C�digo de un programa?

UFK:
Ejecuta ProcDump y pulsa en PE Editor. Abre tu programa designado. Ahora aprieta en el bot�n de 'Sections' y mira la secci�n del C�digo:

Name Virtual Size Virtual Offset Raw Size Raw Offset Characteristics
CODE 00076560 00001000 00076600 00000400 60000020




Virtual Offset:  El mismo, en memoria
Raw Offset:      El f�sico, en el archivo
Raw Size:        Bytes que los Segmentos del C�digo necesitaron
Virtual Size:    Bytes que los Segmentos del C�digo tienen


�Ahora si Virtual Offset comienza en 1000 c�mo viene en SoftICE y ves cosas con 4000000 o n�meros as� de largos? La respuesta para esa pregunta es, que hay una Imagen Base tambi�n, y �sa es una direcci�n para ser cargada por el programa PREFERENTE, a�adida en el espacio de direcci�n. Recuerda, PREFERENTE, significan que puede cambiar bajo ciertas circunstancias.

Si echas una mirada a la descripci�n anterior, averiguar�s que hab�a 76600 - 76560 = A0h (240) bytes de espacio libre en la Secci�n de C�digo. Los Segmentos del C�digo comienzan en 400h (Raw Offset). As� Raw Offset + Virtual Size nos da donde hay espacio libre.


400 + 76560 = 76960

Ahora usa tu Editor Hex favorito y ve a 76960h... y disfruta usando tu espacio libre.


 

The cRACKER's n0tES esta dividido dentro de 12 partes principales:
 TX. Notas del Traductor
 00. INDICE
 01. Ensamblador para Cracker (CoRN2)
 02. SoftICE (Men� de arranque , Configuraci�n, Comandos)
       
 1 Men� de arranque
       
 2 Configuraci�n
       
 3 Comandos
 03. Breakpoints & Detalles de API de Windows
       
 1 Programas restringidos
       
 2 Cajas de di�logo
       
 3 Verificando el Tipo de unidad
       
 4 Acceso a archivos
       
 5 Acceso al Registro
       
 6 Cogiendo n�meros de serie
       
 7 Accediendo a Tiempo & Fecha
       
 8 Generando ventanas
 04. Instrucciones de salto
 05. Instrucciones SET
 06. Tips & Trucos para Crackear
       
 1 Programas restringidos
       
 2 Dongles
       
 3 General
       
 4 Configuraci�n de InstallSHIELD
       
 5 Protecciones con Archivo llave
       
 6 Pantallas molestas
       
 7 L�mites de Runtime
       
 8 Serials
       
 9 Limites de Tiempo
       
10 Programas Visual BASIC
 07. Ventanas de Mensajes Para los Cracker
 08. Identificando funciones, Argumentos, y Variables (Rhayader)
 09. Los Sistemas de Protecciones de comerciales
       
 1 Armadillo
       
 2 C-Dilla SafeDISC
       
 3 SalesAgent
       
 4 SecuROM
       
 5 softSENTRY
       
 6 TimeLOCK
       
 7 VBox
 10. Bitmanipulation (Cruehead)
 11. Teor�a general de Cracking
 12. FAQ

 +A. C�mo contactar conmigo
 +B. �Que es lo Nuevo?


 



The cRACKER's n0TES are Copyright 1998-2000 by TORN@DO of ID.
Todo los Derechos Reservados.
Traducido por
Revisado por X-Grimator.