Sistemas distribuidos

Recomendaciones de seguridad en Sistemas Distribuidos 3

14. Descargas de software de Internet

Como regla general, el software no debería ser descargado de Internet, sino adquirido de una fuente confiable. Sin
embargo en muchos casos esto es imprescindible por lo que deberíamos seguir algunas reglas mínimas para no
terminar descargando un virus o un "caballo de Troya".

En primer lugar, debemos asegurarnos que el software que descargamos es realmente lo que hemos pretendido
descargar. La idea es que un atacante podría modificar los datos que estamos recibiendo e introducir modificaciones
en aquello que descargamos. Luego nosotros confiadamente ejecutamos el archivo en cuestión y... la historia es
conocida.

Para evitar esto, cada vez con mayor frecuencia los portales de descarga incluyen una serie de alternativas para
verificar que lo que hemos descargado no ha sido alterado. Un método común consiste en el "checksum MD5" que el
usuario debería aplicar a todo archivo que descargue, a fin de obtener una especie de "firma" que ha de coincidir con
la que se anuncia en el portal.

Es asimismo muy recomendable que los portales de descarga utilicen certificados digitales, de modo que no seamos
presas de un portal ficticio implementado por atacantes (esto último es realmente es muy difícil, pero no imposible.)

15. Establecer planes de contingencia y sistemas de respaldo

No existe ninguna garantía de que nuestro sistema sea invulnerable. Más allá de las medidas que podamos adoptar,
siempre existirá la posibilidad de ser atacados. Esto nos obliga a tener presentes ciertas medidas de contingencia
traducidas preferentemente en políticas de seguridad bien establecidas.

En otras palabras, debemos imaginarnos sucesivamente un conjunto de escenarios de ataques exitosos. ¿Qué hacemos si...

• Sospechamos que un hacker está atacando el firewall
• Sospechamos que ya ha tomado control del firewall
• Comprobamos que ya ha tomado control del firewall
• Sospechamos que el servidor de base de datos ha sido alterado
• Descubrimos que las PCs Windows han sido infectadas con un virus

Las posibilidades evidentemente son muchas, y las acciones a tomarse también. Sin embargo es mejor tener esto por
escrito a no tener absolutamente nada el día que las quejas sobre sucesos extraños en el sistema empiecen a acaecer.
Ahora bien, cualquier administrador medianamente decente tendrá establecida una política de backups para
situaciones críticas. En el caso de ataques a través de la red las consecuencias pueden obligar a requerir de estos
backups, por lo que es imperativo que éstos estén actualizados y preparados para su uso.

Este tipo de análisis no debe ser extraño puesto que los sistemas pueden tener problemas por múltiples motivos que
no tienen nada que ver con los ataques (por ejemplo, un fallo de hardware) que deberían también poseer planes de
contingencia.

Los administradores más minuciosos podrían efectuar simulacros de desastres: No hay nada más frustrante en medio
de un desastre que descubrir que los backups diarios nunca se grabaron por problemas en la unidad de cinta.

16. Mantener contacto con el proveedor de líneas de comunicación

Diversos problemas pueden aparecer en las comunicaciones desde nuestra red hacia el exterior en los cuales sólo el
proveedor del enlace puede ayudarnos. Ciertos tipos de ataques necesitan de la participación de uno o más
proveedores de Internet para paliarlos, como son ciertos tipos de ataque DoS (Deny of Service) ante los que nuestro
firewall podría quedar indefenso. Sólo mediante el concurso de uno o más nodos de alto nivel del Internet se podría
bloquear al atacante [18],[19],[20]. Por suerte los ataques más sofisticados de este tipo no son muy frecuentes.

17. No permitir conexiones directas desde la red interna a Internet

Asumimos que en Internet están los malos, y por tanto nuestra red interna no debería tomar contacto con ellos. Sin
embargo el Internet es irresistible e imprescindible para muchas personas de nuestra organización, por lo que
debemos buscar algún mecanismo de protección. Una de las soluciones más generalizadas a este problema la
constituyen los sistemas denominados proxy. En este caso, los usuarios de nuestra red local (a los que protegemos),
se conectan aparentemente a Internet, pero realmente lo hacen hacia nuestro programa proxy. La función de éste es
básicamente conectarse a Internet en beneficio de los usuarios internos que lo solicitan. El resultado es que los
posibles atacantes observarán al proxy conectándose, pero no podrán acceder a la red interna. Obviamente nos
aseguraremos que el proxy esté bien seguro. Esto es más sencillo que cuidar a cada estación con usuarios incautos y
sus sistemas operativos inseguros.

En resumen: cuando sea posible, use proxy para dar acceso a Internet para la red interna.

Los proxys pueden presentar otras ventajas, como ahorro del ancho de banda y mayor velocidad de acceso a las
páginas web más populares (proxy-caché.)

En [21] se puede leer una revisión general acerca de la seguridad de los sistemas en Internet.

