INDICE Introducción PARTE I. TECNICAS DE DESARROLLO Capitulo 1. Cifrado Archivos de Practicas Resúmenes Hash Cifrado de Clave Privado Como Mantener Seguras las Claves Privadas Cifrado de Clave Publica Como Ocultar Información Innecesaria Cifrado en el Mundo Real Resumen CAPITULO 2. AUTORIZACION BASADA EN ROLES Ejercicio de Autorización basada e roles Seguridad Integrada en Windows Autenticación y Autorización en ASP. NET Autorización Basada en Roles en el Mundo Real CAPITULO 3. SEGURIDAD DE ACCESO AL CODIGO Por que se Consideran las Acciones Seguras o Inseguras? Como se Puede Evitar la Ejecución de Código Dañino? Activación Predeterminada Funciones de Seguridad y el Diseñador de Visual Basic. NET Seguridad de Acceso al Código Frente a Seguridad Basada en Roles de las Aplicaciones Como Ejecutar el Código de Diferentes Zonas de Seguridad Que va a Proteger la Seguridad de Acceso de Código Permisos: La Base de lo que Puede Hacer el Código Como Puede Asegurar que su Ejecutara con Seguridad Cooperación con el Sistema de Seguridad Seguridad de Acceso al Código en el Mundo Real Resumen CAPITULO 4. AUTENTICACION ASP. NET Archivos de Practicas Employee Management Wet Autenticación por Formularios Autenticación de Seguridad Integrada en Windows Autenticación Passport Instalación ASP. NET en el Mundo Real Resumen CAPITULO 5. COMO GARANTIZAR LA SEGURIDAD DE LAS APLICACIONES WED Secure Sockets Layer (SSL) Como Funciona SSL Como Garantizar la Seguridad de los Servicios Web Implementación de un Seguimiento de Auditoria Como Garantizar la Seguridad de las Aplicaciones Web en el Mundo Real Resumen XVII 1 3 4 5 10 14 16 18 20 21 23 25 27 31 33 37 38 38 39 39 39 40 44 44 52 53 56 57 59 60 60 66 70 78 78 79 82 82 85 91 91 92 PARTE II. COMO OBTENER CODIGO RESISTENTE A LOS ATAQUES Capitulo 6. Ataques a las Aplicaciones y Como Evitarlos Ataques de Denegación de Servicio (DoS) Técnicas de Defensa para los Ataques DoS Ataques Basados en Archivo o en Directorio Técnicas de Defensa para los Basados en Archivo o en Directorio Ataques de Inyección SQL Técnicas Defensa para los Ataques de Inyección SQL Ataques de Programación de Sitio Cruzado Cuando la Inyección de Archivos de Comandos HTML se Convierten en un Problema Técnicas de Defensa ara los Ataques de Programación de Sitio Cruzado Ataques de Aplicación Hijas Técnicas de Defensa para los Ataques de Aplicaciones Hijas Defensa Contra los Ataques en el Mundo Real Resumen CAPITULO 7. VALIDACION DE LA ENTRADA Empleo de los Tipos de Entrada y de las Herramientas de Validación Entradas Directas del Usuario Herramientas Generales de Validación de Lenguaje Entrada en Aplicación Web Entradas no Realizadas por el Usuario Entradas a Subrutinas Resumen CAPITULO 8. CONTROL DE EXCEPCION Donde se Producen las Excepciones Control de Excepciones Controladores Globales de Excepciones Control de Excepciones en el Mundo Real Resumen CAPITULO 9. PRUEBA DEL CODIGO RESISTENTE A LOS ATAQUES Plan de Ataque: El Plan de Pruebas Tormenta de Ideas: Generación de Escenarios Relacionados con la Seguridad Como Centrase: Asignación de Prioridades a los Escenarios Generar Pruebas Ataque: Ejecutar el Plan Técnicas de Pruebas Herramientas de Pruebas Pruebas en el Entorno Objetivo Convertir en Prioridades las Pruebas de Seguridad Errores Frecuentes Cometidos en las Pruebas Probar Poco y Tarde Fracasar en las Pruebas de Seguridad Fracasar a la hora de Estimar el Coste de las Pruebas Esperar Demasiado de la Información Obtenidas con la Versión Beta 93 95 95 96 99 100 102 104 108 112 114 117 117 119 119 121 122 122 127 133 134 136 139 141 142 143 148 151 151 153 154 155 158 159 161 161 165 168 168 169 169 169 170 170 Suponer que los Componentes Desarrollados por Terceros son Seguros Probar en el Mundo Real Resumen PARTE III. IMPLEMENTACION Y CONFIGURACION Capitulo 10. Como Asegurar su Aplicación para la Implementación Técnicas de Implementación Implementación Basada en XCopy Implementación Automática Implementación Mediante Windorw Installer Implementación de Archivos Cabinet Implementación y Seguridad de Acceso Mediante Código Implementación y Ejecución Aplicaciones en el Entorno de Seguridad de NET Certificados y Firmas Certificados Digitales Firmas con Authenticode Firma con Nombre Seguro Firma con Authenticode Frente a Firma con Nombre Seguro Ejercicios con Nombre Seguros, Certificados y Firmas Implementación de las Actualizaciones de la Directiva de Seguridad de NET Actualización de la Directiva de Seguridad Empresarial de NET Implementación de las Actualizaciones de la Directiva de Seguridad Empresarial de NET Como Proteger su Código: Ofuscamiento Oscuridad y Seguridad Lista de Comprobación de la Implementación Implementación en el Mundo Real Resumen CAPITULO 11. PROTECCION DE WINDOWS, INTERNET INFORMATION SERVICES Y NET Ya Estoy Protegido, Tengo un Cortafuegos Principios Fundamentales del Bloqueo Herramientas Automatizadas Bloque de Clientes de Windows Como Dar Formato a Unidades de Disco Utilizando NTFS Desactivación del Inicio de Sesión Automático Activación de la Auditoria Desactivación de los Servicios Innecesarios Desactivación de los Recursos Compartidos no Necesarios Empleo de Contraseñas en el Protector de Pantallas Eliminación de Software de Compartición de Archivos Definición de una Contraseñas para Proteger el BIOS Desactivación del Arranque Desde la Unidad de Disquete Bloqueo de Servidores de Windows Como Aislar un Controlador de Dominio Desactivación y Eliminación de las Cuentas Innecesarias Instalación de un Cortafuegos 170 170 171 173 175 176 176 176 177 177 177 179 180 180 182 184 187 188 196 197 201 204 205 206 207 207 209 210 210 212 213 213 214 214 214 215 215 215 216 216 216 216 216 216 Bloqueo de IIS Desactivación de los Servicios de Internet que no Sean Necesarios Desactivación de los Script Maps que no Sean Necesarios Eliminación de Ejemplos Activación del Registro IIS Restricción de IUSR Nombre- Equipo Instalación de URLS can Bloqueo de NET Resumen CAPITULO 12. COMO GARANTIZAR LA SEGURIDAD DE LAS BASES DE DATOS Conceptos de Seguridad de las Bases de Datos Autenticación de SQL Server Quien ha Iniciado una Sesión Como Asigna Privilegios SQL Server Autorización de SQL Server Autenticación y Autorización de Microsft Access Modelo de Seguridad a Nivel de Usuario de Microsoft Access Bloqueo de Microsoft Access Bloqueo de SQL Server Resumen PARTE IV. SEGURIDAD A NIVEL EMPRESA CAPITULO 13. DIEZ PASOS PARA DISEÑAR UN SISTEMA EMPRESARIAL SEGURO Desafíos del Diseño Paso 1: Crea que Puede Ser Atacado Paso 2: Diseño e Implemente la Seguridad Desde el Principio Paso 3: Forme al Equipo Paso: 4 Diseño de una Arquitectura Segura Canalizaciones con Nombre Frente a TCP/IP Si no Hace Nada Mas Paso: 5 Modelo de Riesgos de las Vulnerabilidades Paso. 6 Empleo de las Funciones de Seguridad de Windows Paso: 7 Diseño para Simplificar y Facilitar su Empleo Paso: 8 Eliminación de las Puertas Traseras Paso: 9 Como Asegurar la Red con un Cortafuegos Paso: 10 Diseñar Pensando en el Mantenimiento Resumen CAPITULO 14. AMENAZAS: ANALISIS, PREVENCION, DETECCION Y RESPUESTA Análisis de Amenazas y Vulnerabilidades Identificar y Asignar Prioridades Evitar Ataques Disminuyendo las Amenazas Disminución de las Amenazas Detección Detección Temprana Como detectar que un Ataque se ha Producido o que se Está Ejecutando Como Responder a un Ataque 217 217 217 217 217 217 217 218 218 219 220 220 223 224 225 226 227 230 230 232 235 237 238 239 239 239 240 242 242 243 243 243 244 245 246 247 249 250 250 254 254 254 254 257 258 Como Prepararse para Responder Amenazas de Seguridad en el Mundo Real Resumen CAPITULO 15. EJERCICIO DE ANALISIS DE AMENAZAS Análisis de Amenazas Dedicar Tiempo Planificar y Documentar su Análisis de Amenazas Crear una Lista de Amenazas Asignar Prioridades a las Amenazas Responder a las Amenazas Resumen CAPITULO 16. TENDENCIAS FUTURAS La Carrera Armamentística de los hackers Ningún Sistema Operativo es Seguro Ciberterrorismo Que Pasara en el Futuro? Como Responder a las Amenazas de Seguridad Privacidad Frente a Seguridad El Protocolo Internet Versión 6 (IP v6) Iniciativas de la Administración Iniciativa de Microsoft Resumen APENDICE A. GUIA DE LOS EJEMPLOS DE CODIGO Sistema de Administración de Empleados Web de Administración de Empleados Demostración de Cifrado Utilidad Toggle PassportEnvironment Estructura de la Base de Datos Employee Como Migrar la Base de Datos Employee a SQL Server 2000 APENDICE B. CONTENIDO DE SECURITY LIBRARY.VB Resúmenes Hash Cifrado de Clave Privado Cifrado DPAPI Cifrado de Clave Publica Registro de Excepciones Seguridad Basada en Roles Validación de la Entrada Índice 259 260 260 263 263 263 264 264 266 269 271 273 273 275 275 277 278 278 280 281 281 282 283 283 286 288 290 291 291 295 295 295 295 296 296 297 297 299