Haga clic para cambiar el estilo de título. Curso de Seguridad de la Información. Haga clic para cambiar el estilo de título



Documentos relacionados
Haga clic para cambiar el estilo de título. Curso de Seguridad de la Información

TERCERIZACIÓN DE SERVICIOS DE TI. ANEXO 4 - Actividades y niveles de servicio definidos para Primer Nivel de Soporte en Seguridad

Capítulo 4 Pruebas e implementación de la aplicación CAPÍTULO 4 PRUEBAS E IMPLEMENTACIÓN DE LA APLICACIÓN

Test de intrusión (Penetration Test) Introducción

Auditorías de Seguridad: revisión como método de prevención. Vicente Aguilera Díaz Internet Security Auditors, S.L.

Haga clic para modificar el estilo de título del patrón Haga clic para modificar el estilo de texto del patrón

Procedimiento de Gestión de Incidentes de Seguridad de la Información

Modelamiento de Amenazas en el Desarrollo de Software

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

Seguridad en el ciclo de vida del desarrollo de software

AUDITORÍAS TÉCNICAS PARA LA CERTIFICACIÓN DE LOS SISTEMAS DE RECOGIDA DE INICIATIVAS CIUDADANAS EUROPEAS

Elementos requeridos para crearlos (ejemplo: el compilador)

Capítulo VII PLAN DE IMPLEMENTACIÓN DE ALTO NIVEL

Information Security Network Management Solutions

Q-expeditive Publicación vía Internet

Requerimientos Técnicos para mantenimiento anual de certificación del Área Perimetral

Microsoft Dynamics. Instalación de Management Reporter for Microsoft Dynamics ERP

Requisitos de control de proveedores externos

GUÍA DE SEGURIDAD DE LA INFORMACIÓN GUÍA GOBIERNO CORPORATIVO PARA EMPRESAS SEP


Servicios de Seguridad de la Información

100% Laboratorios en Vivo

Ataques XSS en Aplicaciones Web

Marco Normativo de IT

VICEPRESIDENCIA DE OPERACIONES DEPARTAMENTO DE SISTEMAS

CONDICIONES TÉCNICAS PARA SERVICIO ILUMINACIÓN ZONAS WIFI PARA CLIENTES CORPORATIVOS. Vicepresidencia de Infraestructura

mope PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS Página 0 PASEO GENERAL MARTINEZ CAMPOS MADRID info@mope.

Pruebas de Intrusión de Aplicación

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...

Beneficios estratégicos para su organización. Beneficios. Características V

CAPITULO 4. ANALISIS COMPARATIVO Y SELECCION DE LA PLATAFORMA EDUCATIVA.

Hacking Ético Web. I Jornadas Tecnológicas CEEPS Carlos García García i52gagac@uco.es

LABORATORIO 10. COPIAS DE SEGURIDAD, RESTAURACIÓN Y RECUPERACIÓN DE UNA BD

3-ANÁLISIS DE VULNERABILIDADES

Modelado de Amenazas Una Introducción

SEGURIDAD INFORMÁTICA 2º SISTEMAS MICROINFORMÁTICOS Y REDES 1. CONTENIDOS MÍNIMOS PARA LA EVALUACIÓN POSITIVA

INTEROPERABILIDAD SISTEMA DE INFORMACIÓN GENERAL DE ESTUDIANTES (SIGE) SOFTWARE DE GESTIÓN ESCOLAR

Comprobada. Confiable.

OWASP: Un punto de vista. aplicaciones web seguras

Visión General de GXportal. Última actualización: 2009

Autorizan ejecución de la "Encuesta de Seguridad de la Información en la RESOLUCIÓN MINISTERIAL N PCM

TOPICOS IV: ING. YIM APESTEGUI FLORENTINO

Gestión de la Seguridad Informática

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

PCI Day Today PCI DSS. WebSphere DataPower IBM Corporation

DOCUMENTO DE CONSTRUCCIÓN SOLUCIÓN DE NO CONFORMIDADES ISO 9000 Bizagi Process Modeler

Anexo I. Politicas Generales de Seguridad del proyecto CAT

Análisis del Sistema de Información

Políticas y Seguridad de la Información ECR EVALUADORA PREFIN S.A

Microsoft es una marca comercial registrada o una marca comercial de Microsoft Corporation en Estados Unidos y otros países.

