Seminario web destacado: Pruebas de API mejoradas con IA: un enfoque de prueba sin código | Vea ahora
Resumen
Perspectivas de la industria automotriz
El proyecto de industria del automóvil La industria automotriz sigue evolucionando y creciendo rápidamente en áreas técnicas en las que otras industrias han operado durante muchos años. Por ejemplo, el Laboratorio de Propulsión a Chorro de la NASA publica correcciones de código y nuevas funciones que se encuentran actualmente en desarrollo para una nave espacial que se encuentra a millones de kilómetros de distancia, en camino a su destino. De manera similar, encontramos que la industria automotriz proporciona actualizaciones de software para automóviles que se han vendido y que están siendo conducidos por sus consumidores en todo el mundo.
El futuro de los coches autónomos también parece prometedor, con potencial para una adopción generalizada en las próximas décadas. Varias empresas, entre ellas Waymo, Tesla, Uber y fabricantes de coches tradicionales como GM y Ford, están a la vanguardia del desarrollo de tecnología de conducción autónoma. Muchas están realizando pruebas exhaustivas y algunas han puesto en marcha programas piloto en ciudades seleccionadas. A medida que la tecnología madure, se espera que revolucione el transporte, haciéndolo más seguro, más eficiente y más accesible.
Desafíos en materia de seguridad y protección
Este tipo de evolución, en particular la de los sistemas avanzados de asistencia al conductor (ADAS), conlleva nuevos desafíos en materia de seguridad. Normas como la ISO 26262 abordan la seguridad funcional del desarrollo de sistemas eléctricos y electrónicos (E/E), que incluyen propulsión, sistemas de control dinámico y asistencia al conductor.
Además, plataformas como AUTOSAR ofrecen una arquitectura de capas de software estandarizada y abierta que mejora aún más la seguridad. Incluyen pautas para el uso del lenguaje C++14 en el desarrollo de sistemas críticos y relacionados con la seguridad. Sin embargo, los fabricantes se han dado cuenta de que, debido a la mayor complejidad y las incógnitas de las tecnologías modernas que trabajan juntas, junto con los cambios en el entorno interno y externo, han surgido problemas de seguridad que estas normas no abordan.
Al abordar la norma ISO 21343, es importante comprender que las consideraciones de seguridad recomendadas para la ciberseguridad deben integrarse en sus procesos de desarrollo existentes. ISO 21434 Se hace referencia a la norma ISO 26262, ya que se considera que estas dos disciplinas deben intercambiar estrategias, coordinación e incluso herramientas. Esto significa que su organización debe hacer que sus ingenieros de sistemas trabajen con sus ingenieros de seguridad durante la fase de análisis de requisitos de seguridad y protección.
Paralelamente, se deben realizar análisis de peligros y evaluación de riesgos (HARA) para la seguridad, y análisis de amenazas y evaluación de riesgos (TARA) para la protección. No obstante, se necesita un entorno de colaboración sólido para garantizar un resultado seguro y protegido.
Garantizar la seguridad en la fase de implementación del software comienza por aplicación de análisis de código estáticoEl estándar de codificación MISRA incorpora pautas de seguridad, pero también puede aumentar y fortalecer la seguridad del código Adopción de CERT.
Continuando por el lado derecho de la V, realice pruebas unitarias de todos los requisitos de seguridad de bajo nivel. En la siguiente fase, cree casos de prueba que incorporen funcionalidad adicional. Estos casos de prueba garantizan que se cumplan los requisitos de alto nivel.
En cuanto a las pruebas del sistema, cree pruebas del sistema para asegurarse de que se verifiquen los requisitos del sistema. Confirme que todos los casos de prueba se corresponden con sus requisitos. Esto garantiza que ningún requisito quede sin probar. Sin embargo, para garantizar que cada requisito se pruebe por completo, incorpore una cobertura de código estructural según lo recomendado por ISO 21434 e ISO 26262. La cobertura de código no solo garantiza que se haya probado cada línea de código, sino que también garantiza que sus casos de prueba de seguridad cubran por completo cada ruta de ejecución posible a través de sus medidas de remediación de la funcionalidad de seguridad.
Para superar los desafíos de seguridad, los equipos pueden recurrir a soluciones como Parasoft C/C++test, que ha sido certificada por TÜV SÜD para su uso en aplicaciones críticas para la seguridad según la norma ISO 26262 y la norma ISO 21434 a través de la asociación. Ambas normas recomiendan realizar análisis estáticos, análisis dinámicos (que incluyen pruebas unitarias, de integración y de sistema), cobertura de código y trazabilidad de requisitos. Parasoft ofrece exactamente lo que recomiendan las normas ISO 26262 e ISO 21434 para la verificación de software en materia de seguridad y protección, y también proporciona la documentación necesaria para demostrar el cumplimiento de ambas normas.
Requisitos reglamentarios del documento WP.29 de la CEPE
El 23 de junio de 2020, la Comisión Económica de las Naciones Unidas para Europa (CEPE) publicó los requisitos reglamentarios en los que se describen los nuevos procesos y tecnologías que los fabricantes de automóviles deben incorporar tanto a su organización como a sus vehículos. Estas regulaciones también se aplican a los proveedores de nivel 1 y nivel 2 de componentes de software y hardware, incluidos los servicios móviles.
Los fabricantes de vehículos deben incorporar a la estructura organizativa un marco de gestión basado en riesgos para descubrir, analizar y protegerse contra amenazas, vulnerabilidades y ciberataques relevantes.
Las siguientes categorías requieren pruebas de ciberseguridad y aprobar inspecciones.
- La categoría M comprende los vehículos estándar de cuatro ruedas.
- La categoría N es para camionetas y furgonetas.
- Las categorías L6 y L7 incluyen coches eléctricos y capacidades autónomas.
Una calificación aprobatoria en los requisitos clave del WP.29 tanto organizativos como de vehículos significa que el fabricante recibe un certificado de cumplimiento. Los vehículos nuevos sin este certificado no se podrán vender en la UE después de julio de 2024. Tenga en cuenta que Estados Unidos no participa ni tiene sus propias regulaciones similares. Sin embargo, el futuro está por llegar.
Especias para automoción
El programa ASPICE (Automotive Software Process Improvement and Capability Determination) ofrece un marco de medición para que los evaluadores independientes evalúen la capacidad de una organización para el desarrollo de software. Garantizar la seguridad del software y la ciberseguridad no solo se encuentra dentro de los aspectos de ingeniería técnica del desarrollo del sistema electrónico, sino que también requiere que la organización incorpore procesos y controles.
Estos procesos y controles deben incluir formas de rastrear y monitorear el progreso dentro de todas las prácticas de la organización para garantizar:
- Se han adoptado prácticas de seguridad y ciberseguridad.
- Se cumplen los requisitos de seguridad y ciberseguridad.
Este es también uno de los dos criterios de certificación clave para el WP.29 de la CEPE sobre capacidad de ciberseguridad organizacional.
Escenarios inseguros
Se han materializado otras derivaciones de la norma ISO 26262, como la ISO/PAS 21448, más conocida como SOTIF (seguridad de la funcionalidad prevista). SOTIF le ayuda a analizar y prevenir el uso indebido de la funcionalidad prevista cuando crea una situación insegura. Por ejemplo, su vehículo se apaga inadvertidamente mientras lo conduce, debido a una actualización de software iniciada.
Las vulnerabilidades de seguridad también plantean situaciones peligrosas. Un atacante podría usar la conexión wifi del vehículo para explotar de forma remota un puerto expuesto. De alguna manera, podría abrirse paso desde el sistema de información y entretenimiento avanzado del vehículo (IVI) para tomar el control o influir en componentes críticos para la seguridad, como los frenos o la dirección, gracias a que comparten la misma infraestructura de comunicaciones.
El papel de las normas
Normas como la SAE J3061, sustituida por la ISO/SAE 21434, especifican que se debe realizar un análisis de amenazas y una evaluación de riesgos (TARA) inicial para evaluar las posibles amenazas relacionadas con la operación, la privacidad y otros factores que pueden afectar a un usuario o conductor de la vía. Si el riesgo de cualquier amenaza es suficientemente alto, entonces es necesario un proceso de ciberseguridad. Existen varios enfoques para eliminar las vulnerabilidades de seguridad y requisitos que mitiguen los riesgos. Obtenga más información sobre TARA y por qué su equipo de desarrollo necesita TARA.
Actualmente existen normas como la UL 4600 específicamente para el funcionamiento de vehículos totalmente autónomos. Esto significa que no hay supervisión humana y que la autonomía asume toda la responsabilidad. Esta norma se centra en la elaboración de un caso de seguridad para el despliegue de vehículos SAE Nivel 4/5, no en cómo probar la seguridad de los vehículos autónomos en las vías públicas. Eso implicaría una norma diferente.
Estas normas y otras desempeñan un papel crucial en la seguridad de la industria automotriz. Los fabricantes de equipos originales (OEM) asumen los costos de responsabilidad por entregar vehículos inseguros a las masas. Para mitigar estos riesgos, los OEM deben adoptar y cumplir estas normas. Sin embargo, los OEM deben exigir la misma calidad y cumplimiento por parte de sus proveedores. Una debilidad en un componente puede socavar la seguridad de todo el sistema.
Creación de estándares de codificación personalizados
Parasoft, en colaboración con algunos de sus fabricantes de equipos originales (OEM) de automóviles, ha creado estándares de codificación personalizados que incorporan MISRA, AUTOSAR C++14, CERT, CWE y otras reglas personalizadas para que las utilicen sus proveedores. Esto garantiza que exista el mismo nivel de calidad de software en toda la cadena de suministro.
Parasoft C/C++test es una solución de pruebas unificada que incluye pruebas unitarias y cobertura de código estructural como parte de su funcionalidad. Esta solución para el desarrollo de software C/C++ admite un conjunto integral de objetivos de hardware y ecosistemas de desarrollo que los proveedores y OEM pueden usar con diversas infraestructuras de desarrollo. C/C++test ha sido certificado por TÜV SÜD para su uso en sistemas críticos de seguridad. Para ADAS y automóviles conectados seguros, las integraciones perfectas de C/C++test con Prueba SOA y Virtualizar Combine pruebas de API con cobertura de aplicaciones en tiempo de ejecución y bancos de pruebas virtuales simulados.
¿Qué es ISO 26262?
La ISO 26262 es una norma de seguridad funcional que abarca todo el proceso de desarrollo de productos automotrices. Incluye actividades como la especificación de requisitos, el diseño, la implementación, la integración, la verificación, la validación y la configuración.
La norma proporciona orientación sobre las actividades del ciclo de vida de seguridad automotriz al especificar los siguientes requisitos:
- Gestión de seguridad funcional para aplicaciones de automoción
- La fase de concepto para aplicaciones automotrices
- Desarrollo de productos a nivel de sistema para el diseño arquitectónico de software de aplicaciones automotrices
- Desarrollo de productos a nivel de hardware para pruebas unitarias de software de aplicaciones automotrices
- Desarrollo de productos a nivel de software para aplicaciones de automoción
- Producción, operación, servicio y desmantelamiento.
- Procesos de soporte: interfaces dentro de desarrollos distribuidos, requisitos de gestión de seguridad, gestión de cambios y configuración, verificación, documentación, uso de herramientas de software, calificación de componentes de software, calificación de componentes de hardware y argumentos de uso probado.
- Análisis orientados a la seguridad y al nivel de integridad de seguridad automotriz (ASIL)
La ISO 26262 es una adaptación de la IEC 61508 para la industria automotriz. La IEC 61508 es una norma básica de seguridad industrial funcional para dispositivos eléctricos, electrónicos y electrónicos programables, y aplicable a todo tipo de industrias. Otros sectores como IEC 62304 médica y Ferrocarril EN 50128 También se han derivado de IEC 61508.
Dado que la norma ISO 26262 se extrajo y amplió a partir de la norma IEC 61508 para la industria automotriz, se trata por herencia de una norma de seguridad funcional que proporciona orientación para regular todo el proceso del ciclo de vida del producto, a nivel de software y hardware, desde el desarrollo conceptual hasta el desmantelamiento. Abarca los sistemas automotrices eléctricos y electrónicos y su proceso de desarrollo, incluida la especificación de requisitos, el diseño, la implementación, la integración, la verificación, la validación y la configuración.
La última versión, ISO 26262:2018, se subdivide en 12 partes. La norma ha ido evolucionando desde su primera edición, publicada en 2011.
¿Cuáles son las partes de ISO 26262?
Realización de análisis de peligros y evaluación de riesgos
En la norma ISO 26262, se debe realizar un análisis de peligros y evaluación de riesgos (HARA) en el sistema en desarrollo. Una vez completado el HARA, se asigna un ASIL al componente de software y existen niveles del A al D. El nivel A representa la asignación de peligro más baja y el nivel D representa la asignación de peligro más alta. Esto significa que el fallo de un sistema con asignación de ASIL D podría ser catastrófico.
También existe una asignación de nivel de gestión de calidad (QM), lo que significa que no hay ningún requisito de seguridad. El ASIL se asigna tomando la gravedad de la lesión por la probabilidad de la falla por la capacidad de control. La siguiente tabla detalla cada nivel de gravedad, exposición y capacidad de control.
Exposición = La frecuencia o probabilidad de que ocurra la falla.
Controlabilidad: El grado en el que podemos garantizar que el evento no suceda.
Existen varias tablas disponibles gratuitamente que ayudan a determinar el valor ASIL. La tabla que aparece a continuación es un ejemplo de una tabla mucho más fácil de leer que muestra los niveles ASIL en colores según la gravedad, la exposición y la capacidad de control.
Seguridad activa y pasiva
Los vehículos que circulan por la carretera disponen de numerosos sistemas de seguridad, algunos de los cuales se consideran seguridad activa y otros seguridad pasiva.
La seguridad activa se utiliza para referirse a la tecnología que ayuda a prevenir un choque o accidente. Tienes el control de tracción, el sistema de frenos antibloqueo, el sistema de visión ADAS y otros.
Los sistemas de seguridad pasiva sirven para mantener seguros a los pasajeros. Por ejemplo, en caso de accidente, tienes bolsas de aire y cinturones de seguridad. El limpiaparabrisas electrónico y el cuadro de instrumentos también son sistemas de seguridad pasiva.
Realización de pruebas de verificación y validación del diseño e implementación de unidades de software
Dado que esta guía se centra en el software, es importante cubrir los siguientes aspectos: métodos de verificación y validación de pruebas recomendado por la norma. Por ejemplo, la Tabla 7 captura los métodos de verificación 1a a 1k que se aplicarán durante el diseño e implementación de la unidad. El método 1h, “Análisis de código estático”, es altamente recomendado para los niveles ASIL A a D.
Las columnas de la Tabla 7 a la derecha muestran los niveles ASIL de A a D. Un solo símbolo “+” indica que la norma lo recomienda, dos “++” indican que es muy recomendable y una “o” indica que no se recomienda.
Mejore sus pruebas de software con las soluciones de Parasoft.
Explora los capítulos
- Introducción "
- 1. Descripción general »
- 2. Análisis estático »
- 3. MISRA »
- 4. AUTOSAR C++ 14 »
- 5. SEI/CERTIFICACIÓN »
- 6. CWE »
- 7. Pruebas unitarias »
- 8. Pruebas de regresión »
- 9. Pruebas de integración de software »
- 10. Pruebas de sistemas de software »
- 11. Cobertura del código estructural »
- 12. Matriz de trazabilidad de requisitos »
- 13. Calificación de herramientas »
- 14. Informes y análisis »