Quando iniciamos um sistema operacional (de forma normal), a primeira coisa que se executa é o Basic Input/Output System (BIOS), em seguida,  o sistema operacional e, finalmente, os aplicativos que temos no nosso computador. Alguns anos atrás, começamos a usar o Unified Extensible Firmware Interface (UEFI), um novo padrão para PCs projetado para substituir o BIOS.

O UEFI foi desenvolvido em colaboração com mais de 140 empresas, a fim de melhorar a interoperabilidade do software e resolver as limitações do BIOS, entre as quais a segurança. Portanto, é interessante conhecer as diferenças entre BIOS e UEFI e suas características, para saber qual é a melhor maneira de se proteger. Para isso, além deste post, confira também um vídeo animado que produzimos recentemente:

Para começar, é importante esclarecer que o firmware é uma parte do código armazenado em uma memória ROM que é usado para estabelecer as instruções que controlam as operações dos circuitos de um dispositivo.

Este componente de código é integrado ao hardware do dispositivo, mas pode ser modificado por meio de ordens externas para mantê-lo atualizado e funcionando de acordo com os próprios requisitos do sistema.

A principal função do BIOS é inicializar os componentes de hardware e o sistema operacional. Além disso, outras funções de gerenciamento importantes, como a energia e a gestão térmica, são inicializadas a partir de seu carregamento.

Por outro lado, o UEFI pode ser carregado em qualquer recurso de memória não volátil, o que permite que ele seja independente de qualquer sistema operacional. Devido a estas características, possui as mesmas funções do BIOS, mas com recursos extras.

Características

Uma vez que o BIOS inicializa o sistema, existem algumas características fundamentais associadas à sua execução:

  • Verifica a integridade de todos os componentes do firmware antes de ser executado e o sistema operacional inicializado.
  • Testa os principais componentes de hardware no computador para garantir que todas as informações sejam carregadas corretamente e não gere problemas.
  • Controla módulos adicionais, como a placa de vídeo ou a placa de rede local, entre outros dispositivos.
  • Seleciona o dispositivo de inicialização que pode ser o disco rígido, uma unidade de CD ou um dispositivo USB.

O processo de inicialização do UEFI tem características semelhantes, mas a diferença é que o código é executado no modo de 32 ou 64 bits protegido na CPU, não no modo de 16 bits, como geralmente acontece com o BIOS.

Entre as características extras do UEFI está a redução no tempo de inicialização e reinício, e tem um processo que ajuda a prevenir ataques do tipo bootkit e usar o modo Secure Boot. Estas são algumas das razões pelas quais o UEFI pode substituir o BIOS no sistema de inicialização dos computadores.

Segurança

Uma vez que o primeiro pedaço de código executado por um dispositivo é um desses dois padrões, eles devem ser considerados como um componente crítico para a segurança. De fato, gerenciar a segurança no BIOS permite fortalecer o computador desde a inicialização.

Confira algumas dicas que podem nos ajudar a aumentar os níveis de segurança em nosso computador:

  • Todas as alterações no BIOS ou UEFI devem usar um mecanismo de atualização autenticado ou um mecanismo de atualização local seguro.
  • O mecanismo de atualização local seguro só deve ser usado para carregar a primeira imagem ou para se recuperar de uma corrupção no sistema de inicialização.
  • Para evitar modificações involuntárias ou maliciosas do sistema, os padrões devem ser protegidos com um mecanismo que não possa ser substituído fora de uma atualização autenticada.
  • O mecanismo de atualização será o único capaz de modificar o BIOS do sistema sem a necessidade de intervenção física.

Ao ter em mente essas medidas de segurança, conseguiremos, independentemente do modelo de inicialização usado em nosso dispositivo, garantir a integridade de nossas informações.