Productos y Servicios PRODUCTOS Y SERVICIOS

HP deja accidentalmente un keylogger en un driver

El código de depuración en el software de producción es a menudo un problema de seguridad latente. Normalmente, este código se emplea para saber lo que está pasando desde dentro.

El código de depuración a veces crea agujeros de seguridad para permitir que afloren datos, lo que no supone ningún problema en un entorno de prueba, pero es inaceptable en un producto comercial.

Así que no solo se debe eliminar todo el código de depuración una vez que no sea necesario, si no que se deben tomar todas las medidas necesarias para que este tipo de código no esté presente en un producto finalizado.

Del dicho al hecho

Pero como dice el refrán: del dicho al hecho hay mucho trecho.

El infame Gusano de Internet de 1988 tenía tres formas de propagarse: la más sencilla y efectiva era conectarse a tu servidor de correo con la esperanza que el administrador de sistema hubiera dejado activo el modo de depuración en el producto Sendmail.

Si el modo de depuración de Sendmail estaba activo, el servidor ejecutaría cualquier correo entrante como una serie de comandos de sistema, claramente el tipo de comportamiento que no tienen sentido a parte de en un entorno controlado.

Dlink hizo algo igual de peligroso en algunos de sus routers recientes: si le decías a tu navegador que se presentara con el curioso nombre de “xmlset_roodkcab­leoj28840ybtide” en vez de, por ejemplo, Firefox o Safari, entonces podrías ejecutar cualquier comando de sistema sin necesidad de conocer la contraseña.

Si leemos ese curioso nombre al revés vemos que se convierte en “Edit by 04882 Joel: Backdoor”, convirtiendo esa pifia en obvia.

Y HP la pifió con una serie de impresoras láser hace unos años, dejando un intérprete de comandos Telnet abierto para depuración.

Un intérprete de comandos Telnet abierto supone que cualquiera pueda enredar con la impresora sin necesidad de conocer la contraseña o tener un software específico.

Según el investigador Michael Myng, HP ha cometido otro error de código este año, dejando un keylogger en los drivers del teclado de una serie de modelos de portátiles de HP.

Myng dijo que se puso a estudiar esos drivers cuando un amigo le pidió como podía controlar la retroiluminación del teclado. Al examinar el código se encontró con una serie de mensajes extraños como el siguiente:

ulScanCode=0x%02X, kKeyFlags=%X

CPalmDetect::KeyboardHookCallback

No te preocupes si no sabes programar en C: todo lo que necesitas saber es que estos mensajes implican la existencia de una función keyboard hook (gancho de teclado) y que el programa puede almacenar lo que se teclea.

Myng no tardó mucho en encontrar un registro de entrada especial llamado Mask, con el que podía hacer que el driver grabara cada tecla que fuera presionada vía un sistema oficial de Windows llamado WPP, el cual está diseñado principalmente para la depuración de errores.

Afortunadamente Myng avisó a HP quien confirmó rápidamente el error que provenía de la fase de testeo y publicó una actualización que eliminaba el problema.

Nótese que para activar el keylogger se necesitaban privilegios de administrador por lo que el riesgo se consideraba bajo.

¿Qué hacer?

  • Si tienes uno de los portátiles afectados de HP, instala la actualización ya. Hay más de 450 modelos afectados, así que comprueba si el tuyo está en la lista.
  • Si eres un programador, no dejes ningún código de depuración.
  • Si testeas la calidad del software, no creas a los programadores cuando te dicen que el código de depuración es inofensivo y que no hace falta eliminarlo.

 

Para manteneros al día de las últimas amenazas haceros fans de nuestra página de Facebook o síguenos en Twitter para intercambiar experiencias en torno al mundo de la seguridad. Si deseas recibir nuestro boletín de seguridad en tu correo electrónico, suscríbete en la siguiente aplicación: