Cracking sin secretos. Ataque y defensa de software
Cracking no es sinónimo de violación de la protección del software, sino que constituye un método para probar la resistencia del programa frente a los posibles ataques y su posterior difusión ilegal. Resulta prácticamente imposible crear una protección inviolable, lo que no significa que todas las protecciones estén condenadas al fracaso y que no puedan cumplir su misión. El criterio con el que se suele medir el éxito de una protección radica en la cantidad de tiempo que permanece inexpugnable, lo que, a su vez, repercute en los beneficios derivados de la venta de copias legales del software correspondiente. 
Este libro está dirigido tanto a los profesionales como a aquellos principiantes interesados en el campo de la protección de software. La obra introduce al lector en los fundamentos del cracking y del anticracking y en algunas de las técnicas más avanzadas, y su contenido representa una gran compilación de información de casi todas las áreas que comprende esta materia: desde las descripciones de sencillos algoritmos de protección hasta la programación de codificadores PE propios. Si bien es esencial un conocimiento básico de la programación en ensamblador, no resulta imprescindible ya que todo el código mostrado forma parte de otro código realizado con lenguajes de mayor nivel. De este modo, resultará accesible incluso para quienes no sepan nada de ensamblador. Incluye un apéndice de referencia donde se describen los mandatos en ensamblador más comunes. 
Con este libro, el lector conocerá: 
-Las técnicas actuales de protección y sus vulnerabilidades. 
-Los puntos débiles de las protecciones actuales. 
-Los programas y herramientas empleadas por los crackers. 
-Cómo depurar y defenderse de la depuración de un programa. 
-Cómo desensamblar y defenderse contra el desensamblaje de un programa. 
-Cómo usar y defenderse de los programas FrogsICE y ProcDump. 
-La edición del código del programa. 
-El formato de fichero PE y los compresores-codificadores PE como soluciones más actualizadas frente a la piratería. 
-El cracking como mejor método de prueba de las protecciones. 
-Información complementaria sobre el cracking. 
Se adjunta un CD-ROM que contiene todo el código de los programas incluidos en el libro y un completo paquete de software para crackers y anticrackers: codificadores-compresores PE y sus correspondientes descodificadores-descompresores (ProcDump y otros), volcadores, generadores de parches, cargadores, editores y escáneres PE, calculadoras de desplazamientos, desensambladores, depuradores, programas para ocultar los depuradores (como FrogsICE) y muchos otros programas y herramientas. También contiene materiales "crackme" para que el lector ponga en práctica los conocimientos adquiridos. 
- Materia
- Seguridad informática
- Idioma
- Castellano
 
