Blog

Deep Machine Learning

11
- Sept
2017
Publicado por: El equipo de jtsec
Deep Machine Learning

Actualmente el panorama de la ciberseguridad no es esperanzador en el sentido de que sigue creciendo la expansión y difusión de nuevos tipos de malware para todo tipo de dispositivos y sistemas operativos. Basándonos en las estadísticas de fuentes como Kaspersky o GDATA, se puede comprobar como el malware, lejos de estar controlado, sigue creciendo en nuevas variantes con el objetivo de evitar las medidas de seguridad existentes y aprovechar todo tipo de vulnerabilidades. Según el informe de GDATA, se estima que a lo largo de 2017, más de 7.4 millones de nuevas amenazas verán la luz, superando así las cifras alcanzadas a lo largo del año anterior.

Se puede ilustrar como ejemplo uno de los tipos de malware de creciente importancia e impacto estos últimos meses, el ransomware, amenaza que alcanzó en el primer trimestre de este año el mismo volumen que en toda la segunda mitad de 2016.

Debido a esto, queda de manifiesto la necesidad de continuar destinando recursos a la mejora y creación de nuevos métodos de seguridad para hacer frente a esta creciente amenaza con la mayor eficiencia posible.

Desde JTSEC hemos querido analizar una de los temas más de moda (Inteligencia Artificial) y su aplicación en el mundo de la ciberseguridad.

Deep Machine Learning: una alternativa

Actualmente uno de los campos de investigación en la ciberseguridad, es la implementación de inteligencia artificial para la detección y respuesta de amenazas. De este modo se podría ganar en eficiencia y rapidez y así hacer frente al creciente número de incidentes de seguridad existentes en la actualidad. Las tendencias a corto plazo de Inteligencia Artificial para la ciberseguridad consisten en:

  • Sistemas de predicción y prevención, con el fin de aprovechar el potencial de Big Data para interpretar un volumen alto de información procedente del tráfico de una red determinada.
  • Soluciones de Inteligencia Artificial aplicadas a la seguridad en IoT (Internet of Things), con la finalidad de evitar la propagación de ataques de malware en las distintas redes.
  • Aprendizaje automático para generar sistemas de ciberseguridad flexibles y adaptados a todo tipo de dispositivos y herramientas que sean capaces de identificar y adaptarse a los cambios del malware inteligente, etc.

Si se centra el foco de atención en la capacidad de “auto-aprendizaje” se pueden encontrar técnicas como la denominada Machine Learning, la cual consiste en el uso de algoritmos para parsear de un conjunto grande de datos, realizar un aprendizaje en dicho procedimiento y posteriormente ser capaz de predecir sobre una finalidad concreta. Una de las variantes de esta técnica es Deep Machine Learning. Como definición básica, consiste en la idea de aprendizaje desde el ejemplo, haciendo que se mejore constantemente la inteligencia artificial de una herramienta para así hacer frente a nuevas amenazas de forma autónoma. Consiste en un conjunto de algoritmos de aprendizaje que usan técnicas de redes neuronales, siendo capaz de obtener como resultado un aprendizaje minucioso de la información de entrada y poder así, extraer conclusiones relevantes.

Ejemplos de Aplicación de Deep Machine Learning. Sistemas de Detección de Intrusiones

Existen diversas investigaciones sobre implementaciones de esta metodología en ciberseguridad y donde se proponen soluciones para hacer frente a la problemática comentada.

Un ejemplo de uso consiste en la detección y clasificación de malware de forma autónoma usando las técnicas de Deep Learning con el fin de adaptarse al constante cambio que experimentan estas amenazas.

Otro ejemplo de aplicación de Deep Learning se basa en los Sistemas de Detección de Intrusiones (IDS), tratando de mejorar la habilidad de detección de estas herramientas a través de técnicas de inteligencia artificial para hacer frente a las amenazas de red existentes

Los Sistemas de Detección de Intrusiones de Red son herramientas importantes para los administradores de sistemas de red en la detección de brechas de seguridad dentro de la red de una organización. En principio, hay dos retos para proporcionar flexibilidad y precisión a un IDS en relación a la detección de nuevos ataques desconocidos.

En primer lugar, la selección propia de las características procedentes del tráfico de red para detectar anomalías es difícil. Debido a que los escenarios de ataque están en continuo cambio y evolución, las características seleccionadas para una clase de ataque pueden no funcionar bien para otro tipo de ataques.

En segundo lugar, la dificultad de identificar o marcar el tráfico de red existente, ya que se requiere una gran cantidad de recursos para producir un conjunto de etiquetas (labels) a todo el tráfico que transcurre por una red durante un tiempo determinado.

El uso de técnicas de Deep Learning contribuye a que la selección de características correctas, haga posible que el entrenamiento que necesitan estas técnicas sea el correcto a través del borrado de características redundantes y ruidos.

Técnicas como AutoEncoder y DBN (Deep Belief Networks) son usadas para la detección de código malicioso, como esquema híbrido. Este esquema consiste en usar el primer método como Deep Learning con el objetivo de reducir el dimensionamiento de datos. Posteriormente se usa el método de aprendizaje DBN para detectar el código malicioso a partir de la información seleccionada por el método anterior.

El Futuro de Deep Machine Learning

Actualmente se están realizando investigaciones con el fin de mejorar y formalizar los conceptos mencionados en relación al uso de Deep Learning. Además, se están usando este tipo de técnicas y métodos en la detección autónoma de vulnerabilidades en los distintos sistemas operativos. De este modo se pretende encontrar la vulnerabilidad y solucionarla antes de que cualquier malware tome ventaja de ella. Se están desarrollando soluciones específicas que se basan en el uso de características estáticas y dinámicas para predecir si un caso de test contiene vulnerabilidades usando técnicas de Machine Learning. Con esto se pretende profundizar en la fase de testeo para dar robustez a los sistemas que forman una red y asegurar que no haya brechas en las que un malware especifico obtenga ventaja y por lo tanto acceso a información sensible.

Además, en varias de las investigaciones mencionadas, se están comenzando a incluir propuestas en forma de herramientas, para implementar y desarrollar dichas investigaciones en el campo del Deep Learning. Se usan varias técnicas procedentes de Machine Learning para el desarrollo de las investigaciones realizadas en el campo, algunos ejemplos son DBN (Deep Belief Network), LSTM-RNN (Long short-term memory – Recurrent Neural Network), ANN (Artificial Neural Networks), SVN (Support Vector Machine) y NB (Naive-Bayesian).

Estas técnicas en su mayoría usan redes neuronales con el objetivo de crear algoritmos capaces de implementar inteligencia artificial autónoma con el fin de que sea capaz de tener un aprendizaje sin necesitar una supervisión permanente. A partir de este punto se haría posible la resolución de la clasificación y detección de distintas amenazas (tanto nuevas, como conocidas) de forma prácticamente autónoma.

Conclusiones

Finalmente, se puede deducir que el objetivo final de este tipo de técnicas es la de introducir inteligencia artificial en el campo de la ciberseguridad, con la finalidad de mejorar el rendimiento y la capacidad de respuesta de las metodologías actualmente implementadas y así hacer frente a la constante tendencia de difusión y creación de nuevo malware, evitando así, perdidas de recursos económicos, datos y recursos humanos en general.

Desde JTSEC, creemos que este tipo de técnicas formarán parte del día a día de la ciberseguridad del futuro.

El equipo de jtsec/Autor

El equipo de jtsec: Beyond IT Security