Capítulo IV SEGURIDAD DE LA INFORMACIÓN ROLES Y ESTRUCTURA ORGANIZACIONAL

SOLUCIONES EN SEGURIDAD INFORMATICA

MARCO DE REFERENCIA SISTEMAS DE INFORMACIÓN PARA LA GESTIÓN DE TI EN EL ESTADO COLOMBIANO

Empresa Financiera Herramientas de SW Servicios

Autenticación ultrarresistente para proteger el acceso a la red y la información corporativa

Master en Gestion de la Calidad

REQUERIMIENTOS HARDWARE Y SOFTWARE QWEBDOCUMENTS VERSION 4

Infraestructura Tecnológica. Sesión 10: Sistemas cortafuego

Resumen de los protocolos de seguridad del Registro Telemático

POLÍTICA DE CONTINUIDAD DEL NEGOCIO (BCP,DRP)

Requerimiento Tecnológico para acceso a Sistemas del SIAF

COORDINACION DE FORTALECIMIENTO DE GOBIERNO ELECTRONICO EGOB 3.0 PLAN DE ACCION EGOB 3.0

Guía Metodológica para el diseño de procesos de negocio

Guía de doble autenticación

TECNOLOGIAS DE INFORMACION GUBERNAMENTAL OFICINA DE GERENCIA Y PRESUPUESTO

SISTEMAS IDEALES SISTIDE, S.A. SISTEMA GESTION DE USUARIOS

Contenido Derechos Reservados DIAN - Proyecto MUISCA

Is not jus power, is reliability and trust. Yei Systems S.A. de C.V.

Políticas de seguridad de la información. Empresa

Capítulo 5. Cliente-Servidor.

UNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO

Security Health Check

DESCRIPCIÓN DEL PROCESO DE RIESGO OPERACIONAL

CONCEPTOS GENERALES SOBRE SEGURIDAD INFORMATICA

Autenticación Centralizada

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Sistemas de información de laboratorio

INFORME DE EVALUACION DEL SISTEMA DE GESTION DE LA SEGURIDAD DE LA INFORMACION (SGSI), PERIODO

Custodia de Documentos Valorados

CAPÍTULO 3 DISEÑO DE LA ARQUITECTURA

Gestión del Servicio de Tecnología de la información

Resumen General del Manual de Organización y Funciones

INFORME DE RESULTADOS DE LA 1 ENCUESTA DE SEGURIDAD DE LA INFORMACIÓN EN UNIVERSIDADES ECUATORIANAS MIEMBROS DE CEDIA

PROGRAMA DEL CURSO. SEGURIDAD EN EQUIPOS INFORMATICOS MF0486_3 90 horas MEDIO-AVANZADO DURACION:

MANUAL COPIAS DE SEGURIDAD

Sistema de Gestión de Proyectos Estratégicos.

rg.o cm a Espec e i c fica c ci c ó i n ó n d e e r e r q e uer e i r mi m en e tos o l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s

Seguridad en la transmisión de Datos

ing Solution La forma más efectiva de llegar a sus clientes.

SIEWEB. La intranet corporativa de SIE

AVA-QHSE System. Introducción Características del producto Especificaciones Técnicas

PROVIAS NACIONAL INFORME TÉCNICO DE EVALUACIÓN DE SOFTWARE Nº MTC/ NOMBRE DEL ÁREA: Unidad de Informática

Gestión de la configuración en el software (SCM) Ingeniería de software Eduardo Ferreira, Martín Solari

Sistema de gestión de procesos institucionales y documental.

Guía Rápida de Inicio

Solución de No conformidades

ENCUENTA - CONTABILIDAD Net. Definiciones generales

Norma NTC-ISO/IEC Sistema de Gestión de Seguridad de Información

SEGURIDAD INFORMATICA GENERALIDADES DE LA SEGURIDAD INFORMATICA

Cómo trabaja el Atacante? El atacante trabaja en 5 pasos, los cuales son: Ethical-Hacker.net. Reconocimiento. Borrado de Huellas.

Transcripción:

Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Curso de Seguridad de la Información Agenda Conceptos y definiciones principales Riesgos Estándares y mejores prácticas Lineamientos para Mejorar la Seguridad de las Aplicaciones Mecanismos de Autenticación Amenazas y Ataques Página 1 Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Conceptos y definiciones principales

