Os aplicativos de software que são executados em Microsoft Windows ambientes podem injetar código em um processo que não é seu. Embora esse comportamento seja semelhante ao do malware, ele também é um mecanismo incorporado para Microsoft Windows. Esse mecanismo permite que os desenvolvedores de software forneçam uma experiência de computação mais rica para o usuário.
A McAfee Enterprise encontrou inúmeros aplicativos de software com motivos legítimos para carregar DLLs em McAfee processos corporativos. Embora McAfee Enterprise Tente bloquear essas tentativas de carregamento de DLL, as limitações técnicas permitem que essas injeçãos às vezes sejam bem-sucedidas. Uma resposta alternativa é, então, necessária da McAfee Enterprise, para permitir que o ENS continue funcionando normalmente. Essa situação levou ao utilitário MfeSysPrep.exe. O MfeSysPrep.exe está disponível por meio do Suporte técnico e pode ser usado como uma ferramenta de descoberta de injetador de DLL. Esse utilitário é recomendado para qualquer ambiente que apresente os sintomas causados pela presença de DLLs de terceiros em McAfee processos corporativos. Ele também inclui as DLLs de terceiros descritas no Problemático instruções abaixo.
Em
McAfee software Enterprise considera DLLs de terceiros desinjetadas em McAfee processos corporativos não confiáveis. Em outras palavras:
Não escrevemos o código.
Não sabemos o que seus códigos fazem ou o que ele pode fazer.
Não sabemos se ele pode ser comprometido e usado maliciosamente.
O que sabemos é que qualquer trabalho feito das funções de DLL desse terceiro parece vir do processo de uma empresa McAfee injetada. Portanto, se for uma atividade maliciosa, parece que o software McAfee Enterprise está executando operações maliciosas. Permitir injeções de DLL de terceiros em McAfee processos corporativos não é aceitável. Tomamos as medidas de uso da tecnologia de proteção de acesso (PA), também conhecida como controle de acesso arbitrário, para proteção contra injeção de DLL de terceiros. Também implementamos uma estrutura de validação e proteção confiável (VTP). Essa estrutura se protege contra cenários em que pode ter ocorrido uma injeção.
A estrutura de segurança de validação e confiança foi introduzida com o VSE 8.7i. O recurso de proteção de acesso foi introduzido com o VSE 8.0i. A tecnologia subjacente foi atualizada no VSE 8.8 Patch 5 (ou patch 4 + Hotfix 929019). A nova tecnologia é chamada de controle de acesso arbitrário (AAC). Outros McAfee produtos corporativos fizeram transições tecnológicas semelhantes para adotar essa tecnologia compartilhada, o que é necessário para proteger os produtos contra malware e entidades não confiáveis.
Como usamos a proteção de validação e de confiança:
O serviço McAfee de validação corporativa e de proteção de confiança, MFEVTPS.exeo é um serviço crítico que realiza inspeções de DLLs e processos em execução, incluindo McAfee processos corporativos, que interagem com McAfee código da empresa, para verificar se esses objetos são confiáveis. O serviço depende do serviço de criptografia do Microsoft (CryptSvc), das APIs relacionadas à confiança e da integridade do armazenamento de certificados e dos arquivos de catálogo. Se essas dependências estiverem em estado inválido, nosso serviço pode não funcionar corretamente.
Uma verificação de validação ocorre quando McAfee código corporativo precisa ter certeza de que o processo ou o objeto de ação é confiável, ou ambos.
Quando McAfee processos corporativos são inicializados, o serviço VTP é usado para validar que estamos carregando código confiável. Usamos AP/AAC para certificar-se de que carregamos somente DLLs confiáveis.
Conforme mencionado acima, somente McAfee código da empresa e código de Microsoft são implicitamente confiáveis.
PMK
The MFEVTPS.exe armazena em cache os resultados de uma verificação de validação para melhorar o desempenho de futuras verificações de validação.
O cache é sempre examinado primeiro ao executar uma verificação de validação.
Se uma verificação de validação tiver retornado "não confiável", esse objeto será armazenado em cache como não confiável. Se um objeto tiver sido armazenado em cache como não confiável, somente uma redefinição de cache poderá corrigi-lo.
O cache é redefinido apenas ao inicializar no modo de segurança, mas não no modo de segurança com rede ou ao executar o comando VTPInfo.exe /ResetVTPCache. A McAfee Enterprise também pode redefinir o cache por meio do DAT, quando necessário. Imediatamente após a redefinição do cache, um usuário pode enfrentar um breve período de baixo desempenho.
Falhas de confiança
Uma falha de relação de confiança vê uma verificação de validação que resulta em "não confiável" quando o resultado esperado era "confiável".
Exemplos
Um terceiro injetou um processo McAfee Enterprise. Não confiamos no terceiro, portanto, o processo falha em uma verificação de validação.
Uma arquivo assinada pelo catálogo do Microsoft tem informações de assinatura inválidas. Portanto, ele não poderá ser verificado e um McAfee processo corporativo não o carregará.
Uma DLL válida arquivo foi armazenada em cache como "não confiável", e as tentativas subsequentes de carregá-lo são negadas.
Todos esses exemplos podem fazer com que o McAfee processo corporativo afetado falhe, como não carregar corretamente ou não executar suas obrigações esperadas corretamente. Essas falhas ocorrem por causa do nosso próprio mecanismo de segurança (AAC), negando o acesso a código não confiável.
Como usamos a proteção de acesso ou o controle de acesso arbitrário:
O controle de acesso arbitrário substituiu a proteção de acesso. Essa tecnologia opera a partir do Windows kernel. Ele pode bloquear o acesso a objetos, como os objetos de rede, arquivo, registro e processo. O recurso tem um conjunto de regras para determinar o que deve ser bloqueado e o que permitir. As regras descrevem comportamentos "defeituosos" ou "inseguros" que devem ser bloqueados ou negados. Muitas das regras estão sob seu controle, expostas na interface do usuário ou nas políticas do ePolicy Orchestrator (ePO). Algumas regras que ainda não estão expostas ainda estão em vigor, consideramos essas regras críticas para a integridade operacional do produto. As regras que expõemos para você podem ser:
Ativado ou desativado.
Definir como somente relatar.
Modificadas para adicionar outros processos a serem protegidos ou protegidos contra o ou para exclusão, de modo que não bloqueamos mais um determinado processo para violar a regra.
Você pode criar suas próprias regras de bloqueio de comportamento, fazendo com que esse recurso seja uma das ferramentas mais poderosas à sua disposição, para proteger o seu ambiente.
Para resumir como o AAC funciona, ele vê uma operação que está tentando ser executada, etapas no e pergunta o seguinte:
Qual é o nome do processo?
Qual objeto está acessando o processo?
Qual é o processo que está tentando fazer com esse objeto?
Esta operação é permitida, sim ou não?
Uma resposta de "não" significa que nós o bloqueamos. Se a "relatório" estiver ativada, nós o registramos e enviamos um evento para o servidor ePO. Uma resposta de "Sim" significa que a ação é permitida.
Nossas regras privadas incluem mais critérios, como:
Quem escreveu este código? A obtenção dessas informações envolve a análise da assinatura digital.
Confiamos no certificado digital desse fornecedor? Confiamos apenas McAfee Enterprise e Microsoft por padrão.
Os critérios adicionados proporcionam mais segurança. Inversamente, conforme explicado acima, se uma verificação de validação falhar ou gerar um resultado "não confiável", nossas próprias proteções poderão bloquear McAfee processos corporativos acessem objetos. Conforme indicado no Em acima, o resultado é esperado.
Problema
1
Um processo de terceiros está sendo impedido de acessar McAfee arquivos ou processos protegidos pela empresa. O processo de terceiros recebe o código de erro 5, o que significa ACCESS_DENIED. Esse comportamento é esperado e não é um problema com o software McAfee Enterprise.
Um processo de terceiros que carrega McAfee DLLs corporativas é impedido de acessar outros processos, arquivos ou pastas corporativos do McAfee. Por exemplo, Microsoft Outlook, que carrega as DLLs de interceptação do modo de usuário da prevenção de exploração do ENS, é bloqueada ao tentar acessar outros processos corporativos de McAfee.
Problema
2
Um McAfee processo corporativo não é iniciado corretamente. Por exemplo, você não pode iniciar o console do ENS apesar de os logs de instalação indicarem êxito.
Um processo corporativo McAfee está em execução, mas apenas parcialmente operacional. Por exemplo, o ENS é carregado com êxito, mas indica que outros serviços não estão sendo executados corretamente, ainda que o serviço aplicável esteja em execução.
Ocorre uma falha na instalação de um McAfee produto corporativo e o tenta reverter, o que também pode falhar, deixando vestígios de tentativas de instalação com falha.
Um McAfee processo corporativo é impedido de acessar outros arquivos ou pastas pertencentes a um outro produto McAfee Enterprise. Por exemplo, McScript_InUse.exe que pertence à McAfee Agent, o está impedido de acessar as pastas do ENS.
Causa
Em um alto nível, a causa é a seguinte:
Os processos carregam DLLs, que contêm o código que é executado. Todo esse trabalho é feito pelo processo que usa threads. Uma DLL de terceiros é aquela que não é criada por meio de um fornecedor, que, nesse caso, é McAfee Enterprise ou Microsoft. Quando um McAfee processo corporativo carrega uma DLL de terceiros, esse processo foi "injetado" por essa DLL de terceiros, o que significa que agora ela contém funções de terceiros e pode executar o código de terceiros. O resultado é que o McAfee processo corporativo agora pode executar operações que nunca deveriam fazer. Além disso, não há nenhuma conscientização do que essas ações podem ter porque elas não são McAfee código da empresa. No entanto, o código de terceiros está ativo e reside no processo de McAfee empresarial.
INDICADOMuitos fornecedores de aplicativos de terceiros escrevem softwares legítimos que aplicam injeção de DLL como um meio de facilitar a função do produto. Existem muitos exemplos, mas esses nomes são de alguns fornecedores cujos aplicativos são normalmente encontrados na área corporativa: Citrix, Avecto, lumens, além de confiança e NVIDIA.
Solução
1
O ENS tem um processo chamado MFECanary.exe que é executado como um processo filho para MFEEsp.exee captura detalhes do certificado digital para qualquer DLL que tente injetar-se nele. As informações são enviadas ao ePO por meio de um evento do agente, que é processado no servidor ePO. Em seguida, ele é preenchido para a política de Em Comum do Endpoint Security.
Quando você vê que os certificados são preenchidos na política de Em Comum do Endpoint Security, é uma indicação de que um software de terceiros não confiável existe no ambiente. Este software é filtrar tentativa de carregar DLLs em McAfee processos corporativos. Se eles obtiverem êxito, sua presença dentro McAfee processos corporativos leva à Problemático instruções descritas acima.
Na política do Endpoint Security Em Comum, uma caixa de seleção permite que o administrador controle se os sistemas clientes confiam ou não confiam no certificado do terceiro. A mesma política permite que você adicione certificados manualmente para serem confiáveis, usando o certificado exportado (.cer) da DLL de injeção.
Para sistemas com o VSE, não existe nenhum método automatizado para confiar em uma DLL de injeção. Mas, a partir do lançamento do VSE 8.8 Patch 9, a política de proteção de acesso para VSE contém uma exclusão global para a guia autoproteção. Nessa guia, você pode excluir McAfee processos corporativos que são afetados por meio de uma injeção de DLL de terceiros. Para ter mais controle sobre os aplicativos que injetam McAfee processos corporativos, os clientes são encorajados a migrar para o ENS.
Solução
2
Ajuda do Suporte técnico:
Suporte técnico também pode ajudar a identificar o terceiro e, posteriormente, confiar em um certificado digital de terceiros de DLLs assinadas de terceiros que injetam-se em McAfee processos corporativos. Esse suporte exige que você abra uma solicitação de serviço. Para agilizar o processamento, as etapas para chegar a essas tarefas são fornecidas neste artigo.
Sumário
Clique para expandir a seção que você deseja exibir:
Há um utilitário disponível no Suporte técnico chamado MfeSysPrep.exe. Você pode executar MfeSysPrep.exe independente em qualquer sistema de destino para a descoberta do injetador de DLL, distribuído por meio de ferramentas de terceiros ou distribuído por meio do ePO. A ferramenta grava um log arquivo localmente e envia eventos do ePO para DLLs identificadas e não confiáveis que podem causar impacto em funções ENS.
Para cada injetador identificado e certificado digital correspondente, se McAfee empresa tiver considerado que o certificado é confiável, a ferramenta atualizará automaticamente o ENS para confiar no certificado. Se a ferramenta não descobrir nenhuma dll não confiável pendente, nenhuma ação adicional será necessária. Consulte o Informações relacionadas deste artigo para as implicações da confiança de um certificado terceirizado.
Para cada Não confiável e assinado DLL que foi identificada, as informações do certificado são capturadas no registro e fornecidas ao ePO em um evento. A ID do evento é 1092 ou 1095. Para cada Não confiável e não assinado DLL que foi identificada, uma hash SHA-1 e SHA-2 é registrada para essa DLL no registro e fornecida ao ePO em um evento. Novamente, a ID do evento é 1092 ou 1095.
A ID de evento 1092 indica que um injetador foi encontrado e não pudemos confiar nele.
A ID de evento 1095 indica que um injetador foi encontrado e nós o confiamos automaticamente.
Essa identificação é, talvez, a mais difícil realização de todo o processo. O motivo é que o método para coletar essas informações depende de você estar tendo sintomas que afetem o comportamento do produto. Consulte as seções a seguir sobre como coletar dados quando não existem "sintomas adversos" e quando há "sintomas adversos".
Nenhum sintoma adverso:
Utilização Processo Explorer, disponível em Microsoft.
Execute a ferramenta como administrador.
Selecione o McAfee processo corporativo que tenha a DLL de terceiros dentro dela.
Use a exibição de DLL ou pressione CTRL + D e identifique a DLL de terceiros, anotando sua localização no disco. Se houver vários locais, observe todos eles.
Utilização Windows Explorer para localizar essa DLL no disco e acessar seu Suas.
Exibidas Obtenção do arquivo. cer abaixo.
Sintomas adversos:
Quando os sintomas negativos ocorrem durante uma sessão de Windows, há dois pontos de dados a serem coletados. Esses pontos de dados devem, idealmente, ser coletados em paralelo, ou seja, executam ambas as ferramentas ao mesmo tempo e capturam o problema uma vez.
Coletar dados do monitor do processo:
Utilização Monitor do processo, disponível em Microsoft.
Execute a ferramenta como administrador.
Inicie o McAfee processo corporativo que está se comportando inesperadamente.
Depois de reproduzir o comportamento anormal, salve o Procmon capturar.
Important Salve todos os eventos e use o formato de PML nativo.
Forneça essas informações para Suporte técnico para ajudar na identificação da DLL de terceiros carregada por meio do processo McAfee Enterprise.
Inicie o McAfee processo corporativo que está se comportando inesperadamente.
Depois que Ele reproduziu o comportamento anormal, execute AMTrace novamente, agora oferecendo a opção de parar.
Forneça o registro criado para Suporte técnico. que foi usado para ajudar na identificação da DLL não confiável.
Quando os sintomas adversos ocorrem apenas em Windows inicialização/inicialização, há dois pontos de dados a serem coletados, que podem ser coletados em série ou em paralelo:
Coletar dados do monitor do processo:
Utilização Monitor do processo, disponível em Microsoft.
Execute a ferramenta como administrador.
No menu opções, clique em Ativar Registro de inicialização.
Redefina o VTP cache *.
Reinicialize o sistema.
Entrar e executar Monitor do processo tarde.
Salvar o Procmon captura de log de inicialização.
Important Salve todos os eventos e use o formato de PML nativo.
Forneça essas informações para Suporte técnico para ajudar na identificação da DLL de terceiros carregada por meio do processo McAfee Enterprise.
Depois que Ele reproduziu o comportamento anormal, execute AMTrace novamente, agora oferecendo a opção de parar.
Forneça o registro criado para Suporte técnico. O arquivo de log ajuda a identificar a DLL não confiável.
* Para redefinir a cache do VTP:
A partir de um prompt de comando de administrador, navegue até \Program Files\Common Files\McAfee\SystemCore.
Execute o VTPInfo.exe utilitário com o parâmetro /resetvtpcache:
VTPInfo.exe /ResetVTPCache
Obter o .cer arquivo:
Esse procedimento é necessário somente se você tiver executado a opção 2 para identificar as DLLs não confiáveis de terceiros. Obtenção do .cer a arquivo não será necessária se você tiver usado a opção 1.
Para acessar as propriedades do arquivo EXE ou DLL, clique com o botão direito do mouse e selecione Suas.
Clique no botão Certificados digitais na.
INDICADO Se essa guia estiver ausente, o arquivo não estiver assinado digitalmente e não houver a opção de confiar no código deste fornecedor. Você deve entrar em contato com esse fornecedor e solicitar que eles forneçam códigos assinados.
Selecione um certificado na lista de assinaturas na qual você deseja confiar.
Clique Detalhado.
Clique Exibir certificado.
Clique no botão Detalhado na.
Clique Copiar para arquivo.
No Assistente para exportação de certificados, clique em Próximas.
Clique Próximas novamente para aceitar a criação de uma .cer arquivo.
Especifique um nome de arquivo e um local. Por exemplo, C:\Temp\My3rdParty.cer.
Clique Próximas em Unidade.
Se você usou a opção 1 acima e nenhuma outra dll não confiável for encontrada, nenhuma ação adicional será necessária.
Procura Não confiável e assinado DLLs, esperamos que o certificado digital desse DLL seja exibido na política de Em Comum do Endpoint Security. Nesse caso, consulte Solução 1.
Use a política de opções de Em Comum Endpoint Security para confiar no certificado manualmente se
O certificado não apareceu nessa política.
Ou
Você deseja mover o processo, de forma mais previsível, depois de obter o (.cer) arquivo.
ImportantAntes de fazer isso, consulte a Informações relacionadas deste artigo para as implicações da confiança de um certificado terceirizado.
Procura Não confiável e não assinado DLLs, esperamos que o fornecedor desse software forneça códigos assinados digitalmente, pois ele é um padrão industrial para a identificação de software lançado. Nos casos em que os fornecedores não podem ou não estão em conformidade, Suporte técnico podem ajudá-lo. Você precisa fornecer DLLs não assinadas que MfeSysPrep.exe identificados como injetadores, e o MfeSysPrep registro que mostra a injeção. Usando essas informações, a McAfee Enterprise considerará adicionar a DLL não assinada dentro do MfeSysPrep utilitário, para ajudar com tais problemas como falhas de instalações do ENS devido à presença do aplicativo de terceiros. Ele não inclui aplicativos como software antivírus que sirva a mesma função que o ENS.
Important Para que a relação de confiança possa ser adicionada a uma DLL de terceiros, você deve enviar a DLL para McAfee Labs como uma amostra para confirmar que ela não é maliciosa. Para obter instruções, consulte: KB85567-envie potenciais falsos positivos do produto ou por meio do GTI para McAfee Labs. Inclua as seguintes informações ao enviar as amostras de DLL a seguir:
Fabricante do software
Executável ou processo pai
Este aplicativo está interno ou publicamente disponível?
Breve descrição da função e do objetivo do software, incluindo a DLL enviada
Informações relacionadas
Implicações de segurança ao confiar em um certificado digital de terceiros:
Há implicações de segurança que você está aceitando ao confiar em um certificado de terceiros:
Você aceita que qualquer código assinado pelo certificado de terceiros seja confiável para interagir com McAfee processos corporativos, arquivos, registro e todos os outros McAfee objetos protegidos pela empresa.
Você aceita que arquivo atividade gerada por processos assinados com o certificado de terceiros não possa ser varrida.
Você compreende que qualquer lançamento de produto ou código do mesmo fornecedor, se estiver usando o mesmo certificado digital, herdará automaticamente as mesmas bonificações.
Você entende que qualquer produto ou código libera do mesmo fornecedor, usando um certificado digital diferente, que também precisa ser confiável para alcançar os mesmos resultados.
Aviso de isenção de responsabilidade
O conteúdo original deste artigo foi redigido em inglês. Se houver diferenças entre o conteúdo em inglês e sua tradução, o conteúdo em inglês será o mais exato. Parte deste conteúdo foi criado por meio de tradução automática da Microsoft.