
Cuando un buen microondas se estropea: por qué la seguridad de los sistemas integrados es la próxima batalla campal para los desarrolladores
Hay muchas referencias en la cultura popular a la IA y los robots rebeldes, así como a los electrodomésticos que se activan por sí solos. Todo ello está lleno de diversión y fantasía de ciencia ficción, pero a medida que el Internet de las cosas y los dispositivos conectados se vuelven cada vez más comunes en nuestros hogares, también debería serlo el debate sobre la ciberseguridad y la seguridad. El software está en todas partes, y es fácil olvidar hasta qué punto dependemos de unas pocas líneas de código para llevar a cabo todas esas cosas ingeniosas que nos aportan grandes innovaciones y comodidades. Al igual que el software basado en la web yAPI y dispositivos móviles, si un atacante encuentra código vulnerable en un sistema integrado, lo aprovechará.
Aunque es poco probable que un ejército de microondas venga a esclavizar a la humanidad (pero los robots de Tesla son un poco preocupantes), los incidentes cibernéticos maliciosos siguen siendo posibles debido a los ataques cibernéticos. Algunos de nuestros automóviles, aviones y equipos médicos aún dependen de un complejo código de sistemas integrados para realizar tareas críticas, y la posibilidad de que estos objetos sean pirateados no solo es alarmante, sino que también puede poner en peligro la vida.
Al igual que con cualquier otro tipo de software, los desarrolladores son los primeros en entrar en contacto con el código, justo al inicio de la fase de creación. Al igual que con cualquier otro tipo de software, esto puede ser un caldo de cultivo para vulnerabilidades potenciales que podrían pasar desapercibidas antes de que el producto se lance al mercado.
Los desarrolladores no son expertos en seguridad, y ninguna empresa debe esperar que desempeñen ese papel, pero pueden disponer de un arsenal más potente para hacer frente a las amenazas que les afectan. A medida que nuestras necesidades tecnológicas evolucionan, los sistemas integrados (normalmente escritos en C y C++) se utilizarán con mayor frecuencia, por lo que es fundamental que los desarrolladores reciban formación especializada en seguridad sobre las herramientas de ese entorno.
Explosiones de freidoras de aire caliente, vehículos robados... ¿Vamos a quedarnos de brazos cruzados?
Aunque existen algunas normas y reglamentos en torno al desarrollo de la seguridad para garantizar nuestra seguridad, necesitamos lograr avances más precisos y significativos en la seguridad de todo tipo de software. Puede parecer descabellado pensar en un problema que pueda provocar el hackeo de una freidora, pero ha ocurrido en forma de un ataque de ejecución remota de código (que permite a los actores maliciosos elevar la temperatura a niveles peligrosos), al igual que la vulnerabilidad que permite el control remoto de un vehículo.
En particular, los vehículos son especialmente complejos, con múltiples sistemas integrados, cada uno de los cuales es responsable de microfunciones; desde los limpiaparabrisas automáticos hasta las funciones del motor y los frenos,todo lo que se pueda imaginar. Los vehículos conectados, junto con la creciente tecnología de comunicaciones (como Wi-Fi, Bluetooth y GPS), representan una compleja infraestructura digital que se enfrenta a múltiples vectores de ataque. Además, se prevé que en 2023 habrá 76,3 millones de vehículos conectados en las carreteras de todo el mundo, lo quesupone una base sólida para una defensa que garantice una seguridad real.
MISRA es una organización clave que aborda activamente las amenazas a los sistemas embebidos y ha establecido directrices para promover la seguridad, la protección, la portabilidad y la fiabilidad del código en entornos de sistemas embebidos. Estas directrices son la guía que todas las empresas deben seguir en sus proyectos de sistemas embebidos.
Sin embargo, para crear y ejecutar código que cumpla con este estándar de oro, se necesitan ingenieros de sistemas embebidos que confíen plenamente en las herramientas (por no hablar de la concienciación sobre la seguridad).
¿Por qué es tan específico el aumento de las habilidades de seguridad de los sistemas integrados?
Según los estándares actuales, los lenguajes de programación C y C++ están obsoletos, pero siguen siendo ampliamente utilizados. Constituyen el núcleo funcional del código de los sistemas embebidos, y el C/C++ embebido disfruta de una brillante vida moderna como parte del mundo de los dispositivos conectados.
A pesar de que estos lenguajes tienen raíces bastante antiguas y muestran un comportamiento similar en cuanto a vulnerabilidades comunes, como inyección de defectos y desbordamiento de búfer, para que los desarrolladores puedan mitigar con éxito las vulnerabilidades de seguridad en los sistemas embebidos, deben experimentar de primera mano el código que imita su entorno de trabajo. La formación genérica en C de las prácticas de seguridad generales no es tan potente e inolvidable como la que se obtiene trabajando en un entorno C embebido.
Dado que los automóviles modernos cuentan con entre una docena y más de cien sistemas integrados, es necesario formar adecuadamente a los desarrolladores para que sepan qué buscar en el IDE y cómo solucionarlo.

