Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Definición de seguridad informática Una buena definición sería: "A computer is secure if you can depend on it and its software to behave as you expect.", definición tomada del libro "Practical UNIX and Internet Security", de Simson Garfinkel, Gene Spafford y Alan Schwartz. Traduciéndola más o menos literalmente, vendría a decir que podemos afirmar que un ordenador es seguro si podemos depender de que se comporte como esperamos. Esta definición incluye dos aspectos básicos. Por una parte, introduce la necesidad de poder depender de los sistemas informáticos. Y, por otra, la noción del comportamiento esperado, que tiene dos aspectos complementarios: Lo que esperamos que haga el sistema. Por ejemplo, servir páginas web, permitir acceso remoto al administrador... Lo que esperamos que no haga. Por ejemplo, incluir código malicioso en las páginas que sirve, permitir acceso remoto a usuarios no autorizados... Primeras ideas sobre la seguridad Antes de continuar, es necesario tener claro algunas ideas clave sobre la seguridad de los sistemas informáticos. De forma resumida, las más importantes son: No existen sistemas completamente seguros. El objetivo es conseguir un sistema suficientemente seguro teniendo en cuenta las necesidades específicas de cada caso. La seguridad es un proceso continuo que requiere participación universal. A continuación se desarrollan estas ideas con más detalle. No existen sistemas seguros al 100% Efectivamente, no existen sistemas completamente seguros. Todos los sistemas informáticos pueden ser comprometidos o, dicho de otro modo, cualquier sistema informático puede acabar comportándose de forma diferente a como de él se espera. Existen diferentes motivos por los que se puede producir este comportamiento anómalo. Por supuesto, puede haber fallos no intencionados del soporte físico, o hardware; del soporte lógico, o software; o de los propios usuarios). Los fallos pueden ser causados también por las condiciones del entorno: temperatura excesiva, polvo en el ambiente, vibraciones... Así mismo, pueden ocurrir accidentes naturales (incendios, inundaciones...). Pero lo que es necesario tener presente es que un atacante, si tiene suficientes conocimientos y dispone los recursos que necesita, con el tiempo adecuado siempre logrará tener éxito. Por lo tanto, hay que tener en cuenta que el objetivo del profesional de seguridad no puede ser garantizar una seguridad 100%, sino ayudar a alcanzar y mantener un nivel de seguridad adecuado. Necesidad de un compromiso Puesto que no existe la seguridad absoluta, el objetivo debe ser garantizar una seguridad adecuada, buscando un compromiso entre el coste de las medidas de seguridad y los beneficios derivados de aumentar la seguridad del sistema. La seguridad es un proceso La única manera de conseguir mantener un cierto nivel de seguridad es mantener una actividad constante que incluya tres facetas complementarias: la prevención, la detección y la reacción. Sin este proceso continuo, las medidas de prevención irán siendo menos efectivas a medida que se descubran nuevos errores y/o vías de ataque. Pero, además, sin un proceso continuo de detección y reacción, las medidas preventivas resultarán poco eficaces, ya que el atacante tendrá tiempo de irlas descubriendo y evitando una a una. Es necesaria la participación universal Todas las personas de la empresa u organización deben ser conscientes de la importancia que sus acciones tienen para la seguridad del sistema. Lógicamente, los administradores suelen estar especialmente concienciados de que una configuración incorrecta puede permitir que el sistema sea comprometido. Pero igualmente importante es que los usuarios sepan que al hacer clic sobre un adjunto pueden estar permitiendo la entrada de programas maliciosos (malware) en su sistema, o que al contestar a un desconocido por teléfono pueden estar dándoles la información que necesitan para progresar en su ataque. Requisitos de seguridad La palabra seguridad, incluso cuando se refiere a sistemas informáticos, puede tener implicaciones muy diferentes en función del contexto. Por eso, antes de avanzar en el curso resulta conveniente conocer los diferentes requisitos relacionados con la seguridad que se exigen a los sistemas informáticos. Los requisitos tradicionales de la seguridad son: secreto o confidencialidad, integridad y disponibilidad. No obstante, también es necesario conocer otros requisitos como la autenticación, el no repudio, la auditabilidad o la privacidad. Secreto o confidencialidad Consiste en evitar el acceso a la información a personas no autorizadas. Supone, lógicamente, que las personas sin autorización no puedan leer un documento, un correo electrónico o cualquier otro tipo de datos: patentes industriales, secretos de estado, registros médicos... Pero también supone evitar que se pueda saber incluso que la información existe. Por ejemplo, el simple hecho de saber que existen registros médicos (o su número, o su frecuencia, o sus fechas) de una persona, permite inferir información que puede ser sensible. Integridad Supone garantizar que la información solamente se modifica de forma adecuada. Es decir, que solamente realizan modificaciones los usuarios autorizados y que las modificaciones mantienen la consistencia de la información. Por ejemplo, que solamente quien tenga la autorización pertinente puede modificar el saldo de una cuenta corriente; pero también que, si esta modificación es el resultado de una transferencia, el dinero se descuenta de la cuenta de origen y se añade en la de destino. Disponibilidad Requiere garantizar que los sistemas estarán disponibles (ofreciendo el servicio esperado) para los usuarios autorizados. Por eso, los ataques contra la disponibilidad de los sistemas se conocen como ataques de denegación de servicio, pues su objetivo es evitar que los usuarios autorizados puedan utilizarlo (por ejemplo, un ataque contra un buscador o cualquier otro servicio ofrecido a través de Internet). Autenticación Consiste en poder confirmar la identidad de un sujeto. El ejemplo más habitual es la introducción de usuario y contraseña para comenzar a utilizar sistema o servicio web. No repudio o responsabilidad (accountability) Supone poder confirmar que un sujeto ha realizado una acción. O, dicho de otra forma, que un sujeto no pueda refutar con éxito que la ha realizado. Auditabilidad Requiere que sea posible trazar las acciones realizadas sobre un objeto. Eso supone que queden registradas todas las operaciones que se realicen. Privacidad Aunque está relacionada con la confidencialidad, consiste en poder decidir qué información se comparte y con quién, algo especialmente relevante a la hora de usar servicios de Internet. Test de autocomprobación 1 Prueba realizada Tu resultado en el test ha sido: 100% Has superado el test. Tus respuestas ¿Cuáles de los siguientes elementos se relacionan con la seguridad de los sistemas informáticos? El comportamiento esperado del sistema Poder depender del ordenador Lo que el sistema no debe hacer Todo lo anterior Un sistema es seguro si podemos depender de que se comporte de la forma esperada, lo que supone que realice las acciones que se esperan de él (como servir páginas web) y, también, que no realice acciones inesperadas, como servir código malicioso. ¿Es posible garantizar la seguridad absoluta de un sistema informático? Sí No Es difícil Solamente en determinadas circunstancias No es posible dar garantías absolutas en cuanto a seguridad. Un atacante con suficientes conocimientos y recursos siempre podrá llegar a tener éxito. ¿Qué significa que la seguridad requiere participación universal? Que el responsable de seguridad debe participar en todo Que todos los administradores deben colaborar en la seguridad Que todos los usuarios deben conocer la importancia que sus acciones tienen para la seguridad del sistema Que solamente se pueden tomar medidasde seguridad por votación universal El nivel de seguridad de un sistema depende de su componente más débil. Cualquier usuario, no solamente los administradores pueden suponer un problema para la seguridad del sistema. Por ejemplo, puede usar una contraseña débil o instalar programas de fuentes no fiables. ¿Cuáles son los tres requisitos básicos de la seguridad? Confidencialidad, auditabilidad e integridad Integridad, disponibilidad y confidencialidad. Confidencialidad, integridad y privacidad Integridad, auditabilidad y no repudio. Los tres requisitos básicos son confidencialidad, integridad y disponibilidad; aunque auditabilidad, privacidad y no repudio también son requisitos de seguridad. Vulnerabilidades Se puede definir una vulnerabilidad como una debilidad en el sistema. Es decir, algún punto débil que, si alguien lo encuentra, puede ser usado para conseguir que el sistema se comporte de forma diferente a la esperada. Las vulnerabiliades pueden existir tanto en los procedimientos, como en el diseño y la implementación. Vulnerabilidades en los procedimientos Son puntos débiles en los procedimientos (no necesariamente informáticos) que se utilizan en el trabajo (empresas, organizaciones) o en la vida personal. Por ejemplo, que el procedimiento en una empresa para recuperar una contraseña olvidada sea llamar por teléfono. Un atacante podría aprovechar este procedimiento para conseguir establecer una contraseña de su elección en una de las cuentas. El ataque será más o menos sencillo en función de detalles del procedimiento tales como si es necesario usar un teléfono corporativo o está permitido llamar desde cualquier número, si se conocen todos en la empresa, o si se solicita algún mecanismo de identificación adicional. Vulnerabilidades en el diseño Son puntos débiles del diseño del sistema. Por ejemplo, un sistema puede estar diseñado para usar contraseñas de un máximo de 8 caracteres. En este caso el atacante puede aprovechar este hecho para tratar de adivinar la contraseña o para probar todas las contraseñas posibles (ataque por fuerza bruta). El ataque será más o menos sencillo en función de cómo se eligen las contraseñas (para tratar de adivinarla) o de la velocidad con la que sea posible probar contraseñas (fuerza bruta). Vulnerabilidades en la implementación Aparecen cuando los puntos débiles se deben a que la implementación no se ajusta al diseño. Por ejemplo, el diseño permite contraseñas de longitud arbitraria, pero la implementación solamente almacena los primeros 8 caracteres, bien por limitaciones de los componentes utilizados, bien por un fallo de implementación. Amenazas Se puede definir amenaza como el conjunto de circunstancias que puede causar un comportamiento no deseado del sistema. Las amenazas son peligrosas en tanto en cuanto existen punto débiles (vulnerabilidades) que permiten que se produzca el daño (comportamiento no esperado del sistema). Los dos principales tipos de amenaza son las naturales y las humanas. Amenazas debidas a causas naturales Lógicamente, los fenómenos naturales como fuegos, inundaciones o terremotos pueden causar comportamientos no deseados de los sistemas. Por este motivo, los sistemas críticos suelen estar replicados y distantes entre sí, para reducir al máximo las interrupciones del servicio. Otras causas naturales son menos llamativas, pero pueden ser igual de efectivas a la hora de causar daño. Por ejemplo, ordenadores funcionando en salas con polvo, temperatura excesiva o vibraciones fallarán con mayor facilidad que los que trabajan en entornos más favorables. Amenazas debidas a las personas En esta categoría entran tanto las causas involuntarias como voluntarias, tanto de personal de la organización como externa a ella. Las involuntarias se deben habitualmente a errores en el trabajo con los sistemas informáticos (por ejemplo, un administrador de sistemas que realiza un borrado recursivo por error) como errores al usar los servicios ofrecidos (por ejemplo, un usuario que da de baja su cuenta por error). En cambio, las voluntarias hacen referencia a personas que tienen interés en provocar que los sistemas informáticos se comporten de forma diferente a la prevista. En este caso, se trata de actividades maliciosas que tienen el carácter de ataque al sistema. En función de quién realice el ataque, se habla de amenazas internas o externas. Las amenazas internas se deben a personal interno o a posibles ataques lazados desde dentro de la organización. A este grupo corresponden las amenazas debidas a personal resentido con la empresa (por ejemplo, a causa de un despido) o que haya podido ser sobornado o coaccionado a realizar actividades maliciosas. Estas personas disponen de conocimiento del funcionamiento interno de los sistemas y, muchas veces, de acceso autorizado al sistema. También pertenecen a este grupo las amenazas de posibles ataques que se lancen desde dentro de la empresa. Evidentemente, pueden ser debidos a usuarios autorizados con comportamiento malicioso (grupo anterior). No obstante, esta participación no es imprescindible. En efecto, un ordenador corporativo puede haber sido comprometido sin participación ni conocimiento de su dueño (por ejemplo, por haber visitado un sitio web ya comprometido, por abrir un adjunto de correo electrónico...). A esta categoría pertenecería también el uso de dispositivos propios en el entorno corporativo (BYOD, bring your own device). Las amenazas externas se corresponden con posibles ataques lanzados desde fuera de la empresa u organización. Evidentemente, ataques que inicialmente son externos pueden convertirse en internos en cuanto consiguen control de cualquier sistema corporativo, especialmente de aquéllos menos protegidos (por que se considera que al no ofrecer servicios o no disponer de información sensible no serán objeto de ataque). Independientemente de si son internas o externas, es interesante también distinguir entre amenazas aleatorias y dirigidas. Las amenazas dirigidas son las que tienen un objetivo específico. Por ejemplo, una persona o empresa en particular. Normalmente, los ataques asociados suelen tener una mayor preparación previa y contar con más recursos. En cambio, las aleatorias son aquéllas que se lanzan en busca de sistemas vulnerables, realizando barridos a través de redes enteras (incluso a toda Internet). Normalmente este tipo de ataques tiene como objetivo tomar control de sistemas poco protegidos como paso previo para la realización de otro tipo de actividades maliciosas. Estos sistemas intermedios pueden ser agregados en grandes redes (botnets) controladas remotamente para realizar ataques masivos (DDOS, ataque por fuerza bruta a contraseñas, captura de credenciales bancarias...). Además, estos sistemas intermedios siven para dificultar la identificación del origen real de los ataques. Tipos de ataques y atacantes Dento de las amenazas con origen malicioso, conviene continuar la tarea de clasificación para conocer mejor a qué se enfrentan los sistemas. En este sentido, se distinguen entre diferentes tipos de ataques y de atacantes. Atacante humano frente a ataque automatizado Uno de los aspectos importantes a tener en cuenta es que, cada vez más, los ataques son, en gran medida, automatizados. Es decir, no los realiza una persona de forma interactiva, paso a paso, a ritmo humano. Al contrario, los ataques son lanzados mediante programas que trabajan al ritmo que permiten los ordenadores. Esto significa que la reacción tiene que ser también automática, pues desde que se encuentra una vulnerabilidad hasta que el sistema ha sido completamente comprometido pueden pasar unas pocas décimas de segundo. Incluso en los ataques iniciados por una persona que prueba inicialmente el sistema y, en función de lo que encuentra continúa avanzando, el atacante tendrá habitualmente preparados programas para lanzar en el momento adecuado para evitar ser detectado o ser expulsadodel sistema antes de haberse garantizado acceso continuado al sistema (por ejemplo, mediante la instalación de puertas traseras y/o troyanos). Frecuencia, severidad y APTs Otro aspecto relevante es la frecuencia con la que se pueden esperar los ataques y la intensidad de los esfuerzos tras dichos ataques. Los ataques más frecuentes son los no dirigidos, que continuamente exploran las redes en busca de sistemas poco protegidos (low hanging fruit, como se dice en inglés). No obstante, la intensidad de los ataques no hace sino aumentar, ya que los beneficios económicos detrás de ataques con éxito dependen de la importancia de los sistemas y, como ya se ha discutido, la información que los sistemas manejan es cada vez mayor y más sensible, la dependencia de los sitemas es también cada vez mayor y, cada vez más, incluyen instalaciones y servicios críticos (electricidad, agua, transportes, instalaciones industriales...). Es precisamente este aumento del número de sistemas interconectados y de su importancia estratégica para personas, empresas, organizaciones, estados..., lo que ha causado la aparición de lo que se han denominado APTs, Advanced Persistent Threats, o, en castellano, Amenazas Avanzadas Persistentes. Las APTs se caracterizan por corresponderse con ataques avanzados. Es decir, con gran cantidad de recursos, con un elevado nivel de sofistificación y de conocimiento y claramente dirigidos a un cierto objetivo. Pero, al mismo tiempo, con un interés en permanecer ocultos, pasando inadvertidos, de forma que se pueda mantener la actividad en los sistemas comprometidos durante meses o años, sin ser descubiertos. Esto hace de ellos ataques persistentes, claramente relacionados con objetivos a largo plazo, muchas veces relacionados con el espionaje (industrial, económico, de personas o estados...). Tipos de atacantes Sin tratar de ser exahustivos, los atacantes pueden ser: Individuos. Inicialmente, la mayor parte de ataques tenía su origen en individuos que simplemente tenían curiosidad y ganas de aprender, o que lo hacían por diversión o desafío. Hoy en día, la presión económica (hay gente dispuesta a pagar a las personas con estas habilidades) hace que la mayor parte de ataques tengan una motivación económica o de venganza, pues ya nadie considera como inocuas o loables este tipo de actvidades. Grupos de personas. De forma similar a los atacantes individuales, pero más o menos organizados, muchas veces con financiación externa. El crimen organizado. La rentabilidad económica de los ciberataques, junto con la dificultad que tienen las fuerzas del orden para perseguir internacionalmente estas actividades, hace que muchas organizaciones criminales opten por incluir la ciberdelincuencia entre sus fuentes de ingreso. Terroristas. La dependencia cada vez mayor de sistemas informáticos y la posibilidad de, mediante ciberataques, causar daño o terror (apagones, accidentes de todo tipo...), hace que los terroristas comiencen a optar por esta vía de actuación. Estados. También los estados están involucrados cada vez más abiertamente en actividades de ciberespionaje, ciberataque y ciberdefensa. Riesgo Para establecer el nivel de seguridad adecuado para un sistema, es necesario hacer una estimación del riesgo al que debe hacer frente. Aunque la estimación de riesgos queda fuera de los objetivos de este curso, de forma informal, resulta útil definir el riesgo como una función de cuatro elementos: vulnerabilidades, amenazas, probabilidad e impacto. Vulnerabilidades. Un análisis de vulnerabilidades es la base para conocer los puntos débiles del sistema y, por tanto, un factor esencial a la hora de calcular el riesgo. Hay que tener en cuenta que continuamente se descubren vulnerabilidades en las aplicaciones, protocolos y sistemas que se utilizan, por lo que es necesaria una actualización periódica. Amenazas. Dependiendo de la función del sistema, de la información que gestiona y de la activiadad de la empresa u organización, será necesario estimar qué tipo de amenazas son de aplicación a cada caso concreto. Probabilidad. Es la probabilidad de que las vulnerabilidades sean explotadas en la práctica. Esta probabilidad será mayor cuanto más fácilmente explotable sea una vulnerabilidad, pero también cuanto mayor sea el nivel de amenaza. Impacto. En caso de que un ataque tenga éxito, ¿qué consecuencias tendría? Es conveniente destacar que es fácil subestimar el impacto, pues es necesario tener en cuenta todos los posibles efectos perniciosos que un ataque puede causar (interrupción total o parcial de la actividad de la empresa, clientes insatisfechos, pérdida de credibilidad, pérdida de oportunidades...). Aunque están claramente relacionadas con los cuatro factores que se acaba de discutir, resulta útil tener en cuenta los siguientes aspectos adicionales: Todos los sistemas están bajo amenaza. Como ya se ha discutido, aunque no sean un objetivo en sí mismo, cualquier sistema es útil para algún tipo de atacante. A modo de ejemplo, se pueden usar para incluirlo en botnets, para ocultar el origen real de un posterior ataque o como paso previo para un ataque mayor. Pueden, y probablemente existirán, vulnerabilidades que solamente conoce el atacante (vulnerabilidades de día cero). Estas vulnerabilidades tienen su propio mercado negro y se mantienen ocultas hasta que son utilizadas. La probabilidad de sufrir un ataque es, probablemente, mayor que la estimada. (Ver los dos ítems anteriores). El impacto será, probablemente, mayor de lo estimado. Test de autocomprobación 2 Prueba realizada Tu resultado en el test ha sido: 50% No has mejorado tu anterior nota de 50. Has superado el test. Has agotado todos los intentos para superar el test. Tus respuestas ¿Cuáles de los siguientes elementos son vulnerabilidades? La recuperación de contraseña se hace mediante preguntas personales. La información almacenada en el sistema es muy importante. Llega una ola de calor de varios días. El sistema solamente comprueba los primeros 6 caracteres de la contraseña. ¿Cuáles de los siguientes elementos son amenazas? No existen copias de seguridad. El polvo. Un administrador que destruye datos. Un programa que analiza los sistemas para construir una botnet. ¿Cuáles de las siguientes afirmaciones son ciertas? Los ataques son cada vez más automatizados. El número, la frecuencia y la intensidad de los ataques da signos de empezar a remitir a medida que los sistemas se hacen más seguros. Las empresas no necesitan preocuparse de las APTs. Las APTs se caracterizan por tratar de pasar inadvertidas. El crimen organizado está detras de algunos ciberataques. Los ataques no dirigidos suelen estar todos automatizados, buscando sistemas fáciles de comprometer. En los ataques dirigidos, incluso en aquéllos iniciados por una persona, suele usarse programas para partes críticas como la ocultación de presencio o garantizarse el acceso posterior. El número, la frecuencia y la intensidad de los ataques no hace sino aumentar, motivado principalmente por el mayor uso de los sistemas informáticos. Existen ejemplos en prensa de empresas que han recibido ataques tipo APTs, sobre todo relacionados con el espionaje industrial. Una de las características de las ¿Cúales son los elementos básicos en la estimación del riesgo? Vulnerabilidades, ataques, éxito y probabilidad. Impacto, probabilidad, amenazas y vulnerabilidades. Amenazas, ataques, y vulnerabilidades. Motivo, oportunidad y medios. El proceso de la seguridad "La seguridad es un proceso". Esta frase, acuñada por Bruce Schneier hace unos años, sigue teniendo plena vigencia hoy en día. Tal y como se vio al introducir el concepto de seguridad, mantener un cierto nivel de seguridad exige, efectivamente, un proceso continuo de mejora que incluya las siguientes fases: análisis, prevención, detección y respuesta. Estas etapas son complementarias entre sí y, realizadas adecuadamentecrean un círculo virtuoso que permite mantener la seguridad a lo largo del tiempo. La primera etapa, el análisis de riesgos, ya ha sido analizada en el apartado anterior y, como allí se discutía, el nivel de riesgo cambia con el tiempo. Efectivamente, continuamente se descubren nuevas vulnerabilidades en los sistemas y también cambian las amenazas, normalmente porque aparecen nuevas amenazas o porque se hacen más intensas las ya existentes. Además, las empresas y organizaciones tampoco pueden mantenerse estáticas: cambian sus mercados, sus productos, sus servicios, sus objetivos... Todo ello hace que también cambien el impacto y la probabilidad; y, por tanto, también lo hace el riesgo. Las otras tres etapas son las que, realizadas de forma adecuada, permitirán detectar los intentos de intrusión y reaccionar ante ellos minimizando el impacto, al mismo tiempo que se aprende y se mejoran los mecanismos y procedimientos relacionados con la seguridad, tal y como se discute en los apartados siguientes. Prevención En esta fase se realizan dos tareas complementarias. Por una parte, se debe configurar adecuadamente el sistema para protegerlo frente a los ataques conocidos. Por otra, se debe preparar al sistema para detectar y responder frente a los ataques que se producirán. Configuración adecuada del sistema Supone configurar el sistema para que se comporte exactamente como de él se espera. Tal y como se explicó al definir la seguridad informática, esto tiene dos vertientes: que el sistema ofrezca los servicios que de él se espera y que, por otra parte, no pueda ser utilizado para otros propósitos (como obtener información no autorizada o atacar a terceros). Para ello es conveniente seguir las recomendaciones de buenas prácticas existentes. Las recomendaciones más habituales son: Instalar versiones recientes de software Es recomendable instalar versiones recientes del software. Efectivamente, cuando se descubren nuevas vulnerabilidades, éstas se corrigen en las versiones posteriores del software. Por tanto, las versiones antiguas suelen incluir más vulnerabilidades que las recientes. No obstante, cuando se añade nueva funcionalidad o se realizan cambios significativos en un sistema, es habitual que se introduzcan nuevas vulnerabilidades. Por este motivo, en sistemas en los que se desee mantener un elevado nivel de seguridad conviene esperar un tiempo antes de desplegar versiones con cambios significativos. Instalar los parches disponibles En muchos casos, cuando se descubren nuevas vulnerabilidades, éstas se solucionan realizando pequeños cambios sobre las versiones recientes del software. Estos cambios reciben el nombre de parches y es recomendable instalarlos lo antes posible, pues una vez se publica una vulnerabilidad se abre una ventana de tiempo en la que los sistemas tienen una elevada probabilidad de ser atacados. Si bien es cierto que, a veces, los parches pueden provocar a su vez problemas, en general, es recomendable su aplicación inmediata. En el caso de sistemas críticos, se recomienda aplicar primero los cambios en el entorno de desarrollo, para detectar estos posibles problemas antes de aplicar los parches al sistema de producción. Instalar la mínima cantidad de software posible Esta recomendación es, quizá, la que más autocontrol exige, ya que los sistemas actuales incluyen espacio de sobra para hacer una "instalación completa" y así, de paso, tener el sistema preparado para el futuro, por si hay que dotarle de más funcionalidad. Sin embargo, hacer una "instalación mínima" tiene múltiples ventajas: El mantenimiento del sistema es más sencillo, porque es necesario actualizar menos componentes. Tener software instalado supone un riesgo, especialmente software que requiere privilegios elevados para su ejecución. Una vulnerabilidad en un componente instalado, aunque no esté en ejecución, puede ser usada para escalar privilegios. Resulta más sencillo (y rápido) detectar cambios en el sistema, ya que hay menos elementos que comprobar. En caso de ser comprometido el sistema, el atacante dispone de menos herramientas para causar daño. Por ejemplo, si no hay herramientas de desarrollo y necesita compilar un programa deberá instalarlas primero. Esto supone una ventana de tiempo adicional en la que la intrusión puede ser detectada y tratada. Además, el propio hecho de descargar software adicional puede hacer saltar una alarma que, de otra forma, no hubiera saltado. Preparación para la detección y tratamiento de intrusiones Hoy en día, hay que contar que todos los sistemas serán atacados. Además, ya se ha justificado que no existen sistemas 100% seguros. Por lo tanto, antes de conectar nuestro sistema a la red es necesario prepararlo para cuando sea atacado. Caracterización del sistema Una de las tareas fundamentales es caracterizar el sistema para ser capaces de reconocer ataques o problemas nuevos o inesperados. Para ello es necesario: Definir el comportamiento esperado con precisión suficiente como para que sea posible detectar desviaciones significativas. Identificar la información necesaria para detectar las intrusiones y poder averiguar cómo se producen. Seleccionar, instalar y configurar los mecanismos de recopilación de información (por ejemplo, registros de actividad). Herramientas de respuesta Otra tarea fundamental es dotar al sistema de las herramientas adecuadas para el tratamiento de las intrusiones. Esto supone seleccionar, instalar y comprender las herramientas de respuesta. Aunque se pueda pensar otra cosa, el momento adecuado para la preparación de estas herramientas es antes de el sistema sea atacado, cuando hay tiempo para reflexionar, analizar y planficar. De esta forma será posible contener el daño y responder en el menor plazo de tiempo posible. Procedimientos de actuación Al igual que con las herramientas de detección y respuesta, los procedimientos para la detección y el tratamiento de incidentes deben ser definidos a priori, de forma que los implicados los conozcan, los comprendan y, por tanto, puedan aplicarlos con rapidez y eficacia llegado el caso. Detección Esta fase comienza cuando el sistema se pone "en producción", es decir, cuando comienza a realizar su tarea. Aunque desde el punto de vista del usuario comienza la vida útil del sistema, desde el punto de vista de la seguridad es la fase del proceso continuo en la que se monitoriza el comportamiento del sistema y se analiza si es necesario realizar cambios. Monitorización El objetivo de esta actividad es poder detectar los ataques que se produzcan para poder reaccionar a tiempo. En el mejor de los casos, las medidas preventivas serán suficientes para evitar que el ataque tenga éxito. Cuando no es así, la monitorización permitirá detectar y tratar la intrusión lo antes posible, limitando así el daño causado. Esta actividad presenta, además, ventajas adicionales, ya que permite detectar todo tipo de situación anómalas, como sistemas de ficheros que están cerca de llenarse, discos que están a punto de fallar, fallos de configuración de las aplicaciones, saturación de las redes... Necesidad de cambios Durante el funcionamiento normal del sistema, incluso cuando no hay ataques con éxito, es necesario muchas veces realizar cambios en el sistema. Algunos ejemplos son: Avisos externos de vulnerabilidades. Cuando se descubre una vulnerabilidad, las listas especializadas (CVE, CERTs...) lanzan avisos de seguridad. Incluso antes de que haya parches que resuelvan la debilidad, puede ser necesario tomar medidas para mitigar el riesgo, como ajustar la configuración o aumentar las restricciones de acceso temporalmente. Disponibilidad de nuevos parches. Como ya se ha comentado, es recomendable aplicar los parches lo antes posible, siempre previendo la posibilidad de efectos secundarios. Disponibilidad de nuevas versiones de software. Con el tiempo, será necesario planificar el cambio a versiones conmayor funcionalidad para poder ofrecer un mejor servicio a los usuarios. Aunque ya se ha discutido el riesgo implicado, llegará el momento en el que los beneficios justifiquen el cambio. Cambios en los requisitos del sistema. Lógicamente será necesario adaptar el sistema a las nuevas necesidades de clientes, o a los nuevos objetivos que se marque la empresa u organización. Respuesta Una vez se detecta una intrusión, es necesario reaccionar rápidamente para recuperar el funcionamiento normal del sistema. Una vez conseguido, sin embargo, no debe finalizar en este punto el tratamiento del incidente, sino que se debe identificar lo aprendido para mejorar. Recuperar el funcionamiento normal del sistema Esta fase es la de las urgencias, pues se tiene un sistema en el que no se puede confiar. La rapidez y efectividad con que pueda ser tratado el incidente depende, sobre todo, de la fase de prevención y, en particular, de las herramientas y procedimientos que se hayan previsto para el tratamiento de incidentes. Los pasos principales son los siguientes: Establecer el alcance del daño. Es necesario averiguar qué elementos del sistema han sido comprometidos y en cuáles se puede confiar todavía. Contener los efectos. Es decir, evitar que el daño se propague. Por ejemplo, evitar que el intruso pueda escalar privilegios y llegar a ser administrador, que pueda comprometer otros sistemas... Eliminar la posibilidad de nuevas intrusiones. Usando las herramientas y la información disponible (registros de sistema, trazas de red...), averiguar cómo se ha producido la intrusión y cómo evitar que se vuelva a producir, asegurándose además de que el atacante no ha dejado tras de sí puertas traseras u otros mecanismos de control del sistema. Devolver el sistema a su funcionamiento normal. Tras cerrar las vulnerabilidades que han sido explotadas, será necesario usar copias de seguridad o los mecanismos establecidos para volver al comportamiento esperado del sistema. Aprovechar para mejorar Una vez recuperado el funcionamiento normal del sistema hay tiempo para realizar una reflexión más profunda sobre el incidente, identificar lo aprendido y usarlo para mejorar la seguridad del sistema. En esta fase final del tratamiento del incidente sería recomendable: Comunicarse con otros afectados. Esto permite obtener información complementaria y saber más sobre lo que realmente ha ocurrido. Por ejemplo, ¿ha sido un ataque dirigido exclusivamente contra una organización?, ¿se ha utilizado en todos los nodos las mismas vías de entrada? Reunirse para identificar lo aprendido. Realizar una puesta en común dentro de la organización para correlar diferentes fuentes de información, tales como el administrador de sistemas, el de base de datos, el del servidor de aplicaciones... De esta forma será posible dejar por escrito qué es lo que ocurrió exactamente, qué se hizo para tratar el incidente y qué se podría haber hecho mejor. Actualizar el análisis de riesgos, las políticas y los procedimientos. A partir de lo aprendido, es posible se puedan mejorar aspectos como la estimación del riesgo, la política de seguridad y los procedimientos para aplicarla y comprobar que se cumple. Actualizar la configuración de las herramientas y/o seleccionar herramientas nuevas. A partir de lo ocurrido y de los cambios en políticas y procedimientos será necesario mejorar las medidas preventivas y de tratamiento de incidentes. Módulo 1. Introducción a la seguridad informática Prueba realizada Tu resultado en el test ha sido: 100% Has superado el test. Tus respuestas ¿Cuál de las siguientes afirmaciones es más acertada? Una vez asegurado, un sistema permanece seguro si no se hacen cambios. Mantener un determinado nivel de seguridad exige trabajo continuo. El proceso de la seguridad termina con la puesta en producción del sistema. El proceso continuo debilita la seguridad. Puesto que no es posible garantizar la seguridad completa de un sistema, es necesario ser capaz de detectar y tratar los intentos de intrusión. Además, el riesgo cambia continuamente con la aparición de vulnerabilidades y nuevas amenazas. Por todo ello, mantener un cierto nivel de seguridad exige un proceso continuo que incluya el anaĺisis, la prevención, la detección y la respuesta o tratamiento de incidentes. ¿Cuáles de las siguientes afirmaciones son ciertas? Las herramientas para el tratamiento de incidentes deben ser seleccionadas una vez se hayan producido, para así elegir la más adecuada. La monitorización también permite detectar problemas no relacionados con la seguridad. Los sistemas solamente deben mejorar si tiene éxito un ataque El tratamiento de incidentes finaliza con la recuperación del funcionamiento normal del sistema. ¿Cuáles de las siguientes afirmaciones son ciertas? Instalar solamente el software que se necesita no aumenta realmente la seguridad del sistema; pero es importante porque ahorra espacio. Es importante instalar los parches tan pronto como sea posible. Es recomendable realizar una "instalación completa" (incluir todo el software disponible), para así tener el sistema preparado para cualquier eventualidad. Instalar únicamente el software estrictamente necesario facilita la prevención, la detección y el tratamiento de intrusiones. Cuando se publican los parches, es habitual que aparezca malware actualizado que trata de explotar las vulnerabilidades que los parches resuelven, por lo que es importante aplicarlos lo antes posible (siempre teniendo cuidado de realizar las pruevas previas que sean pertinentes). Instalar únicamente lo necesario permite reducir riesgos, por lo que facilita la prevención. También facilita la detección y el tratamiento de intrusiones, ya que hay menos cambios que revisar (tanto para la detección como para el análisis posterior). Además, dificulta la escalada de privilegios y el ataque a otros sistemas (pues hay menos herramientas instaladas), aumentando la posibilidad de detectar intrusiones y la facilidad para contener los daños durante su tratamiento. Definición de seguridad informática Primeras ideas sobre la seguridad No existen sistemas seguros al 100% Necesidad de un compromiso La seguridad es un proceso Es necesaria la participación universal Requisitos de seguridad Secreto o confidencialidad Integridad Disponibilidad Autenticación No repudio o responsabilidad (accountability) Auditabilidad Privacidad Test de autocomprobación 1 Vulnerabilidades Vulnerabilidades en los procedimientos Vulnerabilidades en el diseño Vulnerabilidades en la implementación Amenazas Amenazas debidas a causas naturales Amenazas debidas a las personas Tipos de ataques y atacantes Atacante humano frente a ataque automatizado Frecuencia, severidad y APTs Tipos de atacantes Riesgo Test de autocomprobación 2 El proceso de la seguridad Prevención Configuración adecuada del sistema Instalar versiones recientes de software Instalar los parches disponibles Instalar la mínima cantidad de software posible Preparación para la detección y tratamiento de intrusiones Caracterización del sistema Herramientas de respuesta Procedimientos de actuación Detección Monitorización Necesidad de cambios Respuesta Recuperar el funcionamiento normal del sistema Aprovechar para mejorar Módulo 1. Introducción a la seguridad informática
Compartir