4.2. Segurança do BIOS e do Gestor de Início

A proteção da senha para o BIOS (ou componente equivalente) e para o gestor de início pode impedir usuários não autorizados, que tenham acesso físico aos seus sistemas, de inicializar a máquina com mídia removível ou obter privilégios root através do modo de usuário simples. Mas as medidas de segurança a tomar para proteger o sistema de ataques deste tipo dependem da sensibilidade das informações que a estação de trabalho armazena e da localização da máquina.

Por exemplo: se uma máquina é usada numa exposição ou feira e não contém informações delicadas, então não deve ser crítico impedir tais ataques. Entretanto, se um laptop de um funcionário com chaves SSH privadas não criptografadas da rede corporativa for deixado nesta mesma feira sem a proteção de senhas, pode ocasionar uma violação de segurança severa com consequências para a empresa inteira.

Por outro lado, se a estação de trabalho estiver localizada em um lugar onde somente pessoas confiáveis e autorizadas têm acesso, então proteger o BIOS ou o gestor de início pode não ser necessário.

4.2.1. Senhas do BIOS

Veja a seguir as duas razões principais para proteger o BIOS de um computador com senhas[1]:

  1. Impedindo Alterações na Configuração do BIOS — Se um intruso tem acesso ao BIOS, pode configurá-lo para ser iniciado por um disquete ou CD-ROM. Isto possibilita que ele entre no modo de recuperação ou de usuário simples, que por sua vez permite a ele iniciar programas arbitrariamente no sistema ou copiar informações delicadas.

  2. Impedindo a Inicialização do Sistema — Alguns BIOSes permitem que você proteja o processo de inicialização da máquina com senha. Quando ativado, um atacante é forçado a inserir uma senha antes do BIOS lançar o gestor de início.

Como os métodos para definir uma senha para o BIOS variam de acordo com o fabricante do computador, consulte o manual de seu computador para obter instruções específicas.

Se você esquecer a senha do BIOS, ela pode ser restaurada com jumpers na placa-mãe ou desligando a bateria CMOS. Por esta razão, é aconselhável trancar o compartimento do computador, se possível. Não obstante, consulte o manual do computador ou da placa-mãe antes de tentar desligar a bateria CMOS.

4.2.1.1. Protegendo Plataformas Não-x86

Outras arquiteturas usam programas diferentes para executar tarefas de nível baixo, parecidas àquelas do BIOS em sistemas x86. Por exemplo: computadores baseados no Intel® Itanium™ usam a shell EFI (Extensible Firmware Interface).

Para instruções sobre a proteção através de senha a programas parecidos com o BIOS em outras arquiteturas, consulte as instruções do fabricante.

4.2.2. Senhas do gestor de Início

Veja a seguir as principais razões para proteger um gestor de início Linux com senha:

  1. Impedindo Acesso ao Modo de Usuário Simples — Se um atacante puder inicializar o sistema no modo de usuário simples, ele é autenticado automaticamente como o usuário root sem precisar indicar a senha root.

  2. Impedindo Acesso ao Console do GRUB — Se a máquina utiliza GRUB como seu gestor de início, um atacante pode usar a interface de edição do GRUB para alterar sua configuração ou para coletar informações usando o comando cat.

  3. Impedindo Acesso a Sistemas Operacionais Não-Seguros — Se for um sistema de boot duplo, um atacante pode selecionar um sistema operacional na hora da inicialização, tal como o DOS, que ignora controles de acesso e permissões de arquivo.

O gestor de início GRUB é distribuído com o Red Hat Enterprise Linux para a plataforma x86. Para uma visão detalhada do GRUB, consulte o capítulo intitulado O Gestor de Início GRUB no Guia de Referência do Red Hat Enterprise Linux.

4.2.2.1. Senha Protegendo o GRUB

Você pode configurar o GRUB para resolver as primeiras duas questões listadas na Seção 4.2.2 adicionando uma diretiva de senha ao seu arquivo de configuração. Para fazer isso, primeiro decida a senha, abra uma janela de comandos, logue-se como root e digite:

/sbin/grub-md5-crypt

Quando solicitada, digite a senha do GRUB e pressione [Enter]. Isto retornará um hash MD5 da senha.

Em seguida, edite o arquivo de configuração do GRUB /boot/grub/grub.conf. Abra o arquivo e, abaixo da linha timeout na seção principal do documento, adicione a seguinte linha:

password --md5 <password-hash>

Substitua <password-hash> pelo valor retornado pelo /sbin/grub-md5-crypt[2].

Na próxima vez que inicializar o sistema, o menu do GRUB não deixará você acessar o editor ou a interface de comando sem que pressione [p] seguida da senha do GRUB.

Infelizmente, esta solução não impede que um atacante inicialize em um sistema operacional não-seguro em um ambiente de boot duplo. Para isso, você precisa editar uma parte diferente do arquivo /boot/grub/grub.conf.

Procure pela linha title do sistema operacional não-seguro e adicione uma linha contendo lock logo abaixo dela.

Para um sistema DOS, a estrofe deve começar similarmente a:

title DOS
lock

AtençãoAtenção
 

Você deve ter uma linha password na seção principal do arquivo /boot/grub/grub.conf para que este método funcione apropriadamente. Caso contrário, um atacante poderá acessar a interface de edição do GRUB e remover a linha lock.

Para criar uma senha diferente para um kernel ou sistema operacional específico, adicione uma linha lock na estrofe, seguida de uma linha para senha.

Cada estrofe que você proteger com uma senha única deve começar com linhas similares ao exemplo seguinte:

title DOS
lock
password --md5 <password-hash>

Notas

[1]

Como BIOSes de sistemas diferem entre fabricantes, alguns talvez não suportem proteção de senhas de nenhum tipo, enquanto outros podem suportar um tipo e outro não.

[2]

O GRUB também aceita senhas não-criptografadas, mas é recomendado usar a versão md5 para segurança adicional.