Proteger los sistemas integrados desde la base es responsabilidad de todos.
La realidad actual de muchas organizaciones es que la velocidad de desarrollo prima sobre la seguridad, al menos en lo que respecta a las responsabilidades de los desarrolladores. Rara vez se les evalúa en función de su capacidad para generar código seguro, sino que el estándar de oro es desarrollar rápidamente funciones excelentes. La demanda de software no hará más que aumentar, pero esta cultura nos predispone al fracaso a la hora de defendernos contra las vulnerabilidades y los ciberataques que estas permiten.
Si los desarrolladores no han recibido formación, no es culpa suya, sino que alguien del equipo de AppSec debe ayudar a subsanar esta carencia recomendando a toda la comunidad de desarrolladores programas de mejora de habilidades adecuados, accesibles (por no hablar de evaluables). La seguridad debe ser una prioridad desde el inicio de cualquier proyecto de desarrollo de software, y todos, especialmente los desarrolladores, deben tener en cuenta que deben desempeñar su papel.
Experiencia personal con los problemas de seguridad de los sistemas integrados
El desbordamiento del búfer, los defectos de inyección y los errores de lógica de negocio son trampas comunes en el desarrollo de sistemas integrados. Cuando están profundamente enterrados en el laberinto de microcontroladores de un solo vehículo o dispositivo, desde el punto de vista de la seguridad, pueden significar un desastre.
Los desbordamientos de búfer son especialmente comunes. Si desea obtener más información sobre cómo pueden afectar a la freidora que hemos mencionado anteriormente (permitiendo la ejecución remota de código), consulte este informe sobre CVE-2020-28592.
Ahora es el momento de experimentar de primera mano una vulnerabilidad de desbordamiento de búfer en código C/C++ integrado real. Participa en este desafío y comprueba si eres capaz de encontrar, identificar y corregir el patrón de codificación defectuoso que provoca este error tan insidioso:
.png)
¿Cómo lo estás haciendo? Visita www.securecodewarrior.com para obtener formación precisa y eficaz sobre seguridad en sistemas embebidos.


Al igual que el software basado en web, las API y los dispositivos móviles, si un atacante encuentra código vulnerable en un sistema integrado en el mundo real, lo aprovechará.
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.

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónMatias 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.
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.