Contexto y Entorno 76 % del software y aplicaciones testeadas tienen graves problemas de seguridad en su diseño y en su implementación Encuentas de Foundstone $ 60B Es el costo de problemas en la calidad del software en los Estados Unidos Departamento de Comercio de Estados Unidos $3 B Es el costo del sofware inseguro en la Industria Financiera de Estados Unidos Encuenta del 2002 del NIST 100x Es hasta 100 veces más costoso corregir una debilidad de seguridad de programación en Producción que en la etapa de Diseño IBM Systems Sciences Institute Página 3 Contexto y Entorno El auge de Internet y su utilización como una herramienta de soporte al desarrollo de negocios ha generado un nuevo escenario en lo que refiere a seguridad informática; En paralelo al crecimiento en el uso de Internet distintos hechos han conducido a una mayor concientización sobre los riesgos de seguridad existentes en este nuevo ambiente de negocios Ataques de Hackers Worms, Troyanos y Virus Nuevas vulnerabilidades Sin embargo, la seguridad fue analizada y aplicada fundamentalmente sobre la capa de infraestructura tecnológica, mediante la implementación de soluciones tecnológicas puntuales Firewalls Antivirus Procesos de Patch Management Configuración Segura de Servidores y Dispositivos de Red Página 4 Contexto y Entorno La seguridad de la capa aplicativa recibe muy poca atención, limitando la consideración de aspectos de seguridad a la administración de usuarios y permisos de acceso. En general, los ciclos de desarrollo y puesta en marcha de nuevas aplicaciones no consideran de manera específica los requerimientos de seguridad No se incluyen los requerimientos de seguridad en el diseño de las aplicaciones No se utilizan estándares de arquitectura y codificación segura El control de acceso y la administración de usuarios es generalmente propietario El testeo de las aplicaciones no incluye pruebas destructutivas de seguridad En algunos casos, la consideración de los requerimientos de seguridad se produce cuando el proceso de desarrollo está muy avanzado, donde los costos de solución son significativos y a veces inviables desde el punto de vista del proyecto Página 5

Contexto y Entorno De manera concurrente, existe una tendencia creciente a que las aplicaciones de negocio sean web-enabled, de forma tal de facilitar su distribución y acceso, tanto a nivel interno como desde fuera de la organización En particular, las aplicaciones publicadas en Internet están expuestas a usuarios maliciosos, con conocimientos específicos de cómo aprovecharse de debilidades de programación para afectar la confidencialidad, integridad y disponibilidad de información de negocio. Este contexto hace que hoy en día las aplicaciones estén sometidas a nuevas presiones en materia de seguridad, y que requieran un enfoque de seguridad diferente al actualmente aplicado Página 6 Contexto y Entorno Para pensar Si los gigantes del software (ej. MICROSOFT) construyen aplicaciones con bugs de seguridad No es lógico pensar que las aplicaciones que nosotros desarrollamos también tengan bugs de seguridad?? Aplicaciones de HOME BANKING Extranets para Acceso a CLIENTE y PROVEEDORS Aplicaciones de Negocio / Corporativas web-enabled Página 7 Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Riesgos

Riesgos y Expuestos - El impacto de la inseguridad en las aplicaciones Las debilidades de seguridad en las aplicaciones pueden derivar en situaciones criticas para la seguridad de la información que administran: Exposición de información confidencial a usuarios no autorizados Interrupciones del servicio por errores en el procesamiento de información ingresada al sistema Exposición a ataques de inyección de código que permitan acceder a las bases de datos de la aplicación Ejecución de comandos en el servidor, a partir de debilidades en la programación, generalmente con máximos privilegios sobre el recurso El impacto es sobre la información, que es el activo crítico que se intenta proteger Página 9 Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Estándares y Mejores Prácticas Estándares y Mejores Prácticas - OWASP The Open Web Application Security Project (OWASP www.owasp.org) es un grupo voluntario que produce estándares y herramientas para el desarrollo seguro de aplicaciones web Este grupo desarrolla distintos documentos y estándares que constituyen un marco de referencia para la definición y evaluación de seguridad en aplicaciones web La guía OWASP Guide to Building Secure Web Applications contiene guías y recomendaciones para el desarrollo de aplicaciones web considerando los aspectos críticos y particulares de seguridad de este tipo de aplicaciones Página 11

