La protección contra manipulaciones es una metodología que se utiliza para impedir, disuadir o detectar el acceso no autorizado a un dispositivo o la elusión de un sistema de seguridad. Dado que cualquier dispositivo o sistema puede ser frustrado por una persona con los conocimientos, el equipo y el tiempo suficientes, el término "protección contra manipulaciones" es un nombre inapropiado a menos que se explique o se suponga que existen limitaciones en los recursos de la parte que realiza la manipulación.
La resistencia a la manipulación es la resistencia al mal funcionamiento o sabotaje intencional por parte de los usuarios normales de un producto, paquete o sistema u otras personas con acceso físico a él.
La resistencia a la manipulación varía desde características simples como tornillos con dispositivos especiales y sellos a prueba de manipulación hasta dispositivos más complejos que se vuelven inoperativos o cifran todas las transmisiones de datos entre chips individuales, utilizando materiales que requieren herramientas y conocimientos especiales. Los dispositivos o características a prueba de manipulación son comunes en los paquetes para disuadir la manipulación de paquetes o productos o permitir su detección.
Los dispositivos antimanipulación tienen uno o más componentes: resistencia a la manipulación, detección de manipulación, respuesta a la manipulación y evidencia de manipulación. [1] En algunas aplicaciones, los dispositivos solo son a prueba de manipulación en lugar de resistentes a la manipulación.
La manipulación implica la alteración o adulteración deliberada de un producto, paquete o sistema. Las soluciones pueden involucrar todas las fases de producción, empaquetado , distribución, logística , venta y uso del producto. Ninguna solución puede considerarse "a prueba de manipulaciones". A menudo es necesario abordar múltiples niveles de seguridad para reducir el riesgo de manipulación. [2]
Algunas consideraciones podrían incluir:
Algunos dispositivos contienen tornillos o pernos no estándar en un intento de impedir el acceso. Algunos ejemplos son los armarios de conmutación telefónica (que tienen cabezas de perno triangulares en las que se ajusta un casquillo hexagonal) o los pernos con cabezas de cinco lados que se utilizan para asegurar las puertas de los transformadores de distribución eléctrica al aire libre. Una cabeza de tornillo Torx estándar se puede fabricar en una forma a prueba de manipulaciones con un pasador en el centro, lo que excluye los destornilladores Torx estándar. Se han ideado otras cabezas de tornillos de seguridad para desalentar el acceso casual al interior de dispositivos como los productos electrónicos de consumo.
Este tipo de resistencia a la manipulación se encuentra con mayor frecuencia en las alarmas antirrobo . La mayoría de los dispositivos de disparo (por ejemplo, almohadillas de presión, sensores infrarrojos pasivos ( detectores de movimiento ), interruptores de puerta ) utilizan dos cables de señal que, según la configuración, normalmente están abiertos o normalmente cerrados . Los sensores a veces necesitan energía, por lo que para simplificar el tendido de cables, se utiliza un cable multinúcleo. Si bien 4 núcleos normalmente son suficientes para los dispositivos que requieren energía (dejando dos de repuesto para los que no), se puede utilizar un cable con núcleos adicionales. Estos núcleos adicionales se pueden conectar a un llamado "circuito de manipulación" especial en el sistema de alarma. Los circuitos de manipulación son monitoreados por el sistema para dar una alarma si se detecta una perturbación en los dispositivos o el cableado. Las carcasas de los dispositivos y los paneles de control pueden estar equipadas con interruptores antimanipulación. Los posibles intrusos corren el riesgo de activar la alarma al intentar eludir un dispositivo determinado.
Los sensores como detectores de movimiento, detectores de inclinación, sensores de presión de aire, sensores de luz, etc., que podrían emplearse en algunas alarmas antirrobo, también podrían usarse en una bomba para dificultar su desactivación.
Casi todos los aparatos y accesorios solo se pueden abrir con el uso de una herramienta. Esto tiene como objetivo evitar el acceso casual o accidental a piezas energizadas o calientes, o daños al equipo. Los fabricantes pueden utilizar tornillos a prueba de manipulaciones, que no se pueden aflojar con herramientas comunes. Los tornillos a prueba de manipulaciones se utilizan en los accesorios eléctricos de muchos edificios públicos para reducir la manipulación o el vandalismo que pueden suponer un peligro para otras personas.
Un usuario que estropea un equipo modificándolo de una forma que no está prevista por el fabricante puede negarlo para poder reclamar la garantía o (principalmente en el caso de los ordenadores) llamar al servicio de asistencia técnica para que le ayuden a repararlo. Los sellos de seguridad pueden ser suficientes para solucionar este problema. Sin embargo, no se pueden comprobar fácilmente de forma remota y muchos países tienen condiciones de garantía legales que implican que los fabricantes pueden tener que seguir reparando el equipo. Los tornillos a prueba de manipulaciones impedirán que la mayoría de los usuarios ocasionales lo manipulen. En los EE. UU., la Ley de Garantía Magnuson-Moss impide a los fabricantes anular las garantías únicamente por manipulación. [ cita requerida ] Una garantía puede ser deshonrada solo si la manipulación afectó realmente a la pieza que ha fallado y podría haber causado la falla.
Los microprocesadores a prueba de manipulaciones se utilizan para almacenar y procesar información privada o sensible, como claves privadas o crédito de dinero electrónico . Para evitar que un atacante pueda recuperar o modificar la información, los chips están diseñados de manera que la información no sea accesible a través de medios externos y solo pueda accederse a ella mediante el software integrado, que debe contener las medidas de seguridad adecuadas.
Entre los ejemplos de chips a prueba de manipulaciones se incluyen todos los criptoprocesadores seguros , como el IBM 4758 y los chips utilizados en tarjetas inteligentes , así como el chip Clipper .
Se ha argumentado que es muy difícil hacer que los dispositivos electrónicos simples sean seguros contra la manipulación, porque son posibles numerosos ataques, entre ellos:
Los chips resistentes a la manipulación pueden estar diseñados para poner a cero sus datos confidenciales (especialmente las claves criptográficas ) si detectan una penetración en su encapsulamiento de seguridad o parámetros ambientales fuera de especificación. Un chip puede incluso estar clasificado para "puesta a cero en frío", la capacidad de ponerse a cero por sí mismo incluso después de que se haya dañado su fuente de alimentación. Además, los métodos de encapsulamiento hechos a medida que se utilizan para los chips que se utilizan en algunos productos criptográficos pueden estar diseñados de tal manera que estén pretensados internamente, por lo que el chip se fracturará si se interfiere con él. [ cita requerida ]
Sin embargo, el hecho de que un atacante pueda tener el dispositivo en su poder durante el tiempo que desee, y tal vez obtener numerosas otras muestras para probar y practicar, significa que es imposible eliminar por completo la manipulación por parte de un oponente suficientemente motivado. Debido a esto, uno de los elementos más importantes para proteger un sistema es el diseño general del mismo. En particular, los sistemas a prueba de manipulaciones deben " fallar con elegancia " al garantizar que la vulneración de un dispositivo no comprometa el sistema entero. De esta manera, el atacante puede limitarse prácticamente a ataques que cuesten más que el retorno esperado de vulnerar un solo dispositivo. Dado que se ha estimado que los ataques más sofisticados cuestan varios cientos de miles de dólares para llevarse a cabo, los sistemas cuidadosamente diseñados pueden ser invulnerables en la práctica.
En los Estados Unidos, las especificaciones de compra exigen funciones antimanipulación (AT) en los sistemas electrónicos militares. [1]
La resistencia a la manipulación se aplica en tarjetas inteligentes , decodificadores y otros dispositivos que utilizan la gestión de derechos digitales (DRM). En este caso, la cuestión no es impedir que el usuario rompa el equipo o se haga daño a sí mismo, sino impedir que extraiga códigos o adquiera y guarde el flujo de bits decodificado. Esto se suele hacer teniendo muchas funciones de subsistemas ocultas dentro de cada chip (de modo que las señales y los estados internos sean inaccesibles) y asegurándose de que los buses entre chips estén encriptados. [ cita requerida ]
Los mecanismos DRM también utilizan certificados y criptografía de clave asimétrica en muchos casos. En todos estos casos, la resistencia a la manipulación significa no permitir que el usuario del dispositivo acceda a los certificados válidos del dispositivo o a las claves públicas y privadas del dispositivo. El proceso de hacer que el software sea resistente a los ataques de manipulación se conoce como "software antimanipulación".
A veces se necesita resistencia a la manipulación en los envases , por ejemplo:
Se puede incorporar o añadir al embalaje resistencia a la manipulación . [3] Algunos ejemplos incluyen:
También se dice que un software es resistente a la manipulación cuando contiene medidas para dificultar la ingeniería inversa o para evitar que un usuario lo modifique en contra de los deseos del fabricante (por ejemplo, eliminando una restricción sobre cómo se puede utilizar). Un método que se utiliza con frecuencia es la ofuscación de código .
Sin embargo, la resistencia efectiva a la manipulación en el software es mucho más difícil que en el hardware, ya que el entorno del software se puede manipular hasta un punto casi arbitrario mediante el uso de la emulación.
Si se implementara, la computación confiable haría que la manipulación de programas protegidos por parte del software fuera al menos tan difícil como la manipulación del hardware, ya que el usuario tendría que piratear el chip de confianza para otorgar certificaciones falsas con el fin de evitar la certificación remota y el almacenamiento sellado. Sin embargo, la especificación actual deja en claro que no se espera que el chip sea a prueba de manipulaciones contra cualquier ataque físico razonablemente sofisticado; [4] es decir, no está destinado a ser tan seguro como un dispositivo a prueba de manipulaciones.
Esto tiene el efecto secundario de que el mantenimiento del software se vuelve más complejo porque las actualizaciones del software necesitan ser validadas y los errores en el proceso de actualización pueden llevar a una activación falsamente positiva del mecanismo de protección.