Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Uso seguro de comunicaciones y protocolos en estaciones de carga

Fecha de publicación 09/01/2020
Autor
INCIBE (INCIBE)
comunicaciones y protocolos

Las estaciones de carga eléctrica se han convertido en una infraestructura común en nuestras vidas, ya que la apuesta de los fabricantes por los coches eléctricos ha hecho que su número aumente cada día más. Por este motivo, estas estaciones se han convertido en un nuevo objetivo para los atacantes, lo cual supone un riesgo para fabricantes y usuarios.

Una de las formas de velar por la seguridad de estos dispositivos es mediante el uso de comunicaciones seguras que nos permitan prevenir incidentes, como por ejemplo los servicios inseguros habilitados que pudieran permitir ataques de fuerza bruta o de inyección de código (HTTP, SOAP, etc.). Para ello, es imprescindible el uso de protocolos específicos como el OCPP (Open Charge Point Protocol).

Protocolos y comunicaciones en estaciones de carga eléctricas

El protocolo de punto de carga abierto (OCPP) trabaja a nivel de aplicación dentro de la capa OSI y permite la comunicación entre estaciones de carga de vehículos eléctricos (EV) y un sistema de administración central, también conocido como red de estaciones de carga, de manera similar a como lo hacen los teléfonos móviles. El protocolo apareció como una iniciativa de la fundación ELaadNL en los Países Bajos, con el objetivo de crear un protocolo libre que pudiera permitir que las estaciones de carga de EV y los sistemas de administración central de varios proveedores se comunicasen entre sí. A fecha de publicación de este post, la versión más avanzada es la 1.6, aunque en las especificaciones de este protocolo ya exista la versión 2.0.

Con la 1.6 existen dos alternativas diferentes. Junto a la implementación basada en SOAP (Simple Object Access Protocol) está la posibilidad de utilizar la alternativa JSON (Java Simple Object Notation), que es mucho más compacta. Para no confundir al hablar sobre cada implementación, usaremos los nombres OCPP-S y OCPP-J respectivamente.

La conexión se establece entre un sistema central, que actúa como un servidor WebSocket, y entre un punto de carga utilizando OCPP-J, que hará de cliente.

Diagrama de implementación del protocolo OCPP

- Diagrama de implementación del protocolo OCPP -

La comunicación general de las operaciones entre los puntos de carga y el sistema central puede iniciarse por el punto de carga o por el sistema central, ambas presentan un proceso diferente. En el caso de la primera de ellas sería el siguiente:

1.    El punto de carga solicita la autorización para poder inicializar la carga mediante la PDU (Protocol Data Unit, Unidad de Datos de Protocolo). Además, es necesario, para poder parar el proceso de carga, volver a enviar y recibir otra vez las PDU de autorización ya mencionadas antes.

2.    Cuando un punto de carga es encendido o tiene un reinicio físico, este envía la PDU de notificación de arranque con información referente a su configuración. Esta es respondida por el sistema central como:

  • Accepted: sincronizando el reloj interno con el sistema central.
  • Rejected: la comunicación con el sistema central se apaga durante un tiempo.
  • Pending: el sistema central envía peticiones al punto de carga para recoger más información.

3.    Las transacciones y el control (inicio/detención, la reserva o cancelación de energía, restablecimiento de un CP, etc.) se llevan a cabo a través de un proceso de autorización con una etiqueta de identificación.

4.    Por último, el mantenimiento de las notificaciones proporcionan un conjunto de instrucciones relacionadas con diagnósticos remotos de los componentes que conforman el protocolo OCPP.

Esquema comunicaciones OCPP

- Esquema comunicaciones OCPP -

Ya hemos visto cuáles son los pasos que requieren las comunicaciones que se pueden iniciar desde los puntos de carga al sistema central, pero en general, no es obligatorio pasar por todos los puntos que hemos comentado anteriormente a la hora de realizar una carga.

Cuando las comunicaciones comienzan desde el sistema central, el proceso viene definido por los siguientes puntos principales:

  1. El sistema central tendrá la opción de cancelar una reserva para un punto de carga mediante el envío de una PDU y también cambiar la disponibilidad del mismo.
  2. Será el sistema central quien ordene empezar y detener una transacción remota que haya solicitado un punto de carga.
  3. El sistema central podrá solicitar el cambio de los parámetros de configuración donde tendremos un par clave-valor, en el que “clave” es el nombre del ajuste de la configuración que se desea cambiar y el “valor” contiene el nuevo ajuste para la nueva configuración.
  4. Desde el sistema central se podrá realizar diferentes acciones como limpiar la caché, hacer un diagnóstico de la comunicación o habilitar la transferencia de datos.
  5. En el momento en que un punto de carga necesita actualizarse con un nuevo firmware, el sistema central informará a este punto de carga cuándo puede proceder a descargar el nuevo firmware. Mientras, el punto de carga irá notificando al sistema central con cada paso a medida que descarga e instala el nuevo firmware.