Estándares y Mejores Prácticas - OWASP Principales documentos y estándares generados por OWASP Listado de Vulnerabilidades Críticas que afectan a las aplicaciones web TOP TEN Estándares para desarrollo de aplicaciones seguras Metodología para testing de seguridad de aplicaciones web Herramientas para soporte de revisión de seguridad de aplicaciones Aportes a la ISO17799 en la implementación técnica de seguridad en el desarrollo de aplicaciones web Página 12 Estándares y Mejores Prácticas - Estándares de Codificación Segura Dadas las particularidades propias de cada lenguaje, existen estándares de codificación segura con foco específico en la construcción de aplicaciones seguras en cada lenguaje Estos estándares describen prácticas de codificación para evitar la presencia de bugs de programación que afecten a la seguridad de la aplicación Microsoft (.NET), SUN (JAVA), y distintos grupos de desarrollo son las fuentes de elaboración de estos documentos Página 13 Estándares y Mejores Prácticas - Otros Estándares Otros estándares que pueden ser considerados como marco de referencia para mejorar los procesos de desarrollo desde el punto de vista de la seguridad de las aplicaciones: NIST Security Cosiderations in the Information System Development Life Cycle, que presenta una serie de mejores prácticas y actividades a incluir en el ciclo de desarrollo para mejorar la seguridad de las aplicaciones CMM (Capability Maturity Model) es un modelo iterativo para el desarrollo de aplicaciones, con foco en la calidad y mejora de los procesos de desarrollo para llegar a distintos niveles de madurez. Página 14

Estándares y Mejores Prácticas - Threat Modeling Es un proceso iterativo que permite la identificación y clasificación de las amenazas que pueden afectar a una aplicación. Threat Modeling Web Applications - Microsoft 2005 Página 15 Estándares y Mejores Prácticas - Threat Modeling - Etapas Identificar activos Identificar los activos a proteger Crear un esquema de la arquitectura Que hace la aplicación y que activos usa Crear un diagrama de la arquitectura Identificar las tecnologías utilizadas para la implementación Descomponer la aplicación Límites de confianza Puntos de entrada Flujo de información Identificar código crítico Crear y documentar un perfil de seguridad Página 16 Estándares y Mejores Prácticas - Threat Modeling - Etapas Identificar las amenazas De red, hosts y aplicación Categorías STRIDE Spoofing Tampering Repudiation Information disclosure Denial of service Elevation of privilege Documentar las amenazas Clasificar las amenazas Probabilidad * Daño potencial Modelo DREAD Damage potential (daño potencial) Reproducibility (oportunidad) Exploitability (complejidad) Affected users (usuarios afectados) Discoverability (notoriedad) Página 17

Threat Modeling - Herramientas Microsoft Threat Modeling Tool: http://www.microsoft.com/downloads/ NIST CCToolbox (Common Criteria Toolbox): http://niap.nist.gov/tools/cctool.html Página 18 Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Lineamientos para Mejorar la Seguridad de las Aplicaciones Lineamientos para Mejorar la Seguridad de las Aplicaciones Principales aspectos a considerar desde el punto de vista de la seguridad de las aplicaciones Arquitectura de la Aplicación Consideraciones en la implementación Validación de los datos de entrada (fundamentalmente del lado servidor) Mecanismos de Autenticación y Autorización Manejo de Sesiones Mecanismos de Encripción Pasaje y Manipulación de Parámetros Manejo de Errores y Excepciones Logging y Auditoría Página 20

Lineamientos para Mejorar la Seguridad de las Aplicaciones Desarrollo de estándares de Seguridad Página 21 Lineamientos para Mejorar la Seguridad de las Aplicaciones Inclusión de Actividades de Seguridad en el Ciclo de Desarrollo Security Training Design Design Review Maintenance/ Update Request Construction Penetration Test Deployment Automated Scanning QA and Testing Penetration Test Code Review Automated Code Review Página 22 Lineamientos para Mejorar la Seguridad de las Aplicaciones Como encarar el proceso de cambio PLAN DESARROLLO IMPLEMENTACION ACTIVIT TIVIDADES Evaluar la situación existente Definir los requerimientos y necesidades de seguridad generales para las aplicaciones Desarrollar los estándares Definir los nuevos procesos Definir roles y responsabilidades Capacitar a los desarrolladores y otros recursos clave de IT Poner en funcionamiento los procesos y estándares RETROALIMENTACION ITERACION DEL PROCESO y MONITOREO CONCIENTIZACION A LOS DESARROLLADORES Página 23

Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Seguridad en el proceso de Desarrollo Separación de Ambientes Es deseable tener al menos 3 ambientes para el desarrollo de sistemas con un adecuado nivel de seguridad y controles: Ambiente de Desarrollo Ambiente de Pruebas Ambiente de Producción Para cada nivel deben considerarse controles tipo AAA Es importante tener definido el proceso de pasaje de un ambiente al siguiente que contemple al menos: Responsables en cada punto crítico. Participación de las áreas usuarias. El flujo de las autorizaciones y de los desarrollos. La documentación respaldatoria que se generará. Niveles de aprobación de acuerdo a la criticidad. Página 25 Controles de Aplicaciones Exactitud (accuracy) La información/ datos ingresados a las distintas aplicaciones deben ser exactas. No debe haber diferencias entre lo que se tiene que ingresar y lo que se ingreso. Seguridad Preservar la C-I-D Consistencia La información/ datos deben ser consistentes Debe ser parte del proceso natural de desarrollo, no un agregado final. Debe estar contemplada en todas las fases del proyecto, desde la fase de requerimientos hasta la implementación de la solución. Página 26

