Qué garantiza la certificación EAL y qué no
CC EAL6+ no es un certificado de invulnerabilidad. Te explicamos exactamente qué significa.
Si has comparado billeteras de hardware, seguramente has visto que las calificaciones EAL se usan como argumento de venta. El elemento seguro EAL6+ implica el estándar de seguridad más alto alcanzable. Las calificaciones son reales, el proceso de certificación es riguroso y los chips que llevan estas etiquetas realmente han sido probados bajo estándares exigentes.
Pero la certificación EAL también es uno de los conceptos más malinterpretados en el marketing de billeteras de hardware. Frecuentemente se presenta e interpreta como una garantía de seguridad casi absoluta, pero no lo es.
En este artículo explicamos el marco EAL desde cero, revisamos en qué consiste el proceso de evaluación en EAL5+ y EAL6+, nombramos los chips específicos usados en billeteras de hardware y sus niveles certificados, y analizamos cada una de las tres limitaciones estructurales que la certificación no aborda.
La certificación EAL indica la profundidad y rigor de la evaluación de seguridad a la que fue sometido un chip. No significa que el chip no pueda ser vulnerado. Son afirmaciones diferentes, y confundirlas genera una falsa sensación de seguridad.
¿Qué es Common Criteria?
Common Criteria (formalmente: Common Criteria for Information Technology Security Evaluation, ISO/IEC 15408) es un marco internacional para evaluar la seguridad de productos de TI. Se estableció en 1999 para armonizar el panorama fragmentado de los esquemas de evaluación de seguridad específicos de cada país.
Actualmente, más de 30 países participan en el Common Criteria Recognition Arrangement (CCRA), y un certificado CC es el estándar globalmente reconocido para la seguridad de productos evaluados de forma independiente.
Target of Evaluation
El marco gira en torno a un concepto central: el Target of Evaluation, o TOE. El TOE es el producto o componente específico que se evalúa. En los elementos seguros, el TOE suele ser el propio chip, incluyendo su arquitectura de hardware, sistema operativo embebido y la biblioteca criptográfica que ejecuta.
El fabricante del TOE presenta un documento Security Target, una especificación formal de lo que el producto está diseñado para proteger, las amenazas que debe resistir, las funciones de seguridad que implementa y las condiciones bajo las cuales esas funciones son válidas.
Emisión del certificado
Luego, un laboratorio independiente acreditado evalúa el producto frente a esas afirmaciones, con la profundidad y rigor correspondientes al nivel EAL declarado. Si el producto cumple su Security Target en el nivel reclamado, un organismo nacional de certificación emite el certificado.
Una implicación clave de esta estructura: la evaluación prueba el producto frente a su propio Security Target, es decir, lo que el fabricante dijo que haría. Un producto que declara protecciones modestas y las cumple puede obtener el mismo EAL que uno que declara protecciones más amplias y también las cumple.
EAL mide el rigor de la evaluación, no la ambición ni la integridad del diseño de seguridad. Esto es intencional y permite que CC se aplique a una amplia gama de productos.
Resumen de la escala EAL
Common Criteria define siete Niveles de Garantía de Evaluación, EAL1 a EAL7. Cada nivel representa un conjunto más exigente de requisitos de garantía; principalmente en cuanto a qué tan bien está documentado, analizado y probado el diseño del producto, y cuán sofisticado se asume que es el atacante.
Niveles EAL más altos no producen automáticamente productos más seguros. Producen productos evaluados de manera más exhaustiva.
Un producto con funciones de seguridad limitadas pero correctamente implementadas que fue evaluado en EAL6 no es necesariamente más seguro en la práctica que uno con funciones de seguridad más amplias evaluado en EAL4. Todo depende de lo que cubre cada Security Target.
| Nivel | Nombre oficial | ¿Qué significa? | Uso típico | Suposición sobre el atacante |
|---|---|---|---|---|
| EAL1 | Probado funcionalmente | Pruebas básicas para asegurar que el producto hace lo que promete | Productos no críticos | No hay atacante estructurado |
| EAL2 | Probado estructuralmente | Pruebas del desarrollador + revisión independiente limitada | Comercial de bajo riesgo | Atacante oportunista |
| EAL3 | Probado metódicamente | Pruebas sistemáticas con evidencia del ciclo de vida seguro | Comercial con necesidades de seguridad | Habilidad moderada |
| EAL4 | Diseñado, probado y revisado metódicamente | Documentación completa + pruebas de penetración independientes | Software empresarial, sistemas operativos | Habilidad con herramientas estándar |
| EAL5 | Diseño semi-formalmente verificado y probado | Verificación de diseño semi-formal + pruebas de ataque rigurosas e independientes | Tarjetas inteligentes, hardware cripto | Alto potencial de ataque |
| EAL6 | Diseño semi-formalmente verificado y probado (extendido) | Rigor de EAL5 + análisis de vulnerabilidades extendido + verificación parcial formal | Elementos seguros, pasaportes, HSMs | Potencial de ataque muy alto |
| EAL7 | Diseño formalmente verificado y probado | Prueba matemática formal completa de las propiedades de seguridad | Sistemas militares, clasificados únicamente | Adversario tipo Estado |
Para billeteras de hardware y elementos seguros, los niveles relevantes son EAL5+ y EAL6+. EAL4 es el estándar para software empresarial como sistemas operativos y firewalls. EAL7, el nivel más alto, en la práctica está limitado a sistemas militares y clasificados de alcance muy restringido.
El sufijo "+" indica una ampliación: requisitos adicionales al nivel base que se incluyeron en la evaluación. En los elementos seguros, la ampliación más importante suele ser AVA_VAN.5. Es el nivel más alto de análisis de vulnerabilidades, que exige a los evaluadores intentar ataques usando las técnicas más sofisticadas disponibles para un adversario con potencial de ataque muy alto.
¿Qué implican EAL5+ y EAL6+?
La diferencia entre EAL5 y EAL6 radica en la profundidad de verificación de diseño requerida y la sofisticación del atacante asumido. Ambos niveles exigen pruebas de penetración realizadas por evaluadores independientes que intentan vulnerar el chip.
EAL5+: Diseño semi-formalmente verificado y probado
En EAL5+, los fabricantes deben proporcionar documentación de diseño semi-formal. Esto es una representación estructurada y matemática de la arquitectura de seguridad del chip que va más allá de la documentación requerida en niveles inferiores.
Los evaluadores independientes analizan estos diseños en busca de debilidades y realizan pruebas de penetración, simulando el enfoque de un adversario con alto potencial de ataque; es decir, alguien con conocimiento técnico avanzado, recursos, motivación y tiempo suficiente para estudiar el chip.
El ST33J2M0, el elemento seguro de STMicroelectronics utilizado en el Ledger Nano X, tiene certificación EAL5+. Es un estándar para chips usados en aplicaciones bancarias, terminales de pago y la mayoría de las tarjetas inteligentes de contacto.
EAL6+: Diseño semi-formalmente verificado y probado (extendido)
EAL6+ añade requisitos significativos sobre EAL5+. La verificación del diseño debe ser más exhaustiva, cubriendo un rango más amplio de módulos internos del chip y sus interacciones.
El análisis de vulnerabilidades se amplía para incluir un espectro mayor de escenarios de ataque. El atacante asumido sube a "potencial de ataque muy alto" con técnicas de última generación, tiempo de análisis extendido y equipos sofisticados, incluyendo capacidades de inyección de fallos y análisis invasivo de chips.
EAL6+ es el estándar para productos desplegados en entornos donde se pueden destinar recursos significativos a un solo objetivo: elementos seguros en pasaportes gubernamentales, HSM bancarios y hardware de consumo sensible a la seguridad.
Un chip certificado en EAL6+ ha sido sometido a intentos de ataque por investigadores de seguridad entrenados con equipos profesionales, y esos ataques no tuvieron éxito dentro del alcance de la evaluación.
El ST33K1M5 (utilizado en Ledger Nano S Plus, Stax y Flex), Samsung Semiconductors (específicamente la familia S3D350 presente en Tangem Wallets), la familia NXP SE050/SE051, la serie NXP P60/SmartMX2 y la familia Infineon SLE78/OPTIGA tienen certificación EAL6+. Estos son los chips que se encuentran en las billeteras de hardware del segmento más alto de seguridad.
Elementos seguros utilizados en billeteras de hardware
| Fabricante | Familia de chips | Nivel EAL | Usado en | Notas |
|---|---|---|---|---|
| STMicroelectronics | ST33J2M0 | EAL5+ | Ledger Nano X | Núcleo ARM SC300, certificado EMVCo |
| STMicroelectronics | ST33K1M5 | EAL6+ | Ledger Nano S Plus, Ledger Stax, Ledger Flex | Núcleo ARM SC300, esquema EUCC/CC:2022 |
| NXP Semiconductors | Familia SE050 / SE051 | EAL6+ | Seguridad IoT, billeteras de hardware (CoolWallet) | Java Card OS, soporte PUF |
| NXP Semiconductors | P60 / SmartMX2 | EAL6+ | Banca, pasaportes, IoT | PUF, SecureFetch™, GlueLogic™ |
| Infineon Technologies | Familia SLE78 / OPTIGA | EAL6+ | Billeteras de hardware (HASHWallet), módulos TPM | |
| Samsung Semiconductors | S3D232A | EAL6+ | Billeteras de hardware, documentos de viaje legibles por máquina (MRTD) | Usado en Tangem Wallet |
Tres limitaciones principales de las certificaciones EAL
La certificación EAL es la garantía independiente más sólida disponible de que un chip ha sido seriamente probado ante técnicas de ataque avanzadas. Pero tiene tres limitaciones estructurales inherentes.
Limitación 1: El problema del alcance de la evaluación
Cada evaluación EAL está limitada por su Target of Evaluation, que suele ser solo el chip. Todo lo que queda fuera de esto está explícitamente excluido de la evaluación, lo que tiene consecuencias prácticas directas.
Incluso dentro del chip, solo se evalúan funciones de seguridad específicas. Por ejemplo, un chip evaluado por su resistencia a ataques de análisis de consumo de energía en operaciones RSA ha sido certificado solo para esa función específica.
Si la implementación de otra operación criptográfica, por ejemplo, una rutina de firma ECDSA añadida posteriormente, no está explícitamente cubierta en el Security Target, no cuenta con la misma garantía evaluada.
Limitación 2: El problema del momento de la evaluación
Un certificado EAL se emite en un momento determinado, para una versión específica del producto, en una configuración concreta. El certificado no expira automáticamente cuando se descubren nuevas técnicas de ataque o cuando se detecta una vulnerabilidad en el producto evaluado.
Esto crea una brecha entre la fecha del certificado y el estado de seguridad actual del dispositivo. Un trabajo fundamental de la University of Cambridge Computer Laboratory de Skorobogatov y Anderson demostró ya en 2002 que ataques de inyección óptica de fallos a microcontroladores y tarjetas inteligentes podían realizarse con equipos de menos de 40 dólares; un hallazgo que sacudió la industria de las smartcards y obligó a los fabricantes a replantear las contramedidas en chips que ya tenían certificaciones.
Limitación 3: La brecha del modelo de amenazas
En EAL6+, el atacante asumido tiene un potencial de ataque muy alto. Esto implica gran sofisticación técnica, acceso a equipos profesionales, tiempo extendido y motivación para lograr su objetivo.
Este modelo de amenazas es riguroso para cualquier estándar de seguridad comercial. Pero no cubre automáticamente a todos los atacantes que un dispositivo podría enfrentar, y excluye técnicas clasificadas.
El laboratorio de evaluación utiliza técnicas conocidas públicamente. Agencias de inteligencia con acceso a capacidades de investigación clasificadas pueden disponer de técnicas de ataque que no se aplicaron durante la evaluación.
EAL6+ significa: un evaluador competente, bien equipado y acreditado de forma independiente intentó vulnerar este chip usando las mejores técnicas públicas disponibles, contra las funciones de seguridad definidas en el Security Target, y no lo logró. No es lo mismo que decir "este chip no puede ser vulnerado".
| Qué garantiza la certificación EAL5+/6+ | Qué NO garantiza la certificación EAL5+/6+ |
|---|---|
| El chip fue evaluado por un laboratorio independiente acreditado | Que el chip sea imposible de vulnerar |
| Los evaluadores intentaron ataques físicos y de canal lateral y no pudieron extraer claves dentro del alcance evaluado | Que la evaluación cubrió todos los ataques posibles |
| El diseño del chip fue revisado formalmente con la profundidad requerida para el nivel certificado | Que el firmware, la app complementaria o la cadena de suministro cumplen el mismo estándar |
| El documento Security Target define qué se probó y bajo qué condiciones | Que la certificación aplica a cualquier configuración distinta a la evaluada |
| El chip cumple el estándar de resistencia ante adversarios de alto potencial de ataque | Que un EAL más alto siempre significa mayor seguridad real. Diferentes Security Target evalúan cosas distintas |
Conclusión
Las calificaciones EAL son una señal útil; una señal entre varias, cada una con un alcance limitado.
Al comparar billeteras:
- Confirma la versión exacta del chip en el portal CC.
- Verifica que el dispositivo completo (no solo el chip) tenga auditorías independientes.
- Comprende cómo es realmente la arquitectura del firmware; el firmware inmutable elimina la superficie de ataque de actualizaciones que la certificación EAL del chip no puede cubrir.
Referencias
- Common Criteria Portal — ISO/IEC 15408
- Common Criteria Parte 5: Definiciones EAL (PDF)
- Common Criteria Recognition Arrangement (CCRA)
- Skorobogatov, S.P. & Anderson, R.J. (2002). Optical Fault Induction Attacks. CHES 2002, LNCS 2523, Springer. University of Cambridge Computer Laboratory.
- Skorobogatov, S.P. (2005). Semi-Invasive Attacks: A New Approach to Hardware Security Analysis. Technical Report UCAM-CL-TR-630. University of Cambridge Computer Laboratory.
- Fault Attacks on Secure Embedded Software: Threats, Design and Evaluation (arXiv)
- Eurosmart: Common Criteria EAL6+ Certification and the Scope Problem
- ¿Qué es el Secure Element y por qué una billetera fría lo necesita?
- Por qué el Secure Element no es un único punto de confianza