Hay muchas referencias en la cultura popular a la IA y los robots rebeldes, así como a los electrodomésticos que se activan por sí solos. Todo ello está lleno de diversión y fantasía de ciencia ficción, pero a medida que el Internet de las cosas y los dispositivos conectados se vuelven cada vez más comunes en nuestros hogares, también debería serlo el debate sobre la ciberseguridad y la seguridad. El software está en todas partes, y es fácil olvidar hasta qué punto dependemos de unas pocas líneas de código para llevar a cabo todas esas cosas ingeniosas que nos aportan grandes innovaciones y comodidades. Al igual que el software basado en la web yAPI y dispositivos móviles, si un atacante encuentra código vulnerable en un sistema integrado, lo aprovechará.
Aunque es poco probable que un ejército de microondas venga a esclavizar a la humanidad (pero los robots de Tesla son un poco preocupantes), los incidentes cibernéticos maliciosos siguen siendo posibles debido a los ataques cibernéticos. Algunos de nuestros automóviles, aviones y equipos médicos aún dependen de un complejo código de sistemas integrados para realizar tareas críticas, y la posibilidad de que estos objetos sean pirateados no solo es alarmante, sino que también puede poner en peligro la vida.
Al igual que con cualquier otro tipo de software, los desarrolladores son los primeros en entrar en contacto con el código, justo al inicio de la fase de creación. Al igual que con cualquier otro tipo de software, esto puede ser un caldo de cultivo para vulnerabilidades potenciales que podrían pasar desapercibidas antes de que el producto se lance al mercado.
Los desarrolladores no son expertos en seguridad, y ninguna empresa debe esperar que desempeñen ese papel, pero pueden disponer de un arsenal más potente para hacer frente a las amenazas que les afectan. A medida que nuestras necesidades tecnológicas evolucionan, los sistemas integrados (normalmente escritos en C y C++) se utilizarán con mayor frecuencia, por lo que es fundamental que los desarrolladores reciban formación especializada en seguridad sobre las herramientas de ese entorno.
Explosiones de freidoras de aire caliente, vehículos robados... ¿Vamos a quedarnos de brazos cruzados?
Aunque existen algunas normas y reglamentos en torno al desarrollo de la seguridad para garantizar nuestra seguridad, necesitamos lograr avances más precisos y significativos en la seguridad de todo tipo de software. Puede parecer descabellado pensar en un problema que pueda provocar el hackeo de una freidora, pero ha ocurrido en forma de un ataque de ejecución remota de código (que permite a los actores maliciosos elevar la temperatura a niveles peligrosos), al igual que la vulnerabilidad que permite el control remoto de un vehículo.
En particular, los vehículos son especialmente complejos, con múltiples sistemas integrados, cada uno de los cuales es responsable de microfunciones; desde los limpiaparabrisas automáticos hasta las funciones del motor y los frenos,todo lo que se pueda imaginar. Los vehículos conectados, junto con la creciente tecnología de comunicaciones (como Wi-Fi, Bluetooth y GPS), representan una compleja infraestructura digital que se enfrenta a múltiples vectores de ataque. Además, se prevé que en 2023 habrá 76,3 millones de vehículos conectados en las carreteras de todo el mundo, lo quesupone una base sólida para una defensa que garantice una seguridad real.
MISRA es una organización clave que aborda activamente las amenazas a los sistemas embebidos y ha establecido directrices para promover la seguridad, la protección, la portabilidad y la fiabilidad del código en entornos de sistemas embebidos. Estas directrices son la guía que todas las empresas deben seguir en sus proyectos de sistemas embebidos.
Sin embargo, para crear y ejecutar código que cumpla con este estándar de oro, se necesitan ingenieros de sistemas embebidos que confíen plenamente en las herramientas (por no hablar de la concienciación sobre la seguridad).
¿Por qué es tan específico el aumento de las habilidades de seguridad de los sistemas integrados?
Según los estándares actuales, los lenguajes de programación C y C++ están obsoletos, pero siguen siendo ampliamente utilizados. Constituyen el núcleo funcional del código de los sistemas embebidos, y el C/C++ embebido disfruta de una brillante vida moderna como parte del mundo de los dispositivos conectados.
A pesar de que estos lenguajes tienen raíces bastante antiguas y muestran un comportamiento similar en cuanto a vulnerabilidades comunes, como inyección de defectos y desbordamiento de búfer, para que los desarrolladores puedan mitigar con éxito las vulnerabilidades de seguridad en los sistemas embebidos, deben experimentar de primera mano el código que imita su entorno de trabajo. La formación genérica en C de las prácticas de seguridad generales no es tan potente e inolvidable como la que se obtiene trabajando en un entorno C embebido.
Dado que los automóviles modernos cuentan con entre una docena y más de cien sistemas integrados, es necesario formar adecuadamente a los desarrolladores para que sepan qué buscar en el IDE y cómo solucionarlo.

