Guía Hardening – Hardware, habilitar y deshabilitar.

Hoy volvemos con una entrada centrada en intentar controlar el hardware de nuestras maquinas, esta entrada esta orientada al uso personal, primero recomiendo pasarse por el capitulo 2º de la guía de Hardening, en el que hablamos de la BIOS y algunos aspectos de su configuración para continuar después con esta entrada, pues puede ser que algunas de las opciones que indicamos en este capitulo se puedan ejecutar de una manera mas sencilla y rápida en la BIOS, aunque como siempre decimos, no esta mal saber antes como hacer cualquier tarea en modo manual, que con una bonita GUI y el proceso automatizado.

MODULOS DEL KERNEL LINUX

Los módulos en el Kernel Linux son los encargados de cargar los controladores de dispositivos de hardware, y podemos habilitar o deshabilitar estos módulos para mejorar la seguridad de nuestras maquinas, y si en nuestra BIOS no disponemos de estas opciones, gracias a comandos como modprobe podemos quitar o añadir dichos módulos, pero antes debemos conocer como obtener información de los módulos que tenemos cargados y saber cuales son innecesarios para nuestra maquina.

LSMOD, LSPCI, MODINFO, MODPROBE

Para esta tarea disponemos de varios comandos ¿pero que buscamos?
En nuestro caso y teniendo en cuenta que hemos instalado nuestra Debian en una portátil o computadora de sobremesa, tendremos en cuenta que dichas maquinas disponen de hardware integrado, ya sean puertos USB, unidades de CD o una webcam en el caso de los portátiles, y en muchas ocasiones y según la utilidad que le busquemos a nuestras maquinas pueden ser innecesarios.

LSMOD nos mostrara en varias columnas la información de los módulos cargados ,dicha información proviene del archivo /proc/modules, la primera columna muestra el nombre del modulo, la segunda columna el tamaño del modulo en bytes, y la tercera columna muestra si el modulo depende de otro modulo para funcionar.

[simterm]root@debian:~#lsmod
Module                  Size  Used by
nls_utf8               12456  0 
btrfs                 863535  0 
xor                    21040  1 btrfs
raid6_pq               95238  1 btrfs
ufs                    73443  0 
qnx4                   13036  0 
hfsplus               101391  0 
hfs                    53845  0 
minix                  31387  0 
ntfs                  194605  0 
vfat                   17135  0 
msdos                  17046  0 
fat                    61986  2 vfat,msdos
.....[/simterm]

LSPCI muestra la información detallada de los buses PCI y dispositivos en el sistema,

[simterm]root@debian:~#lspci

00:00.0 Host bridge: Intel Corporation 440FX – 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics
Adapter
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller
(rev 02)
00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC’97 Audio
Controller (rev 01)
00:06.0 USB controller: Apple Inc. KeyLargo/Intrepid USB
00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:0d.0 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (rev 02)[/simterm]

Para obtener más información sobre algún dispositivo PCI puedes utilizar -vs, si te fijas al final de la información nos indica el modulo que utiliza (e1000).

[simterm]root@debian:~#lspci -vs 00:03.0
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller
	Subsystem: Intel Corporation PRO/1000 MT Desktop Adapter
	Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 19
	Memory at f0000000 (32-bit, non-prefetchable) [size=128K]
	I/O ports at d010 [size=8]
	Capabilities: [dc] Power Management version 2
	Capabilities: [e4] PCI-X non-bridge device
	Kernel driver in use: e1000[/simterm]

MODINFO muestra información sobre un modulo que le indicamos, esta información se muestra en formato “campo: valor” para una mejor lectura.
[simterm]root@debian:~#modinfo e1000

filename:       /lib/modules/3.16.0-4-amd64/kernel/drivers/net/ethernet/intel/e1000/e1000.ko
version:        7.3.21-k8-NAPI
license:        GPL
description:    Intel(R) PRO/1000 Network Driver
author:         Intel Corporation, <linux.nics@intel.com>
srcversion:     C2E6003E8479D0EA4A71DDB
alias:          pci:v00008086d00002E6Esv*sd*bc*sc*i*
alias:          pci:v00008086d000010B5sv*sd*bc*sc*i*
alias:          pci:v00008086d00001099sv*sd*bc*sc*i*[/simterm]

MODPROBE añade o quita un modulo del kernel seleccionado por nosotros, con los pasos seguidos anteriormente para obtener información del modulo a quitar, debes tener en cuenta que una vez quitado el modulo para su posterior uso debes volver a cargarlo en el Kernel.

Con modprobe -r [ nombre modulo] lo quitamos.

[simterm]root@debian:~#modprobe -r e1000[/simterm]

Si ahora haces un “lsmod | grep e1000″ veras que el modulo ya no aparece en la lista, y para volver a cargarlo debemos hacerlo con modprobe [ nombre modulo ].

[simterm]root@debian:~#modprobe e1000[/simterm]

Esta tarea la podemos realizar con cualquier modulo, nosotros hemos elegido una tarjeta de red como ejemplo, pero también puedes hacerlo con el CDROM puertos USB o cualquier otro dispositivo que no se utilice y pueda ser un vector de ataque fisico a nuestro sistema.

Una respuesta a “Guía Hardening – Hardware, habilitar y deshabilitar.”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *