Como executar o Firefox no modo protegido? (ou seja, com baixo nível de integridade)

9

Percebi que o Firefox, diferente do Chrome e do Internet Explorer, não é executado no nível obrigatório baixo (também conhecido como Modo Protegido, Baixa Integridade)

Google Chrome:

texto alternativo

Microsoft Internet Explorer:

insira a descrição da imagem aqui

Mozilla Firefox:

texto alternativo

Seguindo as instruções da Microsoft , posso forçar manualmente o Firefox no modo de baixa integridade usando:

icacls firefox.exe /setintegritylevel Low 

No entanto, o Firefox não reage bem ao não executar com direitos suficientes:

texto alternativo

Gosto da segurança de saber que meu navegador está executando com menos direitos do que eu. Existe uma maneira de executar o Firefox no modo de direitos baixos? A Mozilla planeja adicionar o "modo protegido" em algum momento? Alguém encontrou uma solução alternativa para o Firefox não lidar com o modo de direitos baixos?


Atualizar

De uma entrevista em julho de 2007 com Mike Schroepfer , vice-presidente de engenharia da Mozilla Foundation:

... também acreditamos na defesa em profundidade e estamos investigando o modo protegido, juntamente com muitas outras técnicas para melhorar a segurança de versões futuras.

Depois de três anos, não parece ser uma prioridade.

Atualizar

  • 28/09/2013
  • 5 anos depois
  • Firefox 24.0
  • ainda não suporta o modo protegido
Ian Boyd
fonte
Caramba, por que o IE recebe o rap de "segurança ruim"?
Mark Sowul

Respostas:

4

Infelizmente, atualmente não há como executar o Firefox no Modo Protegido.

Se você não estiver executando o Windows de 64 bits, poderá obter algo semelhante usando o Sandboxie .

Dan Walker
fonte
4
Acabei de fazer uma pesquisa rápida no bugtracker da Mozilla e não encontrei nada sobre os níveis de integridade. Isso sugere que, atualmente, não é planejado apoiá-los. Dada a minha experiência anterior com o sistema de rastreamento de bugs e os desenvolvedores, acho que duas opções são plausíveis: (1) Se eu abrisse um ticket solicitando suporte no nível de integridade, ele seria fechado dentro de meia hora como duplicado de outro ticket com um nome que ninguém o procuraria adivinhar e (2) a própria idéia de oferecer suporte à funcionalidade específica do Windows assustaria muitos desenvolvedores por lá.
314 Joey
Eu nunca percebi que o Firefox existe na plataforma além do Windows. Faz sentido que haja uma versão para Mac e Linux, só vi um download do Windows.
22630 Ian Boyd
Acho que os appliances VM gratuitos e disponíveis roubaram o trovão do sandbox.
kmarsh
Ah, e a resposta "Não é possível fazer" foi marcada como a resposta, porque "Não é possível" é uma resposta válida.
3107 Ian Boyd
1

Você pode executar o Firefox no modo de baixa integridade usando os seguintes comandos:

icacls "C:\Program Files\Mozilla Firefox\Firefox.exe" /setintegritylevel low
icacls "C:\Program Files\Mozilla Firefox" /setintegritylevel(oi)(ci) low /t

icacls "C:\Users\*username*\AppData\Local\Temp" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Local\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Roaming\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\Downloads" /setintegritylevel(oi)(ci) low /t

Observe que você precisará executar o segundo lote para cada usuário em seu sistema, personalizando o nome de usuário , caso contrário, eles receberão uma caixa de mensagem "O Firefox já está em execução".

No entanto, essa configuração causa as seguintes peculiaridades:

  1. O gerenciador de perfis pode não se comportar corretamente.
  2. Você receberá um aviso de segurança sempre que iniciar o Firefox.
  3. Os downloads podem ser colocados apenas em diretórios de baixa integridade (portanto, Downloads é marcado como baixa integridade acima).
  4. Abrir downloads diretamente do Firefox geralmente falhará.
