Seguridad por oscuridad

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

En criptografía y seguridad informática, la seguridad por oscuridad o por ocultación es un controvertido principio de ingeniería de la seguridad, que intenta utilizar el secreto (de diseño, de implementación, etc.) para garantizar la seguridad. Este principio se puede plasmar en distintos aspectos como por ejemplo:

Un sistema que se apoya en la seguridad por ocultación puede tener vulnerabilidades teóricas o prácticas, pero sus propietarios o diseñadores creen que sus puntos débiles, debido al secreto que se mantiene sobre los entresijos del sistema, son muy difíciles de encontrar, y por tanto los atacantes tienen muy pocas probabilidades de descubrirlos.

La seguridad por oscuridad es, en pocas palabras, una infracción del Principio de kerckhoff, que afirma que un sistema debe ser seguro por su diseño, no porque un adversario no conozca su diseño. La premisa básica del principio de Kerckhoffs es que los secretos dejan de serlo en poco tiempo.

Introducción[editar]

Podría pensarse que esconder una copia de la llave de la casa bajo el felpudo de la entrada sería una buena medida contra la posibilidad de quedar uno atrapado fuera de la casa, por culpa de un olvido o pérdida de la llave de uso habitual. Entonces estaríamos fiándonos de la seguridad por ocultación. La vulnerabilidad de seguridad teórica sería que alguien pudiera entrar en la casa abriendo la puerta con la copia de la llave. Sin embargo, los dueños de la casa creen que la localización de la llave no es conocida públicamente, y que es improbable que un ladrón la encontrara. En este ejemplo, dado que los ladrones suelen conocer los escondites frecuentes, habría que advertir al dueño de la casa contra esta medida.

En la seguridad por oscuridad no se incluyen las medidas que no aportan nada a la mitigación de un problema. Por ejemplo, una organización que bloquea el Protocolo de transferencia de noticias a través de la red (NNTP) de los enrutadores de borde para evitar que los empleados lean grupos de noticias pero que permita el shell seguro (SSH) saliente no se considera seguridad por oscuridad. Debido a que SSH puede abrirse paso en cada protocolo, el problema no esta oculto; la mitigación implementada no puede hacer nada más que evitar que los usuarios legítimos consigan realizar tareas legítimas sin infringir las directivas de seguridad.

Argumentos contra la seguridad por oscuridad[editar]

Muchos argumentan que la seguridad por oscuridad es débil. Si la seguridad de un sistema depende única o principalmente de mantener oculta una debilidad, entonces, claramente, si esa debilidad es descubierta, la seguridad se compromete fácilmente. Se argumenta que mantener ocultos los detalles de sistemas y algoritmos ampliamente utilizados es difícil. En criptografía, por ejemplo, hay un buen número de ejemplos de algoritmos de cifrado que han pasado a ser de conocimiento público, bien por ingeniería inversa (ej. A5/1), bien por una fuga de información (ej. RC4).

Más aún, el mantener algoritmos y protocolos ocultos significa que la revisión de seguridad está limitada a unos pocos. Se argumenta que permitir a cualquier persona revisar la seguridad repercutirá en una pronta identificación y corrección de cualquier fallo o debilidad, hecho que se recoge en la llamada Ley de Linus.

En la práctica[editar]

Los operadores, desarrolladores y vendedores de sistemas que confían en la seguridad por oscuridad a menudo mantienen en secreto que sus sistemas tienen fallos, para evitar crear desconfianza en sus servicios o productos y por tanto, en su imagen de mercado. Es posible que esto pudiera conducir en algunos casos a una representación fraudulenta de la seguridad de sus productos, aunque la aplicación de la ley a este respecto ha sido poco contundente, en parte porque las condiciones de uso impuestas por los vendedores como parte del contrato de licencia redimen (con más o menos éxito) sus aparentes obligaciones bajo el estatuto legal de muchas jurisdicciones que requieren una adecuación para el uso o estándares de calidad similares.

Estas prácticas de seguridad dejan a los usuarios frente a problemas cuando el software que usan está deliberada o accidentalmente ocultado, como ha ocurrido otras veces:

  • Diebold — software de voto electrónico; publicación aparentemente accidental en un sitio web oficial.
  • MicrosoftWindows y otros; penetración supuestamente deliberada en una red de desarrollo corporativa.
  • RSADSI — algoritmos criptográficos; código de RC4 probablemente publicado con intención en Usenet.
  • Cisco — sistema operativo de enrutadores; exposición accidental en una red corporativa.

Cuando se usa software seguro por estar oculto de manera amplia, existe un riesgo potencial de problema global; por ejemplo, vulnerabilidades en las diferentes versiones del sistema operativo Windows, sus componentes obligatorios como su navegador web Internet Explorer o sus aplicaciones de correo electrónico (Microsoft Outlook/Outlook Express) han causado problemas a lo largo y ancho del planeta cuando virus, troyanos, gusanos y demás se han aprovechado de ellas. Véase seguridad en Windows o seguridad en Internet Explorer.

Todavía hay muchas organizaciones que aceptan esta configuración porque permite que los ingenieros sean operadores de servidores en lugar de administradores, lo que significa que es menos probable que destruyan el servidor por accidente. Esto puede suponer alguna ventaja.

Véase también[editar]

Enlaces externos[editar]