Controles en las Aplicaciones Preventivos Detectivos Correctivos Precisión Consistencia Revisión de datos, formularios, pantallas personalizables, chequeos de validez, etc. Diccionario de datos, estándares de programación, DBMS CRC, hash, comprobaciones lógicas Controles de comparación, reconciliación Backups, reportes de control Comentarios en programas, controles en base de datos Seguridad clasificación, encripción, separación de ambientes IDS, logs de auditoria Respuesta ante emergencias Página 27 Diseño de Sistemas Hacer un diseño ordenado, utilizando casos de uso bien planteados permite Definir los límites del sistema Determinar relaciones contextuales Identificar Actores y Roles Determinar las condiciones Previas y Posteriores a la ejecución Simplifica el proceso de clasificación de la información Enfocarse exclusivamente en casos de uso positivos nos lleva a: Atrasos del proyecto al agregar y probar la seguridad Baja integración ió de la seguridad d en la aplicación ió Testeos y calidad de seguridad bajos Dentro de lo posible, crear al menos un caso de uso negativo (caso de abuso) por cada caso positivo Un caso de abuso es el inverso de un caso de uso Nos muestra aquellos actores con quienes no queremos interactuar (abusadores), y las acciones que el sistema debería detectar y no permitir. Página 28 Diseño de Sistemas Los casos de abuso Ven el sistema desde el punto de vista del atacante Ayudan a Determinar requerimientos de seguridad Crear Modelos de amenazas (Threat Modeling) Página 29

Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Mecanismos de Autenticación Principales Mecanismos de Autenticación Autenticación HTTP Basic Digest Integrada NTLM Negotiate Certificados Form-Based Authentication Otros Página 31 Autenticación HTTP Básica La más débil de todas las opciones Transmite el usuario y clave en texto plano (Base64) Digest Usa un sistema de challenge-response Envía un digest encriptado. Susceptible de ataques de repetición La implementación de MS requiere que las claves sean reversibles Página 32

Autenticación NTLM (NT Lan Manager) Integrada con windows Requiere que todos los clientes usen el Internet Explorer Negotiate Extensión de NTLM de Windows 2000 Requiere que todos los clientes sean Windows 2000 o superior. Certificados Usa PKI y Certificados Digitales para autenticar al usuario Muy complejo de implementar Otros Diseños a medida Propietarios (ej: Oracle Forms) Página 33 Haga clic para cambiar el estilo de título Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Amenazas y Ataques Amenazas y Ataques Ingeniería Social Password Attack Password Guessing Brute Force Dictionary Hybrid Citizen Programmers Se refiere a la programación NO supervisada. Generalmente ocurre cuando un usuario tiene permitido modificar los programas de software. Una de las plataformas susceptibles a este tipo de inconvenientes, es aquella relacionada con las aplicaciones desarrolladas en Visual Basic for Application, el cual forma parte de la suite de aplicaciones de Oficina mas popular. Página 35

