Modo Protegido Avançado do Internet Explorer

A recente falha de segurança do Internet Explorer (CVE-2014-1776), corrigida com a atualização KB2964358, não era explorada se o navegador estivesse rodando com o Modo Protegido Avançado (Enhanced Protected Mode), suportado desde o IE 10 — ou seja: Windows 7 para cima — e não habilitado por padrão.

No Windows 7, o EPM significa apenas que os processos do navegador serão 64-bit. Por isso, nele, EPM só tem utilidade com versões 64-bit do Windows. Em versões 32-bit do Windows 7, EPM não tem efeito. Mais um motivo para migrar para 64-bit!

Já do Windows 8 para cima, existe um recurso a mais: AppContainer Integrity Level. É um novo Integrity Level (IL) usado pelos aplicativos da Modern UI, que a versão desktop do IE pode aproveitar. Permite uma proteção maior, mesmo em 32-bit, do que o tradicional IL Low (o máximo de restrição disponível no Windows 7) usado pelo Modo Protegido normal. Portanto, no Windows 8 ou superior, EPM é efetivo também em 32-bit, pois usa o IL AppContainer. O ideal é ter os dois: processos 64-bit + IL AppContainer.

Para complicar um pouco, o IE 10, no Windows 8 64-bit, usa, quando EPM está habilitado, processos 64-bit + IL AppContainer. No IE 11, a Microsoft criou uma configuração separada para ser possível habilitar apenas o uso do IL AppContainer, mantendo os processos 32-bit para maior compatibilidade com plugins que ainda não possuem versão 64-bit.

Para configurar por GPO (Windows Server 2012 R2 Update 1):

Configurações do Usuário → Políticas → Modelos Administrativos → Componentes do Windows → Internet Explorer → Painel de Controle da Internet → Página Avançada
    Ativar Modo Protegido Avançado (Habilitado)

Resultará em:

- Windows 7 32-bit + IE 10 ou 11: não tem efeito
- Windows 7 64-bit + IE 10 ou 11: processos 64-bit

- Windows 8 32-bit + IE 10: processos 32-bit, IL AppContainer
- Windows 8 64-bit + IE 10: processos 64-bit, IL AppContainer

- Windows 8.1 32-bit + IE 11: processos 32-bit, IL AppContainer
- Windows 8.1 64-bit + IE 11: processos 32-bit, IL AppContainer

A opção separada do IE 11 é:

Configurações do Usuário → Políticas → Modelos Administrativos → Componentes do Windows → Internet Explorer → Painel de Controle da Internet → Página Avançada
    Desativar processos da guia 64 bits quando executados no Modo Protegido Avançado, em versões 64 bits do Windows (Habilitado)

** O "Desativar" da opção é um erro de tradução.        **
** A opção serve para ATIVAR o uso de processos 64-bit. **

Ao habilitá-la, junto com "Ativar Modo Protegido Avançado", o IE 11 no Windows 8.1 ficará assim:

- Windows 8.1 32-bit + IE 11: processos 32-bit, IL AppContainer
- Windows 8.1 64-bit + IE 11: processos 64-bit, IL AppContainer

Por padrão, quando você tenta acessar uma página que usa um plugin sem suporte ao EPM, o IE perguntará se quer recarregar a página no Modo Protegido normal. Para quem está preocupado com a segurança e pode deixar a compatibilidade de lado, eu recomendo habilitar:

Configurações do Usuário → Políticas → Modelos Administrativos → Componentes do Windows → Internet Explorer → Painel de Controle da Internet → Página Avançada
    Não permitir que controles do ActiveX executem em Modo Protegido quando o Modo Protegido Aprimorado estiver habilitado (Habilitado)

** Dependendo do lugar, chamam de "Avançado", "Aprimorado", "Aperfeiçoado". **
** Uma mixórdia a tradução!                                                 **

Outra configuração muito importante:

Configuração do Computador → Políticas → Modelos Administrativos → Componentes do Windows → Internet Explorer
    Zonas de Segurança: Não permitir que os usuários alterem políticas (Habilitado)

Senão os usuários poderão fazer o que bem entenderem, desativando o Modo Protegido, afrouxando tudo colocando sites na zona Intranet e afins. Caso você tenha sites específicos que precisem ir numa zona diferente da Internet, use:

Configurações do Usuário → Políticas → Modelos Administrativos → Componentes do Windows → Internet Explorer → Painel de Controle da Internet → Página Segurança
    Lista de Atribuições de Sites a Zonas (Habilitado)

Liste cada domínio e associe-o com a zona pretendida:
    1 = Intranet
    2 = Sites Confiáveis
    3 = Internet
    4 = Sites Restritos

Sobre os plugins:

- Flash Player funciona 100% com EPM e processos 64-bit desde a versão 12.

- Adobe Reader a partir da versão 11.0.06 suporta EPM, porém só possui versão 32-bit. Assim, só funciona com EPM no Windows 8 ou superior e se o uso de processos 64-bit não estiver habilitado. No 7 com EPM, o plugin 32-bit só atrapalha, pois o IE burrinho tenta carregá-lo e falha. Possível quebra-galho (desativá-lo) aqui. [Atualização - 14/05/2014] Rá! Ontem, a Adobe lançou a versão 11.0.07, que traz uma versão 64-bit do plugin. Funciona 100% com o EPM agora.

- O Java é compatível. No Windows 7, basta ter a versão 64-bit instalada. Compatibilidade com o EPM do Windows 8.x (IL AppContainer) existe partir da versão 7u55. Instale as duas versões, 32 e 64-bit, que tudo deverá funcionar.

- Plugins dos bancos tupiniquins: provavelmente não funcionem. Não testei, contudo.

Sem GPO?

As duas opções principais estão em "Opções da Internet → Avançadas": "Habilitar Modo Protegido Avançado" e (no Windows 8.1) "Habilitar processos de 64 bits no Modo Protegido Avançado".

Conclusão

Se o seu ambiente permitir, habilite o Modo Protegido Avançado. Segurança é coisa séria.

Referências:
Enhanced Memory Protections in IE10 (IEBlog)
Understanding Enhanced Protected Mode (IEInternals)
How Internet Explorer Enhanced Protected Mode (EPM) is enabled under different configurations (AsiaTech: Microsoft APGC Internet Developer Support Team)

Comentários