Información blog

Linux, tutoriales, noticias, sistemas, redes y seguridad informática, entre otras cosas.

lunes, 10 de agosto de 2015

Cómo inhabilitar conexiones usb en Linux

Muchas personas únicamente se preocupan por la seguridad preparada para protegerse de atacantes del exterior, dando por hecho que los que comparten el mismo espacio físico que ellos no van a intentar influir en el equipo... Lamentablemente no es así y un USB puede ser muchísimo más peligroso que cualquier virus, ya que si por ejemplo alguien pudiese conectarlo en nuestro equipo y/o servidor, podría causar graves estragos; desde insertar un virus a extraer información no deseada... Todo ello conlleva a que nos tengamos que preocupar de poner algún tipo de protección contra USBs no deseados, dejándonos únicamente dos opciones:
  1. Poner permisos limitados a la  carpeta de montaje del USB.
  2. Inhabilitar el módulo USB en el arranque.
Ambos métodos son considerados cómo efectivos y aunque generalmente solamente es usado el segundo método debido a su robustez, a veces puede ser interesante limitarnos a usar la primera opción; especialmente cuando se quiere poner una solución más permanente que inhabilite por completo el uso de cualquier USB. 


Portada_USB

Limitar permisos en la carpeta de montaje USB

Esto se basa en un concepto muy simple pero que al mismo tiempo es muy robusto. Para empezar, para aquellos que no estén familiarizados con la ruta de montaje de los USBs, os informo que siempre se montan en la misma ruta que es: /media

Esta carpeta además también contiene todo lo relacionado con medios de almacenaje extraible tales como CD-ROMs o los prácticamente extintos disquetes. Cada vez que se conecte un USB se crearía una carpeta que contendría la información referente al USB en cuestión, con lo que una buena forma de asegurarnos que nadie va a poder usar un USB (y de paso cualquier medio de almacenamiento no deseado) sería modificando los permisos de la carpeta media para que únicamente root pueda consultar su contenido. Root es el usuario más poderoso del sistema con lo que únicamente el administrador del equipo debería conocer su contraseña, siendo una buena forma de asegurarnos que solamente nosotros (root) podremos consultar el contenido del USB... Para ello haríamos uso del comando chmod de la siguiente forma:

  1. chmod 600 /media/

El dueño de la carpeta media es root, con lo que el comando en cuestión a haría que éste tuviese permisos de lectura y escritura en la carpeta media, mientras que al resto se le negaría la posibilidad de poder realizar acción alguna dentro de esta carpeta... Además al haber inhabilitado los permisos de ejecución para todos los usuarios (incluyendo root), el USB instalado debería de ser montado a mano mediante el comando mount.


Inhabilitar el módulo USB en el arranque

El problema de la anterior acción es que es un poco extremista y que también inhabilita el resto de medios extraibles, cosa que aunque por lo general es beneficiosa, puede llegar a ser un inconveniente... Además siempre está la posibilidad de que al agregar permisos a la carpeta media, se nos olvide volver a limitarlos, con lo que a veces puede ser conveniente optar por opciones más "permanentes".

Por ello habría que simplemente hacer que el módulo usb_storage, módulo encargado del almacenamiento USB, no se inicie durante el proceso de arranque del sistema... Esto hace que sin importar lo que se intente hacer desde el sistema operativo o a nivel de hardware, nunca se pueda abrir un USB... Se trata de una opción más radical que la anterior, pero muy eficaz cuando queremos proteger servidor Linux.

Para poder habilitar dicha protección habría que dirigirse a la carpeta /etc/modprobe.d y modificar el contenido del fichero blacklist.conf; en caso de no existir dicho fichero habría que crearlo como usuario root. La modificación de dicho fichero sería tan simple como escribir el siguiente comando (sin necesidad de entrar en éste):

  1. echo 'blacklist usb-storage' >> /etc/modprobe.d/blacklist.conf

Estando presente la nueva línea, únicamente habría que reiniciar el equipo y ya podríamos olvidarnos del almacenamiento USB. Si quisiésemos volver a habilitar el módulo de nuevo tendríamos que borrar la línea añadida y volver a reiniciar el equipo. En caso de tener muchas líneas en dicho fichero y no desear buscar el módulo que queremos, podemos optar a eliminar dicha línea con el comando:

  1. sed -i 's/blacklist usb-storage//' blacklist.conf


Espero que os resulte útil.

Saludos.

No hay comentarios :

Publicar un comentario