Estándares de interfaz para vehículos eléctricos

- Estándares de interfaz para vehículos eléctricos. Fuente: Implementation of OCPP Protocol for Electric Vehicle Applications. -

Escenarios de amenazas

En un artículo realizado en 2017 por varios componentes del IEEE (Institute of Electrical and Electronics Engineers), se especificaron posibles ataques que comprometían el protocolo OCPP:

  • Un ataque Man in the Middle (MitM) podría interceptar mensajes a través de los canales de comunicación mediante el envío de paquetes no legítimos y causar alguna de las siguientes acciones:
    • Divulgación de información: lectura y/o copia.
    • Distorsión de información como procesos o configuraciones. Dentro de este tipo de ataque se encuentran:
      • Fraude de energía: consiste en obtener electricidad ilegalmente.
      • Sobrecarga de la red: variación en los niveles de carga en determinados puntos que pueden causar serios problemas en la red de distribución.
    • Eliminación de paquetes, pudiendo generar una situación de denegación de servicio.
  • Redirección del tráfico de red que podría ocasionar un fallo en las comunicaciones o una pérdida de información al no llegar este a su destino.
  • Amenazas mediante protocolo Web/TCP-IP debido a que un atacante se ha conectado a un posible protocolo inseguro y no mediante protocolos seguros como HTTPS o FTPS.
  • Uso de APT (Amenaza Avanzada Persistente): un atacante podría conseguir exfiltrar información u obtener el control de los sistemas.
  • Prevención para que no sucedan byzantine faults (condición en la que se registran fallos en componentes pero sin disponer de información exacta sobre dicho fallo), ya que podrían causar fallos en los sistemas que influyen en las estaciones de carga.

Mejora en la seguridad de las estaciones de carga

La poca seguridad en las estaciones de carga de vehículos eléctricos podría ocasionar problemas a los usuarios, estaciones o sistemas centrales. Por eso es importante saber identificar, mediante análisis de seguridad, los posibles vectores de ataque que existen en las comunicaciones de este tipo de protocolo, los cuales se pueden clasificar en diferentes tipos:

  • Aspectos físicos (hardware) respecto a las estaciones de carga, como la rotura física de la estación.
  • Aspectos relacionados con la tecnología de la información (TCP/IP), tanto vinculados con la estación de carga, como con el sistema backend. Aquí podemos encontrar protocolos que no son seguros, como HTTP, u otros servicios que podrían ser usados, como el teléfono móvil, donde durante el intercambio de datos la comunicación podría ser intervenida y conseguir dicha información.

Existen determinadas vulnerabilidades que podrían ser explotadas a través de una serie de vectores de ataque pudiendo causar problemas en las estaciones de carga. Entre los ataques que comprometerían este tipo de infraestructuras se encuentran: fuerza bruta, inyección SQL, canales de comunicaciones sin cifrar, etc.

Potenciales vectores de ataque

- Potenciales vectores de ataque. Fuente: Smart Grid Forums -

Es imprescindible que las comunicaciones que se utilizan entre el punto de carga y la estación central sean seguras para que no haya posibles vectores de ataques que den opción a una vulnerabilidad. Por ello, se recomiendan las siguientes mejoras:

  • Ampliar el protocolo OCPP con firmas digitales para mayor seguridad entre los puntos de carga y los sistemas centrales. Las firmas digitales agregan la posibilidad de verificar la integridad en toda la cadena de la infraestructura de los vehículos eléctricos. De esta forma, al usar firmas digitales creadas desde los puntos de carga no habrá problemas en el tamaño de la cadena. Y usando la clave pública del punto de recarga correspondiente podremos verificar la integridad de la firma digital.
  • Usar PKI (infraestructura de clave pública) con el uso de firmas y certificados digitales, aunque esto requerirá más esfuerzo al operador de los puntos de carga, ya que tendrá que administrar certificados.
  • Uso de comunicaciones seguras con TLS 1.2 o superior para las comunicaciones de OCPP.

Todas las mejoras de seguridad se van recogiendo en diferentes normativas y estándares de seguridad que se van revisando y mejorando con el paso del tiempo. Para normas de seguridad de la carga conductiva entre el punto de carga y el coche están las normativas SFS-EN 61851-1 (requerimientos de seguridad) o SFS-EN 62196-1 (enchufe, socket de salida, conectores, entrada) entre otras, mientras que para la carga conductiva entre la estación de carga y la subestación eléctrica existen algunas como SFS 6000-7-722 (soporte en la estación de carga). Además de estas normativas  hay otras que se centran en la comunicación y seguridad.

Conclusión

El protocolo OCPP, utilizado en las comunicaciones entre estaciones de carga y coches eléctricos, permite una estandarización de las comunicaciones que facilita el control en el intercambio de información. Este protocolo debería incluir mejoras en sus mecanismos de protección en aspectos como el uso de firmas digitales, el uso de sistemas PKI o en el proceso de fortificación de sus comunicaciones para hacer frente a los retos de ciberseguridad futuros.