Proteger los sistemas integrados desde la base es responsabilidad de todos.
La realidad actual de muchas organizaciones es que la velocidad de desarrollo prima sobre la seguridad, al menos en lo que respecta a las responsabilidades de los desarrolladores. Rara vez se les evalúa en función de su capacidad para generar código seguro, sino que el estándar de oro es desarrollar rápidamente funciones excelentes. La demanda de software no hará más que aumentar, pero esta cultura nos predispone al fracaso a la hora de defendernos contra las vulnerabilidades y los ciberataques que estas permiten.
Si los desarrolladores no han recibido formación, no es culpa suya, sino que alguien del equipo de AppSec debe ayudar a subsanar esta carencia recomendando a toda la comunidad de desarrolladores programas de mejora de habilidades adecuados, accesibles (por no hablar de evaluables). La seguridad debe ser una prioridad desde el inicio de cualquier proyecto de desarrollo de software, y todos, especialmente los desarrolladores, deben tener en cuenta que deben desempeñar su papel.
Experiencia personal con los problemas de seguridad de los sistemas integrados
El desbordamiento del búfer, los defectos de inyección y los errores de lógica de negocio son trampas comunes en el desarrollo de sistemas integrados. Cuando están profundamente enterrados en el laberinto de microcontroladores de un solo vehículo o dispositivo, desde el punto de vista de la seguridad, pueden significar un desastre.
Los desbordamientos de búfer son especialmente comunes. Si desea obtener más información sobre cómo pueden afectar a la freidora que hemos mencionado anteriormente (permitiendo la ejecución remota de código), consulte este informe sobre CVE-2020-28592.
Ahora es el momento de experimentar de primera mano una vulnerabilidad de desbordamiento de búfer en código C/C++ integrado real. Participa en este desafío y comprueba si eres capaz de encontrar, identificar y corregir el patrón de codificación defectuoso que provoca este error tan insidioso:
.png)
¿Cómo lo estás haciendo? Visita www.securecodewarrior.com para obtener formación precisa y eficaz sobre seguridad en sistemas embebidos.

Hay muchas referencias en la cultura popular a la IA y los robots rebeldes, así como a los electrodomésticos que se activan por sí solos. Todo ello está lleno de diversión y fantasía de ciencia ficción, pero a medida que el Internet de las cosas y los dispositivos conectados se vuelven cada vez más comunes en nuestros hogares, también debería serlo el debate sobre la ciberseguridad y la seguridad. El software está en todas partes, y es fácil olvidar hasta qué punto dependemos de unas pocas líneas de código para llevar a cabo todas esas cosas ingeniosas que nos aportan grandes innovaciones y comodidades. Al igual que el software basado en la web yAPI y dispositivos móviles, si un atacante encuentra código vulnerable en un sistema integrado, lo aprovechará.
Aunque es poco probable que un ejército de microondas venga a esclavizar a la humanidad (pero los robots de Tesla son un poco preocupantes), los incidentes cibernéticos maliciosos siguen siendo posibles debido a los ataques cibernéticos. Algunos de nuestros automóviles, aviones y equipos médicos aún dependen de un complejo código de sistemas integrados para realizar tareas críticas, y la posibilidad de que estos objetos sean pirateados no solo es alarmante, sino que también puede poner en peligro la vida.
Al igual que con cualquier otro tipo de software, los desarrolladores son los primeros en entrar en contacto con el código, justo al inicio de la fase de creación. Al igual que con cualquier otro tipo de software, esto puede ser un caldo de cultivo para vulnerabilidades potenciales que podrían pasar desapercibidas antes de que el producto se lance al mercado.
Los desarrolladores no son expertos en seguridad, y ninguna empresa debe esperar que desempeñen ese papel, pero pueden disponer de un arsenal más potente para hacer frente a las amenazas que les afectan. A medida que nuestras necesidades tecnológicas evolucionan, los sistemas integrados (normalmente escritos en C y C++) se utilizarán con mayor frecuencia, por lo que es fundamental que los desarrolladores reciban formación especializada en seguridad sobre las herramientas de ese entorno.
Explosiones de freidoras de aire caliente, vehículos robados... ¿Vamos a quedarnos de brazos cruzados?
Aunque existen algunas normas y reglamentos en torno al desarrollo de la seguridad para garantizar nuestra seguridad, necesitamos lograr avances más precisos y significativos en la seguridad de todo tipo de software. Puede parecer descabellado pensar en un problema que pueda provocar el hackeo de una freidora, pero ha ocurrido en forma de un ataque de ejecución remota de código (que permite a los actores maliciosos elevar la temperatura a niveles peligrosos), al igual que la vulnerabilidad que permite el control remoto de un vehículo.
En particular, los vehículos son especialmente complejos, con múltiples sistemas integrados, cada uno de los cuales es responsable de microfunciones; desde los limpiaparabrisas automáticos hasta las funciones del motor y los frenos,todo lo que se pueda imaginar. Los vehículos conectados, junto con la creciente tecnología de comunicaciones (como Wi-Fi, Bluetooth y GPS), representan una compleja infraestructura digital que se enfrenta a múltiples vectores de ataque. Además, se prevé que en 2023 habrá 76,3 millones de vehículos conectados en las carreteras de todo el mundo, lo quesupone una base sólida para una defensa que garantice una seguridad real.
MISRA es una organización clave que aborda activamente las amenazas a los sistemas embebidos y ha establecido directrices para promover la seguridad, la protección, la portabilidad y la fiabilidad del código en entornos de sistemas embebidos. Estas directrices son la guía que todas las empresas deben seguir en sus proyectos de sistemas embebidos.
Sin embargo, para crear y ejecutar código que cumpla con este estándar de oro, se necesitan ingenieros de sistemas embebidos que confíen plenamente en las herramientas (por no hablar de la concienciación sobre la seguridad).
¿Por qué es tan específico el aumento de las habilidades de seguridad de los sistemas integrados?
Según los estándares actuales, los lenguajes de programación C y C++ están obsoletos, pero siguen siendo ampliamente utilizados. Constituyen el núcleo funcional del código de los sistemas embebidos, y el C/C++ embebido disfruta de una brillante vida moderna como parte del mundo de los dispositivos conectados.
A pesar de que estos lenguajes tienen raíces bastante antiguas y muestran un comportamiento similar en cuanto a vulnerabilidades comunes, como inyección de defectos y desbordamiento de búfer, para que los desarrolladores puedan mitigar con éxito las vulnerabilidades de seguridad en los sistemas embebidos, deben experimentar de primera mano el código que imita su entorno de trabajo. La formación genérica en C de las prácticas de seguridad generales no es tan potente e inolvidable como la que se obtiene trabajando en un entorno C embebido.
Dado que los automóviles modernos cuentan con entre una docena y más de cien sistemas integrados, es necesario formar adecuadamente a los desarrolladores para que sepan qué buscar en el IDE y cómo solucionarlo.

Proteger los sistemas integrados desde la base es responsabilidad de todos.
La realidad actual de muchas organizaciones es que la velocidad de desarrollo prima sobre la seguridad, al menos en lo que respecta a las responsabilidades de los desarrolladores. Rara vez se les evalúa en función de su capacidad para generar código seguro, sino que el estándar de oro es desarrollar rápidamente funciones excelentes. La demanda de software no hará más que aumentar, pero esta cultura nos predispone al fracaso a la hora de defendernos contra las vulnerabilidades y los ciberataques que estas permiten.
Si los desarrolladores no han recibido formación, no es culpa suya, sino que alguien del equipo de AppSec debe ayudar a subsanar esta carencia recomendando a toda la comunidad de desarrolladores programas de mejora de habilidades adecuados, accesibles (por no hablar de evaluables). La seguridad debe ser una prioridad desde el inicio de cualquier proyecto de desarrollo de software, y todos, especialmente los desarrolladores, deben tener en cuenta que deben desempeñar su papel.
Experiencia personal con los problemas de seguridad de los sistemas integrados
El desbordamiento del búfer, los defectos de inyección y los errores de lógica de negocio son trampas comunes en el desarrollo de sistemas integrados. Cuando están profundamente enterrados en el laberinto de microcontroladores de un solo vehículo o dispositivo, desde el punto de vista de la seguridad, pueden significar un desastre.
Los desbordamientos de búfer son especialmente comunes. Si desea obtener más información sobre cómo pueden afectar a la freidora que hemos mencionado anteriormente (permitiendo la ejecución remota de código), consulte este informe sobre CVE-2020-28592.
Ahora es el momento de experimentar de primera mano una vulnerabilidad de desbordamiento de búfer en código C/C++ integrado real. Participa en este desafío y comprueba si eres capaz de encontrar, identificar y corregir el patrón de codificación defectuoso que provoca este error tan insidioso:
.png)
¿Cómo lo estás haciendo? Visita www.securecodewarrior.com para obtener formación precisa y eficaz sobre seguridad en sistemas embebidos.

Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Ver informeReservar una demostraciónMatias 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.
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.
Hay muchas referencias en la cultura popular a la IA y los robots rebeldes, así como a los electrodomésticos que se activan por sí solos. Todo ello está lleno de diversión y fantasía de ciencia ficción, pero a medida que el Internet de las cosas y los dispositivos conectados se vuelven cada vez más comunes en nuestros hogares, también debería serlo el debate sobre la ciberseguridad y la seguridad. El software está en todas partes, y es fácil olvidar hasta qué punto dependemos de unas pocas líneas de código para llevar a cabo todas esas cosas ingeniosas que nos aportan grandes innovaciones y comodidades. Al igual que el software basado en la web yAPI y dispositivos móviles, si un atacante encuentra código vulnerable en un sistema integrado, lo aprovechará.
Aunque es poco probable que un ejército de microondas venga a esclavizar a la humanidad (pero los robots de Tesla son un poco preocupantes), los incidentes cibernéticos maliciosos siguen siendo posibles debido a los ataques cibernéticos. Algunos de nuestros automóviles, aviones y equipos médicos aún dependen de un complejo código de sistemas integrados para realizar tareas críticas, y la posibilidad de que estos objetos sean pirateados no solo es alarmante, sino que también puede poner en peligro la vida.
Al igual que con cualquier otro tipo de software, los desarrolladores son los primeros en entrar en contacto con el código, justo al inicio de la fase de creación. Al igual que con cualquier otro tipo de software, esto puede ser un caldo de cultivo para vulnerabilidades potenciales que podrían pasar desapercibidas antes de que el producto se lance al mercado.
Los desarrolladores no son expertos en seguridad, y ninguna empresa debe esperar que desempeñen ese papel, pero pueden disponer de un arsenal más potente para hacer frente a las amenazas que les afectan. A medida que nuestras necesidades tecnológicas evolucionan, los sistemas integrados (normalmente escritos en C y C++) se utilizarán con mayor frecuencia, por lo que es fundamental que los desarrolladores reciban formación especializada en seguridad sobre las herramientas de ese entorno.
Explosiones de freidoras de aire caliente, vehículos robados... ¿Vamos a quedarnos de brazos cruzados?
Aunque existen algunas normas y reglamentos en torno al desarrollo de la seguridad para garantizar nuestra seguridad, necesitamos lograr avances más precisos y significativos en la seguridad de todo tipo de software. Puede parecer descabellado pensar en un problema que pueda provocar el hackeo de una freidora, pero ha ocurrido en forma de un ataque de ejecución remota de código (que permite a los actores maliciosos elevar la temperatura a niveles peligrosos), al igual que la vulnerabilidad que permite el control remoto de un vehículo.
En particular, los vehículos son especialmente complejos, con múltiples sistemas integrados, cada uno de los cuales es responsable de microfunciones; desde los limpiaparabrisas automáticos hasta las funciones del motor y los frenos,todo lo que se pueda imaginar. Los vehículos conectados, junto con la creciente tecnología de comunicaciones (como Wi-Fi, Bluetooth y GPS), representan una compleja infraestructura digital que se enfrenta a múltiples vectores de ataque. Además, se prevé que en 2023 habrá 76,3 millones de vehículos conectados en las carreteras de todo el mundo, lo quesupone una base sólida para una defensa que garantice una seguridad real.
MISRA es una organización clave que aborda activamente las amenazas a los sistemas embebidos y ha establecido directrices para promover la seguridad, la protección, la portabilidad y la fiabilidad del código en entornos de sistemas embebidos. Estas directrices son la guía que todas las empresas deben seguir en sus proyectos de sistemas embebidos.
Sin embargo, para crear y ejecutar código que cumpla con este estándar de oro, se necesitan ingenieros de sistemas embebidos que confíen plenamente en las herramientas (por no hablar de la concienciación sobre la seguridad).
¿Por qué es tan específico el aumento de las habilidades de seguridad de los sistemas integrados?
Según los estándares actuales, los lenguajes de programación C y C++ están obsoletos, pero siguen siendo ampliamente utilizados. Constituyen el núcleo funcional del código de los sistemas embebidos, y el C/C++ embebido disfruta de una brillante vida moderna como parte del mundo de los dispositivos conectados.
A pesar de que estos lenguajes tienen raíces bastante antiguas y muestran un comportamiento similar en cuanto a vulnerabilidades comunes, como inyección de defectos y desbordamiento de búfer, para que los desarrolladores puedan mitigar con éxito las vulnerabilidades de seguridad en los sistemas embebidos, deben experimentar de primera mano el código que imita su entorno de trabajo. La formación genérica en C de las prácticas de seguridad generales no es tan potente e inolvidable como la que se obtiene trabajando en un entorno C embebido.
Dado que los automóviles modernos cuentan con entre una docena y más de cien sistemas integrados, es necesario formar adecuadamente a los desarrolladores para que sepan qué buscar en el IDE y cómo solucionarlo.

