[SCI] Múltiples vulnerabilidades críticas en Productivity PLCs de Automation Direct

Introducción

Se han reportado varias vulnerabilidades a AutomationDirect sobre sus PLCs que podrían llevar a la ejecución remota de código y a la denegación de servicio de los mismos.[1]

Análisis

Se han publicado un total de 15 vulnerabilidades afectando a un total de 12 dispositivos. Las vulnerabilidades se explican a continuación:

    • CVE-2024-24851 – Acceso al buffer con longitud incorrecta (CWE-805):

Se ha localizado una vulnerabilidad de tipo “Heap-based buffer overflow” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection FiBurn. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para generar un “buffer overflow”.

    • CVE-2024-24946 – Escritura fuera de los límites (CWE-787):

Se ha localizado una vulnerabilidad de tipo “length exceeded buffer overflow” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection CurrDir. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para denegar el servicio.

    • CVE-2024-24947 – Escritura fuera de los límites (CWE-787):

Se ha localizado una vulnerabilidad de tipo “allocation failed buffer overflow” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection CurrDir. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para denegar el servicio.

    • CVE-2024-24954, CVE-2024-24955, CVE-2024-24956, CVE-2024-24957, CVE-2024-24958, CVE-2024-24959 – Escritura fuera de los límites (CWE-787):

Se han localizado varias vulnerabilidades de tipo “null byte write” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Filesystem API. Un atacante podría crear un paquete malicioso y enviarlo para corromper la pila del proceso.

    • CVE-2024-24962, CVE-2024-24963 – “Stack-Based Buffer Overflow” (CWE-121):

Se han localizado varias vulnerabilidades de tipo “stack-based buffer overflow” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection FileSelect. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para generar un buffer overflow.

    • CVE-2024-22187 – Acceso impropio a control del programa (CWE-284):

Se ha localizado una vulnerabilidad de tipo “write-what-where” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection Remote Memory Diagnostics. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para escribir en direcciones de memoria aleatorias.

    • CVE-2024-23315 – Acceso impropio a control del programa (CWE-284):

Se ha localizado una vulnerabilidad de tipo “read-what-where” en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Programming Software Connection IMM 01ª1 Memory Read. Un atacante podría crear un paquete personalizado y enviarlo sin autenticación para extraer información sensible.

    • CVE-2024-21785 – “Active Debug Code” (CWE-489):

Se han localizado restos de código de depuración en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la funcionalidad de Telnet Diagnostic Interface. Un atacante podría enviar una secuencia de paquetes modificados para lograr acceso no autorizado.

    • CVE-2024-23601 – Verificación de autenticidad de los datos insuficiente (CWE-345):

Se ha localizado una vulnerabilidad de tipo inyección de código en el programa AutomationDirect P3-550E 1.2.10.9, más concretamente en la librería scan_lib.bin. Un atacante podría introducir un fichero malicioso para lograr la ejecución de código arbitrario.

La serie de productos afectados es:

    • Productivity 3000 P3-550E CPU: FW 1.2.10.9
    • Productivity 3000 P3-550E CPU: SW 4.1.1.10
    • Productivity 3000 P3-550 CPU: FW 1.2.10.9
    • Productivity 3000 P3-550 CPU: SW 4.1.1.10
    • Productivity 3000 P3-530 CPU: FW 1.2.10.9
    • Productivity 3000 P3-530 CPU: SW 4.1.1.10
    • Productivity 2000 P2-550 CPU: FW 1.2.10.10
    • Productivity 2000 P2-550 CPU: SW 4.1.1.10
    • Productivity 1000 P1-550 CPU: FW 1.2.10.10
    • Productivity 1000 P1-550 CPU: SW 4.1.1.10
    • Productivity 1000 P1-540 CPU: FW 1.2.10.10
    • Productivity 1000 P1-540 CPU: SW 4.1.1.10

Recomendaciones

AutomationDirect recomienda los siguientes pasos: