Vulnerabilidades de Seguridad: Backdoors, Trampas, Bombas Lógicas y Caballos de Troya

Los backdoors permiten al usuario entrar a los programas rápidamente para propósitos de evaluación, depuración, mantenimiento y monitoreo en el proceso de desarrollo de sistemas. Muchas veces los backdoors son olvidados y dejados en el código cuando éste es liberado. Potencialmente destructivos, los backdoors pueden existir en programas por muchos años antes de ser descubiertos. Los backdoors pueden presentar problemas cuando son descubiertos por hackers sin escrúpulos. Es por eso que se consideran una amenaza real a la seguridad del sistema. Uno de los aspectos más significativos de esta amenaza es que se encuentran disponibles para muchos usuarios. Más que requerir un grado particular de conocimientos técnicos y destreza, para estas amenazas se necesita conocer el backdoor y puede ser fácilmente pasado de boca en boca o enviado por correo electrónico en bulletin boards. La mejor defensa contra un ataque a través de una puerta trasera es obteniendo el conocimiento de ésta, antes de que llegue a ser ampliamente difundida. Por lo cual, una de las mejores protecciones es la comunicación entre administradores de sistemas.

Trampas (Trap Doors)

Las trampas son actualmente consideradas como un caso especial de bomba lógica, aunque se parecen a las puertas traseras, dado que son aspectos no documentados o modos de operación de programas que de otra forma son confiables. Sin embargo, mientras que las backdoors son deliberadamente explotadas por usuarios conocedores, las trap doors son disparadas por algún conjunto de condiciones de habilitación causando que estas realicen sus acciones destructivas. Estas condiciones podrían ser la hora del sistema o la identificación del usuario al momento de ejecutar un programa.

Bombas Lógicas

Las bombas lógicas son características ocultas construidas en un programa ejecutadas cuando se cumplen ciertas condiciones, tales como, un cierto conjunto de claves, o cierta fecha alcanzada, modificando dramáticamente su comportamiento. Las bombas lógicas ejecutan una función, o un conjunto de funciones, que no fueron características intencionales del programa original, siendo las más comunes la destrucción de aplicaciones o datos. Son frecuentemente colocadas por programadores encargados de mantenimiento de sistemas. El famoso virus Miguel Angel, fue disparado por una bomba lógica. Existen muchos usos legítimos de bombas lógicas. Los time-out son ampliamente usados por los vendedores de software, permiten administrar las provisiones contractuales o reforzar agendas de pago. La ejecución de una bomba lógica no necesariamente es disparada por el reloj. Las bombas lógicas son frecuentemente perpetradas no por personas ajenas al sistema quienes han ganado acceso no autorizado (ya que ellos prefieren hacer el daño tan pronto como sea posible), sino por usuarios quienes están autorizados para tener acceso al sistema. La mejor protección contra los desastres de las bombas lógicas es tener bien definidos procesos de administración y mantenimiento de cuentas de usuario. Tales procedimientos serán enfocados para detectar bombas lógicas antes de que éstas tengan la oportunidad de hacer daños.

Caballos de Troya

Los Caballos de Troya son probablemente las amenazas programadas más comunes y fáciles de implantar, son programas que imitan a un programa que el usuario quiere ejecutar, pero son realmente diferentes. Aparentan ser inofensivos, pero permiten violar la seguridad de un sistema, pues se pueden ver como una herramienta estándar de UNIX, aunque hayan sido programados para realizar ciertos actos destructivos cuando se ejecutan por un usuario del sistema con privilegios apropiados. Desafortunadamente el usuario no está siempre consciente de que un Caballo de Troya ha sido ejecutado hasta que el daño se ha realizado. Un Caballo de Troya puede ser usado para capturar passwords, cambiar permisos a archivos o crear programas set-UID. Un ataque de Caballo de Troya engaña al usuario en la ejecución de un programa dañando al sistema por tomar ventaja de los permisos de acceso del usuario. Otro modo común de ataque es a través del uso de shar (compartir) los archivos respaldados en cinta – archive. Estos archivos son grandes shell scripts que al ejecutarse realizan autoextracciones de archivos, los cuales fueron previamente respaldados en cinta como parte del script en si mismo.

Medidas de Protección contra Caballos de Troya

Algunas medidas o hábitos para reducir la oportunidad de que el usuario se convierta en víctima de un Caballo de Troya incluyen lo siguiente:

  • Nunca colocar directorios no estándares (incluyendo . o “ “) en un PATH. Probablemente colocarlo en último lugar del PATH el ..
  • Nunca ejecutar el shar de archivos respaldados en cinta, particularmente de procedencia no familiar. Si se necesita ejecutarlos, llevarlo a cabo sólo en un sistema UNIX que no afecte su daño o pérdida total, sino ejecutarlos después de un llamado al sistema chroot que limite el impacto que pueda generarse en el sistema de archivos.
  • Proteger todos los editores de archivos de inicialización en el directorio Home, de forma tal que sólo el administrador pueda escribir en ellos. También poner el sticky bit en el directorio Home de forma tal que otros usuarios no tengan permitido borrar archivos que ellos no puedan escribir.
  • Si las terminales tienen la habilidad de repetir cadenas de caracteres enviándolos como si fueran escritos en el teclado, deshabilitar este aspecto (o mejor aún , reemplazar la terminal con una que no tenga esta característica).

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.