Cada vez más organizaciones están sufriendo ciberataques que se traducen en pérdidas millonarias, sin ser conscientes de que cada aplicación que publican o de que cada dispositivo con conexión a Internet que utilizan sus empleados es una puerta abierta a los hackers.
Es necesario protegerse, pero para ello resulta fundamental saber en el punto en el que nos encontramos, es decir, conocer el grado de vulnerabilidad de nuestra organización frente a ataques maliciosos. Este análisis servirá para atajar los aspectos más urgentes y para planificar una estrategia global de seguridad.
El nivel riesgo de cualquier organización se basa en 3 conceptos:
- Las amenazas a las que hacer frente.
- Las vulnerabilidades que existen en el entorno.
- Las capacidades de la organización para mejorar su ciberseguridad.
El nivel de riesgo de una organización se calcula con base en el nivel de impacto adverso producido por una vulnerabilidad explotada con éxito y la probabilidad de ocurrencia de las correspondientes amenazas.
En MTP ofrecemos a nuestros clientes la posibilidad de medir su grado de vulnerabilidad frente a ataques maliciosos basando nuestro servicio de análisis de riesgos en la normativa NIST SP800-30 “Guía de Gestión del Riesgo”.
Construyendo software seguro
Claves y herramientas que nos ayudarán a cumplir este objetivo. Cuando hablamos de seguridad se ponen encima de la mesa un montón de factores a tener en cuenta, cada uno acompañado por una solución, herramienta o estrategia que resulta necesario utilizar o implantar.
En unos casos se hablará de las ventajas o desventajas en el uso de protocolos SSL. En otros, de perímetros y de firewalls. El cumplimiento de normas, como la ISO 27000, o la conveniencia de llevar a cabo pruebas de seguridad al final del ciclo de desarrollo del software, son también aspectos que siguen centrando esta conversación.
Todo lo anterior es positivo y necesario, sin embargo, a la hora de hablar de seguridad, como en casi todas las circunstancias de la vida, conviene ir a la raíz del asunto y comenzar la casa construyendo unos cimientos sólidos. De esta forma, de poco valdrán las medidas que tomemos si no basamos nuestro negocio en un software sólido y sin fisuras.
Por todo ello, la primera pregunta que debemos hacernos, al sentarnos a hablar de seguridad, sería la siguiente: ¿estamos construyendo un software seguro?
En una economía cada vez más basada en las aplicaciones, la seguridad es un factor que hay que tener en cuenta en cada una de las fases de desarrollo de las mismas. Esto es así, ya que la producción de software es un proceso en el que es necesario ir identificando y corrigiendo vulnerabilidades de forma continua. Es decir, no vale desarrollar la aplicación y luego probarla.
Apoyo en herramientas específicas
Naturalmente, a la hora de producir software seguro, también existen en el mercado herramientas suficientes para ayudarnos en esa labor. En MTP aconsejamos las siguientes:
- Checkmarx, una herramienta de análisis de seguridad del código fuente, integrable con los entornos de desarrollo SW más comunes (Eclipse, MS-Visual Studio, Jira, Jenkins…) que alertará a los programadores sobre las vulnerabilidades que vayan introduciendo en su código.
- BlackDuck, una herramienta de análisis de la seguridad, licenciamiento y operatividad de las librerías de código abierto de terceros empleadas en los propios desarrollos. También integrable con los entornos de desarrollo habituales.
- Contrast, una herramienta de análisis de seguridad del aplicativo en funcionamiento basada en IAST (Interactive Application Security Testing), o lo que es lo mismo pruebas de caja gris.
Pero además de contar con alguna de estas herramientas, resulta imprescindible implantar un Ciclo de Vida de Desarrollo de Software Seguro basado en los siguientes pasos:
- Análisis de la situación de procesos SW y de las herramientas de desarrollo SW empleadas.
- Propuesta de las herramientas de seguridad más adecuadas en cada caso.
- Realizar pruebas de concepto y proyectos pilotos para validar las herramientas propuestas y su uso en los procesos del cliente.
- Formar y dar soporte a los ingenieros de
____________________
Luis Redondo, Responsable del Área de Ciberseguridad de MTP, Digital Business Assurance www.mtpinternational.com.mx