Una bomba lógica es un fragmento de código que se inserta intencionadamente en un sistema de software con el fin de activar una función maliciosa una vez se hayan cumplido ciertas condiciones. Estás condiciones, también conocidas como activadores –triggers-; pueden activarse en una fecha determinada, a causa una acción específica del usuario o por cualquier otro evento posible.
Las bombas lógicas pueden insertarse en cualquier tipo de software (software de sistema, software de aplicación…) e incluso en el hardware del dispositivo. Con el fin de sabotear un sistema, robar información confidencial o simplemente dañar los datos contenidos.
¿Cómo funciona una bomba lógica?
Una bomba lógica permanece inactiva-durmiente en el sistema software hasta que se cumplen las condiciones necesarias de activación. Una vez se activa, la bomba lógica ejecuta su función; que puede variar desde mostrar un mensaje en la pantalla hasta eliminar archivos importantes o dejar el sistema inutilizable.
Las bombas lógicas suelen parecer código legítimo, lo cual las hacen difíciles de detectar. Pudiendo ser insertadas mediante malware, ingeniería social, o incluso por un empleado-individuo con acceso al código del sistema.
Tipos de bombas lógicas
Hay varios tipos diferentes de bombas lógicas, con sus propias condiciones de activación y funciones maliciosas:
- Bombas lógicas basadas en tiempo: se activan en una fecha y hora específicas, un ejemplo sería que estuviese programada para eliminar todos los archivos el día 24 de marzo.
- Bombas lógicas basadas en acciones: se desencadenan a causa de una acción específica, un desencadenante sería introducir la contraseña para acceder al equipo o hacer clic en un enlace.
- Bombas lógicas basadas en eventos: se ejecutan cuando ocurre en el sistema un evento específico, como eliminar todas los archivos multimedia cuando el usuario intente visualizar cualquier vídeo.
- Bombas lógicas híbridas: combinan varias condiciones de activación, un activador sería meterse en cierta web en un determinado día y hora.
Ejemplos de bombas lógicas
Las bombas lógicas se utilizan en ataques e incidentes en el mundo real, unos ejemplos notables son:
- En 1989, un empleado descontento de Los Angeles Times insertó una bomba lógica en el sistema encargado de la impresión del periódico. Se trataba de una bomba lógica basada en tiempo con una fecha del 15 de enero, provocando el retraso en la entrega de la edición de ese día.
- En el año 2000, se descubrió una bomba lógica en el sistema informático de Maroochy Water Services en Australia, la bomba lógica se desencadenó por una acción específica de un individuo a quien le denegaron empleo. Esto provocó la liberación de más de un millón de litros de aguas residuales en las vías fluviales locales.
- En el año 2017, el famoso ataque de ransomware WannaCry hacía uso de una bomba lógica para secuestrar archivos importantes del sistema, causando que el sistema quedara inoperable hasta que la víctima pagase el rescate en Bitcoin.
¿Por qué se utilizan las bombas lógicas?
Existen diversos motivos por los cuales se puede hacer uso de bombas lógicas:
- Sabotear: tal y como se ha mencionado en anteriores apartados, las bombas lógicas se pueden usar para sabotear un sistema. Consiguiendo que este deje de funcionar o se bloquee hasta que se cumplan con las exigencias del atacante. El motivo de este ataque suele ser económico o como venganza para interrumpir las operaciones y productividad del individuo u organización.
- Robar: también se pueden usar para robar datos confidenciales como contraseñas, datos financieros o propiedad intelectual.
- Extorsionar: una bomba lógica se puede combinar con un ataque de ransomware, de manera que el sistema de la víctima no volverá a funcionar hasta que se cumpla con el pago solicitado.
- Bromear: en este caso el atacante no pretende obtener un beneficio ni dañar significativamente al objetivo, sino que causa un pequeño inconveniente o irregularidad en el funcionamiento del dispositivo con el objetivo de irritar a la víctima.
Prevención de bombas lógicas
Hay varias maneras de evitar que las bombas lógicas se inserten en un sistema o se activen una vez estén presentes:
- Usar un software antivirus: cualquier antivirus actualizado podrá detectar y eliminar la gran mayoría de bombas lógicas insertadas mediante malware.
- Implementar medidas de seguridad: con especial hincapíe en un firewall y estrictos controles de acceso, para evitar que personas no autorizadas introduzcan una bomba lógica.
- Actualizar siempre el software del sistema: de esta manera podremos prevenir vulnerabilidades que podrían ser explotadas por bombas lógicas.
- Monitorizar la actividad del sistema: para poder buscar irregularidades o comportamientos que consideremos sospechosos.
- Revisar el código de manera periódica: al verificar y probar el código semanal o mensualmente -y a ser posible, antes de implementarse- podremos detectar bombas lógicas antes de que entren a nuestro sistema de software.
Conclusión
Una bomba lógica es un fragmento de código malicioso que utiliza con diversos propósitos como el sabotaje o el robo. Para evitar que esto nos suceda, es crucial usar medidas de seguridad como el uso de un buen antivirus, controles de acceso o revisiones periódicas de código.