
Contents
¿Un atajo o una forma más eficiente de asegurar nuestros entornos? Acompáñanos a descubrir en qué consiste la heurística, cómo se aplica dentro del campo de la ciencia de la computación y la ciberseguridad.
¿Qué es Heurística?
Heurística viene del griego “encontrar” o “descubrir” y en general, se refiere al sistema de resolución de problemas con el que cuenta el cerebro. Este sistema está compuesto por nuestra memoria genética, nuestras experiencias de vida, nuestro instinto de auto preservación y el conocimiento que adquirimos.
Como resultado, le ha dado a la humanidad una gran capacidad de hallar soluciones innovadoras para problemas comunes y sobre todo, la capacidad de improvisar a medida que suceden las cosas.
En nuestra eterna búsqueda por optimizar, mejorar nuestra tecnología y sobre todo con la adopción e investigación de inteligencia artificial (IA), hemos considerado desde 1970 como proveerle un sistema automático de detección de amenazas a nuestras máquinas y computadoras.
- En ciberseguridad y ciencias de la computación, la heurística se trata de una técnica que nos permite sacrificar precisión por velocidad. Aquí, toma la forma de una función heurística, una función que categoriza alternativas seleccionadas por un algoritmo de búsqueda.
Por ejemplo, dentro de un antivirus:
- Un algoritmo categoriza amenazas; ransomware, adware, rootkit, troyano, etc.
- La función toma decisiones para cada categoría en base a la información que tiene disponible.
- Esta información viene de la base de datos en la nube con la que cuenta este antivirus, que a su vez es alimentada por las amenazas detectadas en las instancias de cada uno de sus usuarios.
De esta forma, se combinan la función heurística, el desarrollo de software, el Machine Learning y la inteligencia artificial para enseñarle a un antivirus a tomar decisiones específicas para cada tipo de amenaza.
Te puede interesar: ¿Qué es el Machine Learning?
¿Para qué se usa la heurística?
El objetivo principal es conseguir soluciones funcionales en el menor tiempo posible. Para esto, se aplican varias técnicas:
- Buscar soluciones para un problema usando estas funciones, aunque esto no conseguirá la mejor solución, encontrará la más fácil y rápida de ejecutar.
- Usarse en combinación con otros algoritmos para obtener soluciones más eficientes.
- Combinarse con inteligencia artificial para conseguir emular la mecánica de los pensamientos humanos, hallando soluciones donde aún no hay algoritmos aplicables. Una de estas aplicaciones se da con el problema del viajante, un problema matemático que es clave dentro del campo de la ciencia de computación teórica.
Dentro del problema del viajante, podemos pensar en el concepto de la ciudad como:
|
Podemos pensar en la distancia como:
|
Así, esta función de heurística combinada con las técnicas antes mencionadas, nos permitiría conseguir la mejor forma de optimizar nuestra operación de fabricación de microchips, en función de los puntos de soldadura necesarios.
Y, ¿cómo se usa dentro de la ciberseguridad?
El principal uso de la heurística dentro de la ciberseguridad es el análisis heurístico.
- Sobre todo en software de antivirus, este tipo de análisis nos permite identificar tanto malwares desconocidos, como aquellos que han sido detectados previamente en la instancia de otro usuario.
¿Cómo funciona? La mayoría de antivirus avanzados tienen un sandbox o máquina virtual, que provee un entorno seguro donde hacer pruebas aisladas a un software o archivo sospechoso.
La metodología de las pruebas:
- Una vez que se introduce un archivo o software en la computadora, un antivirus con detección en tiempo real lo analiza y lo compara con las entradas de amenazas anteriores en su base de datos.
- Si el archivo o programa en cuestión tiene código sospechoso, el antivirus lo aísla y lo introduce dentro de su entorno seguro (cuarentena).
- La segunda parte de la función, ejecutará comandos de programación para hacerle varias pruebas.
- Si como respuesta a estas pruebas, el archivo se replica, se sobrescribe o intenta ocultarse, la función pasa a la tercera parte de la operación.
- Tiene una serie de ramificaciones que representan soluciones para distintos tipos de amenaza. Tomará la solución más fácil de ejecutar para eliminar la amenaza en el menor tiempo posible.
Por eso vemos que los antivirus ponen en cuarentena archivos sospechosos, ya que es la medida inicial más sencilla de implementar antes de tomar la próxima decisión.
El mayor inconveniente de la heurística dentro de la ciberseguridad son los falsos positivos. Ya que estas funciones tienen la tarea de identificar archivos sospechosos y pasarlos a través de una serie de filtros, si fallan una prueba pueden identificarlos erróneamente como una amenaza.
Para solventar este inconveniente, los antivirus más avanzados también adoptan técnicas de Machine Learning, para aumentar la cantidad de categorías de amenazas y ramificaciones de soluciones que pueden tomar a medida que crece la base de datos.
En conclusión
¿En qué consiste la heurística? Es parte de nuestro intento por darle capacidad de razonamiento a nuestros softwares. Con el avance de la tecnología y se desdibujan más las fronteras entre seres humanos y computadoras, también evolucionan las amenazas. Por eso, también deben evolucionar nuestras soluciones. En Reve América, nuestro objetivo es estar al frente de esta carrera y así mantenerte informado.
Gracias por leer.
Esperemos que haya sido de tu agrado.
Si fue así, compártelo con otros apasionados de la ciberseguridad y síguenos en nuestras redes sociales.
Suscríbete a nuestro boletín para recibir lo más reciente en ciberseguridad cada semana.
¡Hasta la próxima!