A maioria dos novos PCs vem com o Versão de 64 bits do Windows - Windows 7 e 8 - há anos. As versões de 64 bits do Windows não servem apenas para aproveitar a memória adicional. Eles também são mais seguros do que as versões de 32 bits.
Os sistemas operacionais de 64 bits não são imunes a malware, mas têm mais recursos de segurança. Parte disso também se aplica a versões de 64 bits de outros sistemas operacionais, como o Linux. Os usuários do Linux obterão vantagens de segurança trocando para uma versão de 64 bits de sua distribuição Linux .
Randomização do Layout do Espaço de Endereço
ASLR é um recurso de segurança que faz com que os locais de dados de um programa sejam dispostos aleatoriamente na memória. Antes do ASLR, as localizações dos dados de um programa na memória podiam ser previsíveis, o que tornava os ataques a um programa muito mais fáceis. Com o ASLR, um invasor precisa adivinhar o local correto na memória ao tentar explorar uma vulnerabilidade em um programa. Uma suposição incorreta pode resultar na falha do programa, de modo que o invasor não poderá tentar novamente.
Este recurso de segurança também é usado em versões de 32 bits do Windows e outros sistemas operacionais, mas é muito mais poderoso em versões de 64 bits do Windows. Um sistema de 64 bits tem um espaço de endereço muito maior do que um sistema de 32 bits, tornando o ASLR muito mais eficaz.
Assinatura obrigatória do motorista
A versão de 64 bits do Windows impõe a assinatura de driver obrigatória. Todo código de driver no sistema deve ter uma assinatura digital. Isso inclui drivers de dispositivos de modo kernel e drivers de modo de usuário, como drivers de impressora.
A assinatura obrigatória de driver evita que drivers não assinados fornecidos por malware sejam executados no sistema. Os autores de malware terão de, de alguma forma, contornar o processo de assinatura por meio de um rootkit em tempo de inicialização ou gerenciar a assinatura dos drivers infectados com um certificado válido roubado de um desenvolvedor de driver legítimo. Isso torna mais difícil a execução de drivers infectados no sistema.
A assinatura de driver também pode ser aplicada em versões de 32 bits do Windows, mas não é - provavelmente para compatibilidade contínua com drivers de 32 bits antigos que podem não ter sido assinados.
Para desabilitar a assinatura de driver durante o desenvolvimento em edições de 64 bits do Windows, você teria que anexar um depurador de kernel ou use uma opção de inicialização especial que não persiste nas reinicializações do sistema.
Kernel Patch Protection
KPP, também conhecido como PatchGuard, é um recurso de segurança encontrado apenas nas versões de 64 bits do Windows. O PatchGuard impede que o software, mesmo os drivers em execução no modo kernel, apliquem o patch no kernel do Windows. Isso sempre foi incompatível, mas é tecnicamente possível nas versões de 32 bits do Windows. Alguns programas antivírus de 32 bits implementaram suas medidas de proteção antivírus usando patch de kernel.
PatchGuard impede que drivers de dispositivo apliquem patches ao kernel. Por exemplo, o PatchGuard impede que os rootkits modifiquem o kernel do Windows para incorporar-se ao sistema operacional. Se for detectada uma tentativa de correção do kernel, o Windows será encerrado imediatamente com uma tela azul ou reinicializado.
Essa proteção poderia ser implementada na versão de 32 bits do Windows, mas não foi - provavelmente para compatibilidade contínua com software de 32 bits legado que depende desse acesso.
Proteção de execução de dados
DEP permite que um sistema operacional marque certas áreas da memória como "não executáveis", definindo um "bit NX". As áreas da memória que deveriam conter apenas dados não serão executáveis.
Por exemplo, em um sistema sem DEP, um invasor pode usar algum tipo de estouro de buffer para escrever código em uma região da memória de um aplicativo. Este código pode então ser executado. Com a DEP, o invasor pode escrever código em uma região da memória do aplicativo - mas essa região seria marcada como não executável e não poderia ser executada, o que interromperia o ataque.
Os sistemas operacionais de 64 bits têm DEP baseada em hardware. Embora isso também seja compatível com versões de 32 bits do Windows se você tiver uma CPU moderna, as configurações padrão são mais rigorosas e a DEP está sempre ativada para programas de 64 bits, enquanto está desativada por padrão para programas de 32 bits por motivos de compatibilidade.
A caixa de diálogo de configuração DEP no Windows é um pouco enganosa. Como Documentação da Microsoft estados, DEP é sempre usado para todos os processos de 64 bits:
“As definições de configuração do DEP do sistema se aplicam apenas a aplicativos e processos de 32 bits quando executados em versões de 32 ou 64 bits do Windows. Nas versões de 64 bits do Windows, se a DEP aplicada por hardware estiver disponível, ela sempre será aplicada a processos de 64 bits e espaços de memória do kernel e não há configurações do sistema para desativá-la. ”
WOW64
As versões de 64 bits do Windows executam o software do Windows de 32 bits, mas o fazem por meio de uma camada de compatibilidade conhecida como WOW64 (Windows 32 bits no Windows 64 bits). Essa camada de compatibilidade impõe algumas restrições a esses programas de 32 bits, o que pode impedir que o malware de 32 bits funcione corretamente. O malware de 32 bits também não será executado no modo kernel - apenas programas de 64 bits podem fazer isso em um sistema operacional de 64 bits - portanto, isso pode impedir que alguns malwares de 32 bits mais antigos funcionem corretamente. Por exemplo, se você tiver um CD de áudio antigo com o rootkit da Sony, ele não será capaz de se instalar em uma versão de 64 bits do Windows.
As versões de 64 bits do Windows também eliminam o suporte para programas de 16 bits antigos. Além de impedir a execução de vírus de 16 bits antigos, isso também forçará as empresas a atualizar seus programas de 16 bits antigos que podem estar vulneráveis e sem correção.
Dado o quão difundidas as versões de 64 bits do Windows estão agora, um novo malware provavelmente será capaz de ser executado no Windows de 64 bits. No entanto, a falta de compatibilidade pode ajudar a proteger contra malware antigo à solta.
A menos que você use programas antigos de 16 bits, hardware antigo que oferece apenas drivers de 32 bits ou um computador com uma CPU de 32 bits relativamente antiga, você deve usar a versão de 64 bits do Windows. Se você não tem certeza de qual versão está usando, mas tem um computador moderno com Windows 7 ou 8, provavelmente está usando a edição de 64 bits.
Claro, nenhum desses recursos de segurança é à prova de falhas e uma versão de 64 bits do Windows ainda é vulnerável a malware. No entanto, as versões de 64 bits do Windows são definitivamente mais seguras.
Crédito da imagem: William Hook no Flickr