Proteger los sistemas integrados desde la base es responsabilidad de todos.
La realidad actual de muchas organizaciones es que la velocidad de desarrollo prima sobre la seguridad, al menos en lo que respecta a las responsabilidades de los desarrolladores. Rara vez se les evalúa en función de su capacidad para generar código seguro, sino que el estándar de oro es desarrollar rápidamente funciones excelentes. La demanda de software no hará más que aumentar, pero esta cultura nos predispone al fracaso a la hora de defendernos contra las vulnerabilidades y los ciberataques que estas permiten.
Si los desarrolladores no han recibido formación, no es culpa suya, sino que alguien del equipo de AppSec debe ayudar a subsanar esta carencia recomendando a toda la comunidad de desarrolladores programas de mejora de habilidades adecuados, accesibles (por no hablar de evaluables). La seguridad debe ser una prioridad desde el inicio de cualquier proyecto de desarrollo de software, y todos, especialmente los desarrolladores, deben tener en cuenta que deben desempeñar su papel.
Experiencia personal con los problemas de seguridad de los sistemas integrados
El desbordamiento del búfer, los defectos de inyección y los errores de lógica de negocio son trampas comunes en el desarrollo de sistemas integrados. Cuando están profundamente enterrados en el laberinto de microcontroladores de un solo vehículo o dispositivo, desde el punto de vista de la seguridad, pueden significar un desastre.
Los desbordamientos de búfer son especialmente comunes. Si desea obtener más información sobre cómo pueden afectar a la freidora que hemos mencionado anteriormente (permitiendo la ejecución remota de código), consulte este informe sobre CVE-2020-28592.
Ahora es el momento de experimentar de primera mano una vulnerabilidad de desbordamiento de búfer en código C/C++ integrado real. Participa en este desafío y comprueba si eres capaz de encontrar, identificar y corregir el patrón de codificación defectuoso que provoca este error tan insidioso:
.png)
¿Cómo lo estás haciendo? Visita www.securecodewarrior.com para obtener formación precisa y eficaz sobre seguridad en sistemas embebidos.
Índice
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.

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónDescargarRecursos para ayudarle a empezar
Temas y contenidos de la formación sobre códigos de seguridad
Nuestro contenido líder en el sector está en constante evolución para adaptarse al cambiante panorama del desarrollo de software, teniendo en cuenta su función. Los temas abarcan desde la IA hasta la inyección de XQuery, y son aptos para puestos que van desde arquitectos e ingenieros hasta gestores de productos y control de calidad. Eche un vistazo por adelantado a nuestro catálogo de contenidos, ordenados por tema y función.
La Cámara de Comercio establece el estándar para la seguridad impulsada por desarrolladores a gran escala
Kamer van Koophandel comparte cómo ha integrado la codificación segura en el desarrollo diario mediante certificaciones basadas en roles, evaluaciones comparativas de Trust Score y una cultura de responsabilidad compartida en materia de seguridad.
Modelado de amenazas con IA: convertir a cada desarrollador en un modelador de amenazas
Saldrá mejor equipado para ayudar a los desarrolladores a combinar ideas y técnicas de modelado de amenazas con las herramientas de IA que ya utilizan para reforzar la seguridad, mejorar la colaboración y crear software más resistente desde el principio.
Recursos para ayudarle a empezar
Cybermon ha vuelto: la misión de derrotar al jefe IA ya está disponible bajo demanda.
Cybermon 2025 ya está disponible en SCW durante todo el año. Guerra de seguridad de IA/LLM de alto nivel de la tribu, desarrollo de IA de seguridad reforzada con modelos de gran escala.
Interpretación de la Ley de Resiliencia de la Red: ¿Qué significa lograr la seguridad mediante el diseño del desarrollo de software?
Comprenda los requisitos de la Ley de Resiliencia de las Redes de la Unión Europea (CRA), a quiénes se aplica y cómo los equipos de ingeniería pueden prepararse mediante prácticas de diseño, prevención de vulnerabilidades y desarrollo de capacidades de los desarrolladores.
Factor impulsor 1: Criterios de éxito claros y medibles
El facilitador 1 es el preludio de nuestra serie de 10 partes sobre los impulsores del éxito, que muestra cómo vincular la codificación segura con los resultados empresariales, como la reducción del riesgo y el aumento de la velocidad de maduración de los planes a largo plazo.




%20(1).avif)
.avif)
