Matías es un investigador y desarrollador con más de 15 años de experiencia práctica en seguridad de software. Ha desarrollado soluciones para empresas como Fortify Software y su propia empresa Sensei Security. A lo largo de su carrera, Matías ha dirigido múltiples proyectos de investigación sobre seguridad de aplicaciones que han dado lugar a productos comerciales y cuenta con más de 10 patentes en su haber. Cuando está lejos de su escritorio, Matias ha servido como instructor para la formación de seguridad de aplicaciones avanzadas courses y regularmente habla en conferencias mundiales como la Conferencia RSA, Black Hat, DefCon, BSIMM, OWASP AppSec y BruCon.
Matías es doctor en Ingeniería Informática por la Universidad de Gante, donde estudió la seguridad de las aplicaciones mediante la ofuscación de programas para ocultar el funcionamiento interno de una aplicación.
Matias Madou, Ph.D. es experto en seguridad, investigador y CTO y cofundador de Secure Code Warrior. Matias obtuvo su doctorado en Seguridad de Aplicaciones en la Universidad de Gante, centrándose en soluciones de análisis estático. Más tarde se incorporó a Fortify en EE.UU., donde se dio cuenta de que no bastaba con detectar problemas de código sin ayudar a los desarrolladores a escribir código seguro. Esto le inspiró para desarrollar productos que ayuden a los desarrolladores, alivien la carga de la seguridad y superen las expectativas de los clientes. Cuando no está en su escritorio como parte de Team Awesome, le gusta estar en el escenario presentando en conferencias como RSA Conference, BlackHat y DefCon.
Esta vulnerabilidad puede ocurrir cuando los codificadores no implementan correctamente las reglas de lógica de negocio, lo que podría dejar sus aplicaciones vulnerables a diferentes tipos de ataques en caso de que un usuario malicioso decida explotarlos.
Si alguna vez hubo algo que arruinara la Navidad en el sector de la ciberseguridad, es una devastadora filtración de datos que va camino de convertirse en el mayor evento de ciberespionaje que afecta al gobierno de Estados Unidos del que se tenga constancia.
Una vez más, la causa raíz del hackeo de Equifax es una vulnerabilidad de una aplicación web. Este tipo de vulnerabilidades existen desde hace más de una década, pero siguen siendo tan relevantes hoy en día.
Los ataques de inyección, el infame rey de las vulnerabilidades (por categoría), han perdido el primer puesto en favor del control de acceso roto como lo peor de lo peor, y los desarrolladores deben tomar nota.
En general, las comprobaciones de autorización a nivel de objeto deben incluirse para cada función que acceda a una fuente de datos utilizando una entrada del usuario, y no hacerlo supone un gran riesgo.
Un curso curado que contenga los módulos exactos en los que sus desarrolladores necesitarían mostrar competencia tendrá un impacto potente, y les permitirá ponerse en marcha cuando se trate de las mejores prácticas de seguridad en su trabajo diario.
Reorientar las soluciones de seguridad hacia el proceso de desarrollo no es fácil, pero es necesario en el mundo actual, en el que incluso los dispositivos aparentemente sencillos, como las herramientas de presentación, son sorprendentemente complejos y están conectados en red con todo lo demás.
Debemos llegar a una etapa en la que la seguridad se vea como una responsabilidad compartida por toda la organización y a lo largo del SDLC. Esto es ciertamente posible cuando te comprometes con un entorno DevSecOps de pleno derecho y de gran apoyo.
La vulnerabilidad del control de acceso a nivel de función que falta permite a los usuarios realizar funciones que deberían estar restringidas, o les permite acceder a recursos que deberían estar protegidos.
La autenticación a menudo actúa como una puerta de entrada tanto a una aplicación como potencialmente al resto de una red, por lo que son objetivos tentadores para los atacantes. Si un proceso de autenticación está roto o es vulnerable, hay muchas posibilidades de que los atacantes descubran esa debilidad y la exploten.
El desarrollo de software ya no es una isla, y cuando tenemos en cuenta todos los aspectos del riesgo que conlleva el software -todo, desde la nube, los sistemas integrados en aparatos y vehículos, nuestra infraestructura crítica, por no mencionar las API que lo conectan todo- la superficie de ataque no tiene fronteras y está fuera de control.
Es seguro decir que los dos últimos años han sido transformadores para las normas de ciberseguridad, y aunque no es obligatorio, debería ser un objetivo para todas las organizaciones seguir el ejemplo, y escudriñar las prácticas de seguridad de los proveedores como si fueran parte de su propio programa de seguridad interna.
La vulnerabilidad de la asignación masiva nació como resultado de que muchos frameworks modernos alientan a los desarrolladores a utilizar funciones que vinculan automáticamente la entrada de los clientes en variables de código y objetos internos.
Empezamos a pensar en lo que podíamos hacer para reducir la barrera de la formación cuando la necesitas, y en cómo el microaprendizaje podría implementarse en tu flujo de trabajo de una manera más fluida.
Los desarrolladores no tendrán un impacto positivo en la reducción de la vulnerabilidad sin una comprensión fundamental de cómo funcionan las vulnerabilidades, por qué son peligrosas, qué patrones las causan y qué patrones de diseño o codificación las solucionan en un contexto que tiene sentido en su mundo. Un enfoque de andamiaje permite que las capas de conocimiento ofrezcan una imagen completa de lo que significa codificar de forma segura, defender una base de código y erigirse como un desarrollador consciente de la seguridad.
Los ataques de día cero, por definición, dan a los desarrolladores cero tiempo para encontrar y parchear las vulnerabilidades existentes que podrían ser explotadas, porque el actor de la amenaza llegó primero. El daño está hecho y luego es una carrera loca para arreglar tanto el software como el daño a la reputación de la empresa. Los atacantes siempre están en ventaja, y es crucial cerrar esa ventaja en la medida de lo posible.
Esta es la primera parte de una serie de dos partes sobre el cumplimiento exitoso de PCI-DSS dentro de una organización. En este capítulo, detallamos cómo los especialistas en AppSec pueden trabajar estrechamente con los responsables de desarrollo para capacitar a los desarrolladores, reforzar el SSDLC y obtener resultados concretos de la legislación general.
Ya sabemos que hay demasiadas cosas que hacer en un día de trabajo, así que ¿qué incentivo tienen los desarrolladores para desplazarse a un aula, o cambiar de contexto para pasar por cinco pasos para acceder a una formación estática basada en la teoría?
Hay algunas razones por las que las herramientas de AppSec no se utilizan como cabría esperar, y no se trata tanto de las herramientas y su funcionalidad, sino de cómo se integran en un programa de seguridad en su conjunto.
Nos gustaría destacar a uno de nuestros expertos, Oscar Quintas. Forma parte de nuestro equipo de contenido de productos y trabaja como investigador de seguridad senior. También es nuestro brujo residente en todo lo relacionado con la Infraestructura como Código (IaC).
El campo de juego entre los héroes y los villanos de la ciberseguridad es notoriamente injusto. Los datos sensibles son el nuevo oro, y los atacantes se adaptan rápidamente para burlar las defensas, explotando los fallos de seguridad grandes y pequeños para obtener un potencial botín.
Esta vulnerabilidad se produce cuando entran demasiadas solicitudes al mismo tiempo y la API no tiene suficientes recursos informáticos para atenderlas. La API puede entonces dejar de estar disponible o no responder a nuevas peticiones.
Cuando se trata de luchar contra los ciberdelincuentes, tenemos que estar lo más cerca posible de ellos, adelantándonos a sus juegos con una mentalidad preventiva. Aquí es donde creo que podrían empezar a hacer olas en el próximo año:
Sin un control de acceso a nivel de infraestructura en perfecto orden, se abre toda una empresa a los atacantes, que pueden utilizar esa vulnerabilidad como puerta de entrada para el fisgoneo no autorizado o para un ataque completo.
Los ciberataques son cada vez más frecuentes, y las amenazas que afectan a la infraestructura basada en Linux son cada vez más comunes, con el objetivo final de abrir un botín de datos sensibles almacenados en la nube.
La mecánica real detrás de esta vulnerabilidad es similar a otras, pero la exposición excesiva de datos, en este caso, se define como la implicación de datos legalmente protegidos o altamente sensibles.
Al igual que ocurre con el software basado en la web, las API y los dispositivos móviles, el código vulnerable de los sistemas integrados puede ser explotado si un atacante lo descubre en la naturaleza.
Esta es la segunda parte de una miniserie sobre el cumplimiento de PCI-DSS dentro de una organización. En este último capítulo, detallamos cómo los directores de tecnología y los directores de seguridad informática pueden liderar desde arriba la reducción de los riesgos cibernéticos y hacer que el proceso sea fluido, exitoso... y tal vez un poco divertido para los desarrolladores.
El fallo de registro y supervisión insuficiente se produce principalmente como resultado de un plan de ciberseguridad fallido en lo que respecta al registro de todos los intentos de autenticación fallidos, los accesos denegados y los errores de validación de entradas.
Hoy en día, tener los datos críticos, como las contraseñas, la información personal y los registros financieros, protegidos con hash mientras están en reposo es la piedra angular de cualquier defensa de ciberseguridad.
La reciente orden ejecutiva sobre ciberseguridad de la Administración Biden ha dado mucho que hablar en el sector de la seguridad, sobre todo en aquellos que buscan convencer a los desarrolladores de la importancia de aplicar las mejores prácticas de codificación segura en su trabajo diario.
Tenemos que reforzar un enfoque de las mejores prácticas de ciberseguridad dirigido por el ser humano, que va a obtener mejores resultados que una gran dependencia de la automatización, las herramientas y la reacción a los problemas que ya se han incorporado y descubierto.
Los desarrolladores se encuentran entre los que están más cerca del código, además de las configuraciones de seguridad y el control de acceso. Sus habilidades de seguridad deben ser alimentadas, y para lograr los altos estándares señalados por el NIST, una estructura de curso práctico podría ser la manera eficiente de abordarlo, especialmente con grandes cohortes de desarrollo.
Estamos encantados de anunciar una nueva función en la plataforma Secure Code Warrior : Missions. Esta nueva categoría de retos es la siguiente fase de la formación en seguridad adaptada a los desarrolladores, que hace que los usuarios pasen de recordar los conocimientos de seguridad a aplicarlos en un entorno de simulación del mundo real.
Ya sea que la incomodidad provenga de las incógnitas de una nueva forma de trabajo, de un poco de desconfianza o tal vez de no creer en el trabajo a distancia, me parece que las empresas que se resisten a él tienden a quedarse atrás en términos de atraer a los mejores talentos, mantener el alcance global y, francamente, avanzar con los tiempos.
La clave de la mayor parte de la seguridad informática hoy en día tiene que ver con las contraseñas. Incluso si se emplean otros métodos de seguridad, como la autenticación de dos factores o la biometría, la mayoría de las organizaciones siguen empleando la seguridad basada en contraseñas como uno de los elementos de su protección.
Secure Code Warrior ha creado una acción de GitHub que aporta aprendizaje contextual al escaneo de código de GitHub. Esto significa que los desarrolladores pueden utilizar una acción de terceros, como la acción Snyk Container, para encontrar vulnerabilidades y, a continuación, aumentar el resultado con el aprendizaje hiperrelevante específico de CWE.
Las pruebas de penetración y las herramientas de escaneo de análisis estático (más conocidas como SAST) son sólo una parte del proceso general para mitigar los riesgos de seguridad, que operan de forma bastante independiente de lo que hacemos - ¡hasta que el código nos llega de vuelta para las correcciones, por supuesto!
El código de cierto nivel de calidad es, por definición, también seguro, pero todo el código seguro no es necesariamente de buena calidad. ¿Es la fórmula de empezar por la "izquierda de la izquierda" para garantizar unos estándares de codificación seguros puros?
El comportamiento que induce a la vulnerabilidad en el que nos vamos a centrar aquí es el uso de código de fuentes no confiables, una práctica aparentemente benigna que está causando grandes problemas.
Avancemos hasta 2016 y un investigador de seguridad encontró una vulnerabilidad común conocida como cross-site scripting (XSS) en el sitio web principal de Equifax, según un tuit de un investigador que responde al nombre de x0rz.
Esta vulnerabilidad es más bien un problema humano o de gestión que permite que las APIs más antiguas sigan vigentes mucho tiempo después de que deberían haber sido sustituidas por versiones más nuevas y seguras.
Muchas empresas que están dando un golpe de timón en su enfoque de ciberseguridad han implementado un programa oficial de campeones de seguridad, otorgando responsabilidades clave en materia de seguridad -desde el enlace entre equipos y la animación general, hasta la supervisión de las mejores prácticas- a personas que demuestran aptitud y pasión por ese papel.
Rust incorpora elementos conocidos y funcionales de lenguajes de uso común, trabajando con una filosofía diferente que se deshace de la complejidad, a la vez que introduce rendimiento y seguridad.
Es probable que sea un poco más frecuente en las APIs, pero los atacantes a menudo intentarán encontrar fallos sin parches y archivos o directorios desprotegidos en cualquier lugar de una red. Encontrarse con una API que tenga la depuración activada o las funciones de seguridad desactivadas sólo facilita un poco su nefasto trabajo.
Como industria, nunca debemos esperar que los desarrolladores se conviertan en expertos en seguridad, pero las organizaciones pueden adoptar nuevas normas para capacitar a los desarrolladores de modo que puedan producir software de mayor calidad.
A veces, las aplicaciones también comparten datos con otros programas como parte de una carga de trabajo global. A menos que la capa de transporte esté protegida, la hace vulnerable tanto al fisgoneo externo como a la visualización interna no autorizada.
Todas las organizaciones pueden aprovechar el Mes de la Concienciación sobre la Ciberseguridad para refrescar sus conocimientos en materia de seguridad, y este año, además, lanzamos una nueva aplicación gratuita para la comunidad de programadores.
Una relación que se construye sobre la base inestable de la desconfianza es, bueno, mejor abordarla con bajas expectativas. Lamentablemente, este puede ser el estado de la relación de trabajo entre los desarrolladores y el equipo de AppSec dentro de una organización.
Las desconfiguraciones de seguridad, especialmente las de la variedad de permisos inadecuados, ocurren con mayor frecuencia cuando un desarrollador crea un nuevo usuario o concede permiso a una aplicación como herramienta para realizar una tarea.
Los atacantes siempre intentarán encontrar primero las vulnerabilidades fácilmente explotables y pueden incluso utilizar un script para recorrer las debilidades más comunes. No es diferente a un ladrón que comprueba todos los coches de una calle para ver si alguna puerta está abierta, lo que es mucho más fácil que romper una ventana.
Con una persistente escasez de personal cualificado en contradicción con la avalancha de código que se escribe para satisfacer las necesidades de software del mundo, muchas empresas se están quedando rezagadas en su estrategia de ciberseguridad y en la infraestructura existente. Es hora de que analicemos con honestidad nuestra madurez general en materia de ciberseguridad y evaluemos los beneficios rápidos viables que tenemos ante nosotros.
Los CISO se encuentran en una situación cada vez más tensa: Proteger más activos, enviar más código, reducir una mayor superficie de ataque y hacerlo con unos recursos financieros que disminuyen rápidamente. Es un hecho ineludible que la ciberseguridad se ve como un centro de costes, y a pesar de que el programa de seguridad de una organización es lo que se interpone en el camino de un actor de la amenaza convirtiéndolos en el titular desastroso de mañana, los líderes de seguridad deben hacer más para vender y demostrar el valor empresarial global del departamento, en un lenguaje que tenga sentido para el cuerpo ejecutivo.
Nuestro último documento de investigación, Benchmarking Security Skills: Streamlining Secure-by-Design in the Enterprise, es el resultado de un análisis profundo de iniciativas reales de Secure-by-Design a nivel empresarial y de la derivación de enfoques de mejores prácticas basados en hallazgos basados en datos.
La creciente atención que se presta al código seguro y a los principios del diseño seguro exige que los desarrolladores reciban formación en ciberseguridad desde el principio del proceso de desarrollo de software, con herramientas como Secure Code Warrior's Trust Score, que ayudan a medir y mejorar sus progresos.
La idea de introducir la seguridad preventiva en el código y los sistemas heredados al mismo tiempo que en las aplicaciones más recientes puede parecer desalentadora, pero un planteamiento basado en el diseño seguro, aplicado mediante la mejora de las competencias de los desarrolladores, puede aplicar las mejores prácticas de seguridad a esos sistemas. Es la mejor oportunidad que tienen muchas organizaciones de mejorar su seguridad.
Nuestra investigación ha demostrado que la formación en código seguro funciona. Trust Score, que utiliza un algoritmo basado en más de 20 millones de puntos de datos de aprendizaje procedentes del trabajo de más de 250 000 alumnos en más de 600 organizaciones, revela su eficacia a la hora de reducir las vulnerabilidades y cómo hacer que la iniciativa sea aún más eficaz.
En este libro blanco, el experto en seguridad y cofundador y CTO de Secure Code Warrior , Matias Madou, Ph.D., hablará sobre:Los seis pilares que necesita para desplegar una educación y capacitación en seguridad eficaces para su cohorte de desarrollo. Las lecciones aprendidas de diez ejecutivos que implementan programas de seguridad a nivel empresarial, y los escollos comunes que debe evitar en su camino hacia el éxito.