- EAN
- 9788478976287
- ISBN
- 978-84-7897-628-7
- Páginas
- 400
- Ancho
- 17 cm
- Alto
- 24 cm
- Peso
- 690 g
- Edición
- 1
- Fecha publicación
- 24-09-2004
488,72 MX$26,28 US$
Reseñas
Índice de contenido
PRÓLOGO 
CAPÍTULO 1. MÉTODOS DE PROTECCIÓN Y SUS PUNTOS DÉBILES CIFRADO 
PROGRAMAS INCOMPLETOS 
CLASIFICACIÓN BÁSICA DE LOS TIPOS DE PROTECCIÓN DISPONIBLES 
Duración limitada 
Otras restricciones numéricas 
Número de registro 
REGISTRO INTERACTIVO 
Fichero clave 
Programas limitados 
Protección hardware 
Comprobación de la presencia del CD 
Compresores y codificadores PE 
Protección contra la copia del CD 
Deterioro físico del CD 
Ficheros de tamaño falso 
CDs sobredimensionados 
TOC ("Table of Contents") ilegal 
Ficheros agrupados 
Errores ficticios de software y otras manipulaciones en el proceso de fabricación de los CDs 
Protecciones comerciales 
SafeDisc 
SecuROM 
ProtectCD 
Armadillo Software Protection System 
ASProtect 
VBox 
Programas en Visual Basic 
Comparación de cadenas de caracteres 
Comparación variable (tipo de datos variable) 
Comparación variable (tipo de datos largo) 
Conversión del tipo de datos 
Transferencia de datos 
Operaciones matemáticas 
Miscelánea 
Otras vulnerabilidades de las protecciones actuales 
CAPÍTULO 2. PROTECCIÓN CONTRA LOS PROGRAMAS DE DEPURACIÓN 
DEPURADORES MÁS HABITUALES 
SoftICE 
USO ELEMENTAL DE SOFTICE 
Configuración del programa 
Mandatos, funciones y controles básicos 
Windows 
Gestión de los puntos de corte 
GESTIÓN ESTRUCTURADA DE EXCEPCIONES (SEH) 
Descripción y uso de la gestión estructurada de excepciones 
SEH en desarrollo 
Algoritmos comunes 
Algoritmos basados en la función API CreateFileA 
La interfaz BoundsChecker y el uso de INIT3 
Empleo de INT1 
Empleo de INT 68h 
Búsqueda en el registro de Windows 
Búsqueda en autoexec.bat 
PUNTOS DE CORTE 
Puntos de corte para software 
Puntos de corte en una interrupción (BPINT) 
Puntos de corte en una ejecución (BPX) 
Puntos de corte en un área de memoria (BPR) 
Puntos de corte hardware 
Descripción de un programa de ejemplo empleado para detectar puntos de corte hardware 
MÉTODOS AVANZADOS 
Privilegios de los anillos 
Maneras de saltar entre el anillo 3 y el anillo 0 
Detección de SoftICE mediante VxDCall 
Desactivación de la tecla de atención de SoftICE 
OTROS USOS SENCILLOS DE SEH 
CAPÍTULO 3. PROTECCIÓN CONTRA LOS DESENSAMBLADORES 
DESENSAMBLADORES HABITUALES 
USO ELEMENTAL DE W32DASM 
ALGORITMOS COMUNES 
Protección contra las cadenas 
Protección contra las funciones importadas 
CÓDIGO AUTOMODIFICABLE (SMC) 
SMC pasivo 
SMC activo 
EDICIÓN DEL CÓDIGO DEL PROGRAMA EN TIEMPO DE EJECUCIÓN 
CAPÍTULO 4. PROTECCIÓN CONTRA FROGSICE 
USO ELEMENTAL DE FROGSICE 
Opciones básicas 
Opciones avanzadas 
ALGORITMOS COMUNES 
VxDCall de la función VMM_GetDDBList 
Uso de la función CreateFileA 
CAPÍTULO 5 PROTECCIÓN CONTRA PROCDUMP 
USO ELEMENTAL DE PROCDUMP 
DEFINICIÓN Y OBJETIVO DEL VOLCADO DE MEMORIA 
ALGORITMOS COMUNES 
CAPÍTULO 6. EDICIÓN DEL CÓDIGO DEL PROGRAMA 
MÉTODOS PARA EDITAR EL CÓDIGO DEL PROGRAMA 
USO ELEMENTAL DE HIEW 
Edición de un programa para detectar SoftICE 
ALGORITMOS COMUNES 
Comprobación de la integridad de los datos 
Comprobación de la integridad de los datos de un fichero 
Comprobación de la integridad de los datos en memoria 
Otros métodos 
CAPÍTULO 7. EL FORMATO PE Y SUS HERRAMIENTAS 
DESCRIPCIÓN DEL FORMATO DE FICHERO PE 
DESCRIPCIÓN Y FUNCIONAMIENTO DEL COMPRESOR-CODIFICADOR PE 
Creación de un codificador o compresor PE 
Desventajas de los compresores-codificadores PE 
Algunos compresores-codificadores PE 
ASPack 
CodeSafe 
NeoLite 
NFO 
PE-Compact 
PE-Crypt 
PE-Shield 
PETITE 
Shrinker 
UPX 
WWPack32 
FORMATO DE FICHERO PE 
Comprobación del formato PE 
Cabecera PE 
Tabla de secciones 
Direcciones virtuales, materiales y virtuales relativas (RVA) 
Tabla de importaciones 
Tabla de exportaciones 
CONFIGURACIÓN DE UN CODIFICADOR PE 
Inclusión de una sección nueva en un fichero 
Redirección de los datos 
Inclusión de código en una sección nueva 
Bifurcaciones y variables 
Funciones importadas 
Creación de una tabla de importaciones 
Proceso de una tabla de importaciones original 
Uso de una función importada 
PROCESO TLS 
CODIFICACIÓN 
Elección del algoritmo de codificación 
Algoritmos de codificación comunes 
Violación del código 
Áreas codificadas y no codificadas 
Ejemplo de una codificación sencilla con un codificador PE 
DISEÑO FINAL DE UN CODIFICADOR PE 
PROTECCIONES ALTERNATIVAS 
Cargador de símbolos AntiSoftICE 
Comprobación del punto de entrada al programa 
RSA 
Ejemplo de aplicación con RSA 
CONCLUSIÓN SOBRE EL FORMATO PE Y COMPRESORES-CODIFICADORES PE 
CAPÍTULO 8. OTROS PROGRAMAS UTILIZADOS POR LOS CRACKERS 
REGISTRY MONITOR 
FILE MONITOR 
R!SC'S PROCESS PATCHER 
Ficheros de mandatos 
THE CUSTOMISER 
CAPÍTULO 9. CRACKING DE ENTRENAMIENTO 
CRUEHEAD - CRACKME V1.0 
CRUEHEAD - CRACKME V2.0 
CRUEHEAD - CRACKME V3.0 
COSH - CRACKME1 
MEXELITE - CRACKME 4.0 
IMMORTAL DESCENDANTS - CRACKME 8 
Easy Serial 
Harder Serial 
Name/Serial 
Matrix 
KeyFile 
NAG 
Cripple 
DUELIST - CRACKME #5 
Descodificación manual de un fichero 
Modificaciones efectuadas directamente en memoria 
TC - CRACKME 9 
Obtención manual del número de serie 
Conversión del programa en un generador de claves 
TC - CRACKME 10 
TC - CRACKME 13 
TC - CRACKME 20 
ZEMOZ - MATRIX CRACKME307 
ZEMOZ — CRCME 
Edición hexadecimal del programa 
Utilización del cargador 
CAPÍTULO 10. INFORMACIÓN COMPLEMENTARIA SOBRE EL CRACKING 
ORIGEN Y DIFUSIÓN 
CRACKERS 
CRACKERS Y GRUPOS CONOCIDOS 
+HCU 
Immortal Descendants 
Messing in Bytes — MiB 
Crackers in Action — CIA 
Phrozen Crew 
United Cracking Force 
DEViANCE 
TC - CRACKME 13 
TC - CRACKME 20 
ZEMOZ - MATRIX CRACKME 
ZEMOZ — CRCME 
Edición hexadecimal del programa 
Utilización del cargador 
CAPÍTULO 10. INFORMACIÓN COMPLEMENTARIA SOBRE EL CRACKING 
ORIGEN Y DIFUSIÓN 
CRACKERS 
CRACKERS Y GRUPOS CONOCIDOS 
+HCU 
Immortal Descendants 
Messing in Bytes — MiB 
Crackers in Action — CIA 
Phrozen Crew 
United Cracking Force 
DEViANCE 
Ebola Virus Crew 
Evidence 
Da Breaker Crew 
RECURSOS EN INTERNET 
Cracking e ingeniería inversa 
Programación 
Herramientas 
Referencias 
Grupos de cracking 
CONSEJOS BÁSICOS DE LOS CRACKERS 
Cracking (Lucifer48) 
Aplicación de instrucciones NOP (+ORC) 
Parchear (MisterE) 
Pensar como un cracker (rudeboy) 
Herramientas (rudeboy) 
CAPÍTULO 11. SECCIÓN DE REFERENCIA 
INSTRUCCIONES BÁSICAS EN ENSAMBLADOR 
MENSAJES DE WINDOWS 
ACCESO AL REGISTRO DE WINDOWS 
RESUMEN DE FUNCIONES DE SOFTICE 
Definición de puntos de corte 
Manejo de los puntos de corte 
Modificar y mostrar memoria 
Obtención de información sobre el sistema 
Mandatos para los puertos de entrada y salida (I/O) 
Mandatos para controlar el flujo 
Modo de control 
Mandatos de personalización 
Utilidades 
Uso de las teclas del editor de líneas 
Uso de las teclas de desplazamiento 
Mandatos de ventana 
Control de ventana 
Mandatos sobre símbolos y fuente 
Libros relacionados
 - Bastionado de redes y sistemas
 - OSINT Auditorías de seguridad y ciberamenazas. Explorando la inteligencia de fuentes abiertas
 - Ciberseguridad para todos. Aprende, protege y responde
 - (CTRD0030) (FCOI0030) - Ciberseguridad básica
 - (IFCT155) Blue Team. Seguridad defensiva
 - (MF0486_3) Seguridad en Equipos Informáticos. Actualizado 2024
 - (MF0487_3) Auditoría de la Seguridad Informática
 - (IFCT154) Red Team. Seguridad ofensiva
 - (IFCT116) Gestión de la seguridad informática en la empresa
 - (IFCT123) Implantación y gestión de la ciberseguridad