18. Uso de red perimétrica o zona desmilitarizada

Si Ud. tiene servidores que dan cara a Internet, entonces deberá permitir ciertas conexiones de el exterior a sus
servidores. Esto es problemático y debe ser controlado.

Muchos especialistas recomiendan mantener estos servidores protegidos mediante firewalls, pero a la vez separados
de la red interna donde se encuentra, por ejemplo, nuestra base de datos. La idea es que estos servidores están en una
zona de peligrosidad intermedia protegidos de Internet, pero no al nivel de nuestro sistema más interno. Es por eso
que se les suele asignar una red especial independiente denominada "perimétrica" o zona desmilitarizada (DMZ) con
la intención de reducir la vulnerabilidad de nuestros datos más importantes mediante el alejamiento de los
computadores que son blanco directo de las conexiones exteriores.

19. Prácticas de programación segura

Si su organización desarrolla software de cualquier tipo, y en especial, si este software dará cara a Internet, entonces
Ud. debería asegurarse de que los desarrolladores conozcan las recomendaciones de seguridad correspondientes al
lenguaje de programación o herramienta de desarrollo empleada así como del ambiente (sistema operativo o red) en
que se ejecutan. De igual modo los diseñadores de la arquitectura deben considerar la seguridad de la misma desde el
principio del proyecto [22],[23],[24]. Los programas que dan cara a Internet son un caso muy especial [25] donde la
seguridad reviste aún más importancia a juzgar por las malas experiencias producidas.

20. Vigilancia

La vigilancia del buen funcionamiento del sistema es un asunto más complicado de lo que parece. El problema es
que los ataques frecuentemente están disfrazados de conexiones más o menos válidas, y por otro lado, los sistemas
de cómputo normalmente no avisan cuando son alterados, a no ser que esto se haya establecido de antemano. Los
ataques generalmente tratan de aparentar que no ha ocurrido nada, a fin de conseguir hacer más y más modificaciones sin ser detectados y detenidos.

Todo esto obliga a considerar de antemano ciertos indicadores que nos ayuden a determinar si un sistema ha sido
comprometido o está en proceso de serlo. Esto en ciertos casos puede requerir mucha sagacidad y un profundo
conocimiento de los mecanismos internos del sistema, así como la activación de una mayor descripción de eventos.

Pero generalmente este análisis no se pone en práctica hasta que los síntomas aparecen y el ataque ya está muy
avanzado, lo que ha motivado el incremento de productos que intentan adelantarse y dar aviso cuando algo anda mal.
A estos sistemas se les conoce como sistemas de detección de intrusiones (IDS o NIDS.) El administrador precavido
hará bien en considerarlos como parte de las medidas de seguridad [26],[27],[28].

21. Establecimiento de políticas

Para terminar, una recomendación que en cierto modo engloba a todas las anteriores. El establecimiento de políticas
corresponde a un mecanismo que permite asegurar que la seguridad se mantenga en todas las situaciones y se deriva
del "compromiso con la seguridad" de la organización. La idea detrás de todo esto es que nadie puede saber de
antemano lo que piensa el administrador o el encargado de la seguridad sin ser informado. Muchas organizaciones no
tienen esto en cuenta y se da el caso en que un gerente se limita a reunir a los empleados y decirles "no hagan nada
que pueda atentar contra la seguridad de la organización, o serán castigados ..." El problema es que la gente
normalmente no piensa en términos de seguridad sino en términos de cumplimiento de obligaciones y logro de
resultados, y el camino más corto no siempre es el más seguro.

Las políticas justamente intentan abordar estos problemas mediante el establecimiento de normas que han de cumplir
todos los miembros de la organización. Las políticas son documentos destinados a personas con responsabilidades
claramente definidas y detallan cuidadosamente su alcance y aplicación. Explican tanto procedimientos informáticos
como logísticos en términos de la jerarquía de la organización [29],[30].

Una ventaja colateral es la posibilidad de identificar responsables en caso de ataques exitosos (¡y así salvar su cabeza
el administrador!)

El cumplimiento de las políticas pasa por hacer tomar consciencia de su importancia a los destinatarios, para lo cual
es imprescindible que su aplicación sea impulsada desde el más alto nivel jerárquico. Es recomendable, por ejemplo,
que sea leída y firmada a modo de compromiso por parte del destinatario, y su difusión puede estar acompañada por
charlas informativas por parte del administrador o del staff responsable.

La actualización responsable de las políticas es crítica para su cumplimiento, por lo que en ciertos casos se indica la
designación de un responsable de las mismas o incluso de un equipo responsable, especialmente durante su
elaboración y establecimiento inicial.

 

Fuente:

Recomendaciones de seguridad en sistemas distribuidos de cómputo
(V0.11)
Diego Bravo Estrada

Si quieres conocer otros artículos parecidos a Recomendaciones de seguridad en Sistemas Distribuidos 3 puedes visitar la categoría SEGURIDAD INFORMATICA.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Subir