Printesting: la seguridad de las impresoras también importa

Dentro de las redes corporativas, las impresoras y dispositivos multifunción a menudo son dejadas de lado cuando se habla de seguridad.

En muchas ocasiones, estos dispositivos pueden ser aprovechados por un insider o atacante para acceder a información confidencial que ha sido previamente escaneada, obtener listados de correos electrónicos e incluso llegar a obtener credenciales de usuarios.

En este post vamos a ver algunas pruebas de concepto identificadas durante diversos test de intrusión. A continuación vemos un dispositivo multifunción el cual no dispone de credenciales para acceder al portal web, si no ha sido configurado previamente.

Esto permitiría a cualquier persona que se encuentre en la red corporativa y tenga visibilidad sobre este activo, acceder a toda la información que ha sido escaneada.


Obviamente no os voy a enseñar la información que se obtuvo de este dispositivo, pero os prometo que era bastante “jugosa”.

Además, analizando los nombres de los documentos impresos o escaneados, o en el caso de que se puedan obtener, se puede conocer la ubicación exacta de la impresora incluso el departamento o departamentos que hacen uso de ella. En este sentido, a nivel de privilegios en la red, un atacante tendría mayor interés en aquellas que use el departamento de informática, o bien, a nivel de información sensible podrían interesar aquellas impresoras usadas por departamentos financieros o de dirección, entre otros.

Dejando la información que ha sido escaneada de lado, pasamos a aprovechar otro dispositivo multifunción para obtener credenciales cifrados (hashes) de usuario.

Para ello aprovecharemos la funcionalidad de escanear una carpeta de red, esta función permite al usuario que todo lo que escanee se guarde directamente en la ubicación configurada (su equipo o algún servidor de ficheros). Por regla general, para acceder a carpetas compartidas se suelen configuran que solo se puede acceder con credenciales. Esto implica que dichos son almacenados de alguna forma en el dispositivo, por lo que teóricamente sería posible acceder.

Es este caso un atacante tendría que realizar un cambio en la configuración de la impresora. Sorprendentemente para realizar este cambio no se requieren privilegios.

En la siguiente ilustración vemos cómo aprovechar esta vulnerabilidad. Lo primero que hacemos es cambiar la ruta de donde se guardan los archivos que han sido escaneados, por una dirección IP bajo nuestro control. De esta forma, al probar la función de escanear, las credenciales cifradas del usuario que se encuentre configurado son enviadas a nuestro equipo.

Para recibir los hashes solo nos hace falta algún tipo de listener SMB. Al final recibimos un hash de tipo NTLMv2 como este.

Llegados a este punto, solo tenemos que realizar un ataque de fuerza bruta o de diccionario para obtener la contraseña, por lo que dependerá de la buena o mala política de contraseñas o el grado de concienciación en seguridad del usuario

En el peor de los casos, según el fabricante y el modelo de impresora, no existe un botón para comprobar la validez de credenciales introducidos. De este modo, mediante acceso físico al dispositivo, se elige el usuario modificado de la libreta de direcciones y se realiza un escaneo; o bien cabe esperar a que el propio usuario realice la operación por sí mismo, aunque se daría cuenta de que el escaneo “ha fallado”.

Si creíais que eso era todo, estabais muy equivocados. ¿Que nada mejor que credenciales en texto plano?

La única pega de este POC es que tuvimos que acceder con los credenciales por defecto :D.

Para la obtención de las credenciales en claro solo tiene que cambiar el método de autenticación de la impresora de SMB por FTP y suplantar la dirección del servidor de ficheros, tal como hicimos anteriormente.

A partir de aquí, con un listener que capture la contraseña o bien analizando los paquetes de red recibidos, se obtendría la contraseña en claro.

Destacar que muchas de las contraseñas obtenidas utilizando estos vectores de ataque fueron aprovechadas como punto de entrada para acceder y tomar el control de diversos activos y su información.

Estas credenciales pueden ser, por un lado las nominales de los usuarios del directorio activo, o bien credenciales genéricas que se usan con el objetivo único de acceder a los recursos donde se depositan los documentos escaneados.

En este punto, dependiendo de los privilegios que tenga la cuenta de usuario comprometida, el impacto de explotar esta vulnerabilidad sería muchísimo mayor.

Cómo veis no se trata de emplear ninguna técnica avanzada de exploiting sobre el firmware o los servicios que exponen estas impresoras. Se trata de analizar cómo seríamos capaces de abusar de configuraciones no seguras sobre las capacidades que ofrecen.

Recomendaciones:

  • La primera y fundamental es modificar la contraseña de acceso a la interfaz web de la impresora por una lo suficientemente segura.
  • Además, es altamente recomendable que los usuarios configurados no dispongan de privilegios en la red corporativa, ya que el uso de estos quedaría expuesto a la seguridad que ofrezca el propio dispositivo.
  • En el caso de que la impresora vaya a ser usada por personas con cuentas con ciertos privilegios o que manejen información sensible, se recomienda hacer un estudio a la hora de elegir qué tipo de impresoras ofrecen mecanismos de protección adecuados. Incluso analizar la posibilidad de trasladar estas impresoras a otras redes aisladas con un mayor control tanto de los accesos a las interfaces de gestión como de la actividad que se genera a su entorno.
  • De forma general, se recomienda implantar controles de seguridad que permitan monitorizar el uso de las cuentas y además los accesos privilegiados a estos dispositivos.

(Este post ha sido elaborado por Brian Sánchez y Raúl Rodríguez)