Simon Capewell
fonte
Deve-se notar, para qualquer pessoa que esteja seguindo adiante, que executar essas etapas essencialmente anulará o objetivo do "modo protegido Firefox". Ao permitir que o FireFox grave em outros locais (Temp, Mozilla, Downloads), você remove o objetivo de executar o FF no nível de integridade obrigatório Baixo . O pior é que agora todos os aplicativos de baixo privilégio (por exemplo, Chrome, meu media player) podem gravar nesses locais. Em outras palavras: não apenas você não ganha nada aqui, como também perde segurança. É melhor executar o FF como usuário padrão e deixar as outras pastas em paz.
Ian Boyd
Mas, tendo dito tudo isso, ainda dou +1 ao artigo, porque ajuda a ilustrar como os aplicativos de baixa privelagem podem gravar apenas em locais específicos. Mas mais uma vez: não faça o que esta resposta diz. É um exemplo de uma solução ruim - como alterar as permissões na pasta Windows e Arquivos de Programas para permitir acesso total a todos, porque um programa deseja poder escrever nele. Você está piorando as coisas.
Ian Boyd
0

Ian, você não entende como o modo protegido funciona. A solução de Simon Capewell é uma maneira válida de aumentar a segurança do Firefox. Por exemplo, afirmar que sua solução de alguma forma desabilita a totalidade da proteção de baixo nível de integridade é completamente falso. O Chrome e o IE usam os mesmos métodos, pois os downloads são gravados na pasta de download, mesmo no modo protegido IE. Caso contrário, você não poderá baixar nada. Embora o IE possa usar um tipo de invólucro, isolando o processo principal daqueles que processam dados não confiáveis ​​para aumentar a segurança do Chrome, isso é discutível, como nos métodos descritos acima, todos os componentes do Firefox são isolados de adulteração do sistema. Enquanto no Chrome, o processo principal é executado na integridade Média e os processos de renderização na integridade Baixa.

A configuração do Firefox dessa maneira protege o Windows e os Arquivos de programas contra modificações, isolando o Firefox do restante da sua máquina. O Firefox é impedido de soltar malware na sua pasta Inicializar, por exemplo, ou adicionar uma entrada do Registro que inicie automaticamente o malware solto na sua pasta de downloads (na qual o Firefox está autorizado a gravar) na inicialização. Além disso, a execução do Firefox como baixo nível de integridade protege contra a tentativa de ignorar as ACLs impostas a ele por métodos como a criação de um encadeamento em um processo remoto para executar o código no contexto de segurança desse processo. O Firefox ainda tem permissão para soltar arquivos em pastas temporárias e potencialmente executáveis, como o Chrome e o IE. Portanto, os níveis de integridade devem ser combinados com SRP ou AppLocker, para impedir a execução de quaisquer executáveis ​​lançados nos diretórios nos quais o Firefox está autorizado a gravar. Esse requisito também está presente no IE e no Chrome.

Uma vez feito, o Firefox será reforçado contra downloads drive-by e será protegido mais do que o IE, pois o Modo Protegido IE, quando não combinado com SRP ou Applocker, fornece proteção suficiente. De maneira alguma, permitir que o Firefox grave em seu próprio diretório e pastas temporárias seja diferente do que o Modo Protegido Chrome e o Modo Protegido IE podem fazer.

A única armadilha dessa solução: eu tenho o péssimo hábito de deixar executáveis ​​dentro da minha pasta Downloads, que depois executo. Esses executáveis ​​podem ser adulterados se o Firefox for explorado após o download. Assim, depois de baixar um arquivo, mova-o para fora da pasta Downloads. Há também um risco muito pequeno de uma vulnerabilidade no Firefox ser explorada para modificar um arquivo temporário na pasta temporária permitida, que explora uma vulnerabilidade em um processo de nível de integridade mais alto quando ele usa esse arquivo temporário. No entanto, isso nunca vai acontecer e é apenas uma vulnerabilidade teórica.

Outras leituras / fontes:

Windows 7 SRP (funciona no Home Premium, embora você não tenha o AppLocker):

http://www.wilderssecurity.com/showthread.php?t=262686

Níveis de integridade:

http://www.symantec.com/connect/articles/introduction-windows-integrity-control

Modo protegido IE:

http://msdn.microsoft.com/en-us/library/bb250462(VS.85).aspx

Informações básicas sobre "Downloads drive-by":

http://www.wilderssecurity.com/showthread.php?t=241732

Detalhes do Chrome no Windows Sandboxing (são mais do que apenas níveis de integridade):

http://www.chromium.org/developers/design-documents/sandbox

Gaff
fonte
1
Não importa o número de locais comuns dos quais você removeu a proteção de baixa integridade. Adicionar determinados locais para não serem mais protegidos está anulando a finalidade do modo protegido. Você julgou que escrever para Tempe a pasta Mozilla AppData é uma troca aceitável; porque todos sabemos que realmente queremos impedir que os programas acessem o Windows e os ProgramFiles. O problema é: não sei o que o FF armazena AppData\Mozilla, mas com certeza não quero que o malware envenene os URLs de atualização ou modifique minhas extensões. Esse é o ponto de segurança.
Ian Boyd
Então você não acredita que vale a pena usar o Firefox no Modo protegido, porque o próprio Firefox pode estar comprometido? O próprio IE pode ser comprometido teoricamente, mesmo durante a execução no modo protegido. O objetivo do Modo Protegido é o isolamento do sistema dos processos que fazem interface com dados não confiáveis ​​e, portanto, podem ser explorados para comprometer o restante do sistema, não a proteção do programa por si só. Sob integridade média, o Firefox já pode gravar no Temp e AppData, impedindo assim direitos a todos os outros locais é claramente um ganho significativo em segurança.
Dito isto, se você estiver preocupado com a integridade de suas extensões, o que é compreensível se você procurar proteger senhas, basta refinar as regras de nível de integridade. os níveis de integridade não impedem a leitura ou execução de operações acima do nível de integridade de um aplicativo. Marque apenas a pasta Temporária como permitida e os locais de arquivos de configuração nos quais você deseja gravar o Firefox, excluindo a pasta de extensão encontrada no AppData. URLs de atualização não são armazenados na configuração acessível pelo usuário: kb.mozillazine.org/… .
O ProcessMonitor pode ser útil para determinar quais operações um aplicativo está tentando executar que estão sendo negadas devido ao seu nível de integridade. Basta definir filtros para Nome do aplicativo = theappinquestion.exe e Resultado = ACESSO NEGADO, e você pode refinar facilmente os níveis de integridade de qualquer arquivo ou chave de registro necessária. Arquivos com icacls, chaves reg com regil ( minasi.com/apps ). Usando esse método, consegui configurar o SC2 beta para executar no modo de baixa integridade em menos de 5 minutos.
acho que todo mundo está perdendo o fato de eu executar outro software no nível de baixa integridade obrigatória; programas além de ie e Chrome (ou FireFox). Exemplo é um media player; Eu quero que a execução de código de um buffer overflow em um codec não tenha permissão para gravar em nada, exceto nos dois locais permitidos. E eu definitivamente não quero o código para ser capaz de escrever a minha Downloadspasta, a minha Temppasta, ou ser capaz de modificar as configurações relacionadas ao Firefox. eu não deveria estar levantando barreiras de segurança no meu computador para fazer um programa funcionar, o programa deve se curvar às barreiras de segurança.
Ian Boyd
-1

O SRP não é necessário, pois os processos executados por um processo de baixo nível de integridade herdam eles mesmos o baixo nível de integridade. No entanto, é outra camada de proteção e, portanto, ainda é uma boa ideia!


fonte