Amenazas y Ataques (Cont.) Denial of Services (DoS) / Denial of Services Distributed (DDoS) Los ataques DoS pueden ser realizados por medio del envío de paquetes mal formados a la pila de red de un sistema determinado. Esto podría resultar en que el sistema objetivo, al no poder procesar correctamente este tipo de tráfico, se desborde o deje de realizar su tarea. Los ataques DoS intentan atacar los recursos de sistema del equipo objetivo. Estos pueden ser: Ancho de banda Procesos Cuota de disco Memoria CPU Etc. Los ataques DDoS son una extensión lógica de los DoS. Estos envuelven mas de un equipo informático con fines de amplificación. Página 36 Amenazas y Ataques (Cont.) Buffer Overflow Un Buffer Overflow, se produce cuando un programa, es poco estricto en la gestión de su espacio de memoria o no comprueba adecuadamente la longitud de las entradas recibidas como parte de su operación. Si una aplicación no verifica la cantidad de información que esta siendo ingresada, o lo hace incorrectamente, el atacante podría ingresar mas datos de los esperados, de modo tal que estos terminen sobrescribiendo otros segmentos de memoria. Este tipo de ataque puede ocasionar negaciones de servicio o habilitar que determinado código no autorizado se ejecute en modo privilegiado. Página 37 Buffer Overflow Qué es? Un Buffer Overflow, se produce cuando un programa, es poco estricto en la gestión de su espacio de memoria o no comprueba adecuadamente la longitud de las entradas recibidas como parte de su operación. Si una aplicación no verifica la cantidad de información que esta siendo ingresada, o lo hace incorrectamente, el atacante podría ingresar mas datos de los esperados, de modo tal que estos terminen sobrescribiendo otros segmentos de memoria. Este tipo de ataque puede ocasionar negaciones de servicio i o habilitar que determinado código no autorizado se ejecute en modo privilegiado. Página 38

Buffer Overflow Amenazas Al sobrescribir parte de la información del programa en memoria, puede perderse el control de la misma. Adecuadamente preparado, puede generar el acceso en forma privilegiada al sistema operativo. Recomendaciones Controlar adecuadamente TODA la información recibida como entrada a la aplicación; ió Minimizar los puntos de contacto de entrada, de manera tal de reducir al mínimo las interfaces capaces de ser explotadas; Probar activamente cada módulo de manera tal de asegurarse que el mismo no puede exponer, por un buffer overflow, la seguridad de la aplicación y/o el sistema operativo. Página 39 Inyección SQL Qué es? Ejecutar comandos maliciosos de SQL, al agregar queries de SQL en formularios web, o en el URL de acceso a una página web Clásico ejemplo de un programa que no valida la entrada proveniente del usuario Amenazas Acceso a la base de datos a través del servidor Web. Daño en función de: Privilegios de la cuenta utilizada por la aplicación para acceder a la base de datos. Seguridad del ambiente de base de datos y de la infraestructura de seguridad asociada. Página 40 Inyección SQL Mitos 1. Lo evito configurando bien mi firewall. 2. Es un problema sólo de Microsoft SQL Server 3. Cambiando los mensajes de error de mi web server, evito el problema 4. Client-side Javascript para validar los parámetros de los formularios, evitan el ataque 5. Si uso stored procedures, el problema no lo tengo Página 41

Inyección SQL Database Footprinting Es el proceso de recuperar información sobre la estructura y configuración de una base de datos. Suele ser el primer paso de un ataque, que sirve para decidir la forma más adecuada de hacer un ataque. El método más seguro de hacerlo (aunque lento) es a través de los mensajes de error de una página Ejemplo: Empezamos poniendo un ': Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed quotation mark before the character string ' AND U.uID=P.uID'. /prueba/sqlinj/index.asp, line 20 Página 42 Inyección SQL Recomendaciones Filtrar TODO el contenido provisto por el usuario en formularios o en URL; Modificar mensajes de error (dificulta, no lo protege); Limitar accesos provistos a la aplicación en la base de datos: diferentes tareas diferentes privilegios; Seguridad en la base de datos / criptografía; Validar cantidad de información que se obtiene en cada query a la base de datos. Página 43 Cross Site Scripting - XSS Qué es? Hacer que un servidor Web presente a un cliente (browser) código contenido en un URL, potencialmente dañino. El código es presentado al cliente con las credenciales del servidor. Ej: certificado digital de SSL. Página 44

XSS Amenazas El cliente confía en el código presentado por el servidor. Podría ingresar información confidencial: usuarios, contraseñas, información personal, financiera, etc; Podría contener links a sitios / código malicioso que el usuario podría descargar y/o ejecutar; Permite, en forma limitada, acceder a información de sesión (cookie theft). Página 45 Preguntas? Curso de Seguridad de la Información - Módulo VIII Seguridad en A li i 4