Como os softwares antivírus entram em conflito entre si?

59

Fui ensinado que nunca deveria instalar dois softwares antivírus (AV) juntos, porque eles entrarão em conflito. Até o Windows Defender (desde o Windows 8) se desativa ao detectar outro software AV.

Estou curioso para saber como dois podem entrar em conflito. O único cenário que posso descobrir atualmente é quando ambos detectam o mesmo vírus e tentam colocá-lo em quarentena simultaneamente, o que pode resultar em uma "batalha de conquista de vírus". Para mim, isso certamente não é uma razão convincente para não instalar dois softwares AV.


Muito menos problemas de desempenho do sistema. Suponho que meu Intel Kaby Lake i7 possa lidar com eles com facilidade com a memória instalada de 16 GB.

iBug
fonte
11
Os problemas de conflito / contenção (mencionados por você e nas respostas) são superestimados; Os sistemas operacionais são projetados para lidar com / resolver esses problemas. Fiquei com a impressão de que o motivo era porque os programas antivírus possuem bancos de dados que armazenam as assinaturas dos vírus conhecidos que eles estão procurando. Portanto, um programa antivírus pode detectar o outro como um programa malicioso e vice-versa.
sawdust
2
@sawdust, entendo sua afirmação, mas não há problema em ter vários antivírus, desde que apenas eles realizem uma inspeção ativa, o que não seria possível se a incompatibilidade fosse causada pela detecção inadvertida do banco de dados de assinaturas uns dos outros.
Frank Thomas
@PeterMortensen "Scanner antivírus" soa estranho, apesar das respostas. Eu, pessoalmente, preferiria "software", independentemente de ser um substantivo contável.
IBug #

Respostas:

83

Os antivírus comuns podem coexistir sem problemas. É a proteção ao vivo que pode causar interferências AV.

O software AV com recursos de proteção ao vivo se integra profundamente ao sistema operacional. Ele corrige parte do código do SO para poder observar os programas que tentam fazer e impedir que eles façam isso, se necessário. Os sistemas operacionais não fornecem esses recursos prontos para uso, então os AVs usam métodos menos convencionais para obter esse efeito.

Por exemplo, ele pode substituir a função "gravar arquivo" que o SO fornece com a personalizada. Quando um programa tenta gravar em um arquivo, ele chama a função "gravar arquivo". Mas a função foi corrigida pelo AV e a solicitação do programa será redirecionada para o AV. O AV irá inspecionar e decidir se parece OK. Nesse caso, chamará a função "gravar arquivo" real. Caso contrário, ele tomará as medidas apropriadas para impedir que software malicioso cause danos.

Infelizmente, o patch do código do sistema operacional não é apenas necessário para os antivírus, mas também é suspeito. Se você estivesse criando um vírus, também não gostaria de poder interceptar operações do sistema, por exemplo, para impedir que o antivírus verifique arquivos de vírus?

Portanto, os AVs têm guardas que vigiam se seus ganchos de código ainda estão no lugar e os reinstalam, se necessário. Neste ponto, você deve ver para onde isso está indo ...

Dois AVs com proteção ao vivo podem começar a protegê-lo do comportamento suspeito um do outro. Isso pode causar qualquer coisa, desde pequenos problemas de desempenho até falhas no sistema.

Em alguns casos, até scanners AV sem proteção ao vivo podem interferir. Como os antivírus detectam vírus? Bem, eles têm suas assinaturas de vírus, ie. bancos de dados de características distintivas de vírus conhecidos. E acontece que esse banco de dados também pode parecer suspeito, porque, bem, eles têm características distintas de vírus. Portanto, um AV poderia hipoteticamente detectar as assinaturas de outros AV como código malicioso.

Também existem mecanismos AV projetados para coexistir com outros AVs, por exemplo, Hitman Pro. O ClamWin (que é gratuito e de código aberto) também deve ser relativamente livre de problemas ao coexistir, pois contém apenas um scanner sem proteção ao vivo.

gronostaj
fonte
41
De certo modo, o próprio software antivírus é um vírus. Imagine uma cidade com duas forças policiais que não podem se comunicar e não usam uniformes. O policial que usa a lanterna para procurar dentro de um prédio um criminoso parece um criminoso que invade a junta a um oficial do outro departamento.
TJL
@ComicSansMS Às vezes, até UM faz mais mal do que um vírus. Por exemplo, softwares AV "gratuitos" chineses.
iBug 5/12
30
@iBug Deixando "chinês" e "livre" disso, vi muitos comportamentos ruins de marcas conhecidas (McAfee, Norton / Symantec, Panda etc.).
Bob
11
Observe que apenas um dos dois scanners deve precisar de detecção ao vivo para causar problemas graves - uma vez tive um problema com um CCleaner muito persistente e um relutante Symantec Endpoint Protection, lutando contra a exclusão de um arquivo.
Sanchises
2
@Bob: e nós nem sequer começou a falar sobre suas vulnerabilidades ...
Matteo Italia
14

Os programas entram em conflito quando os dois tentam usar o mesmo recurso. Quando vários programas tentam operar em um recurso ao mesmo tempo, há um risco de problemas de simultaneidade . Problemas de simultaneidade ocorrem quando um processo executa uma alteração no recurso, e o outro programa (que estava no meio com sua própria modificação no recurso) não o conhece e, portanto, não pode acomodá-lo.

Aqui estão alguns exemplos de problemas de simultaneidade de livros didáticos.

Problema dos últimos a ganhar

Imagine que você está usando um diretório FTP para compartilhar um documento em que você e um colega estão colaborando em um documento. você baixa o documento, edita e publica novamente, assim como seu colega.

  1. Você baixa o documento e inicia um conjunto de alterações que leva 1 hora.
  2. Seu colega faz o download do documento ao mesmo tempo que você fez, mas leva apenas meia hora para concluir e reenviar as alterações.

Resultado: ao fazer upload do documento, você substitui as alterações e elas são perdidas.

Dados obsoletos

No mesmo cenário, seu colega faz algumas alterações que você precisa, sem avisar. sua cópia do arquivo não possui as alterações,

Resultado: você mesmo escreve as mesmas alterações em palavras ligeiramente diferentes, ou pior, lança um e-mail desagradável sobre como está faltando.

Parece um cenário simples, mas em casos avançados, como bancos de dados de acesso múltiplo, se você selecionar registros no mesmo milissegundo que alguém os estiver atualizando, poderá enfrentar sérios problemas.

Cálculo ruim

Um casal tem uma conta bancária compartilhada e cartões ATM. Eles têm 1000 USD na conta. No dia a dia, eles estão em lados opostos da cidade e ambos acessam o caixa eletrônico no mesmo instante. Ambos retiram 1000 USD. Os caixas eletrônicos sabem que o saldo é 1000, portanto, permitem a retirada e depois escrevem de volta ao banco de dados central que o novo saldo é 0.

Resultado: o banco está esgotado em 1000 USD, e nem sabe disso.

Em todos esses exemplos, havia várias partes que estavam executando ações em um recurso compartilhado aproximadamente ou ao mesmo tempo. Daí os termos "simultaneidade" ou "Sincronicidade".

Soluções

Existem algumas maneiras de lidar com esses tipos de problemas. Uma é usar software que arbitra entre as várias partes que acessam o recurso. Esses programas de árbitro têm duas opções, dependendo do escopo e previsibilidade das operações:

  • Mesclar as operações de forma inteligente
  • Bloqueie / bloqueie uma das duas operações até que a primeira notada seja concluída.

Também é possível bloquear / bloquear, desde que os dois programas sejam projetados para verificar um sinalizador compartilhado indicando o estado do recurso. isso geralmente requer desenvolvimento personalizado.

sua resposta

No seu caso específico, os recursos são os arquivos no seu disco. O Synchronicity vem de eventos como o arquivo Read / Write, que acionam verificações ao acessar nos dois programas AV.

O Windows atua como um árbitro para resolver problemas de simultaneidade do sistema de arquivos, bloqueando arquivos quando os programas os abrem para operações específicas.

Isso significa que os dois programas estão correndo para acessar o arquivo e quem chegar lá primeiro recebe o bloqueio. Em um nível baixo, isso resulta em uma troca de disco, pois os dois programas iniciam suas próprias atividades de E / S, forçando o hardware a executar as duas tarefas separadamente, intercalando as instruções de E / S, tornando as duas muito menos eficientes e, no final, apenas uma. deles vão ganhar. o outro girará e esperará para poder estabelecer seu próprio bloqueio.

Frank Thomas
fonte
9
Os problemas de simultaneidade podem ser ainda piores se o antivírus 1 perceber que o arquivo foi acessado e examiná-lo; o antivírus B, por sua vez, vê que o arquivo foi acessado e, portanto, o varredura, o antivírus A percebe que o arquivo foi acessado após o última verificação, para verificá-la novamente, etc ... (vi isso acontecendo no laptop dos meus amigos, o Windows congelou após cerca de 10 a 20 minutos após a inicialização, tornando-se mais lento antes desse prazo)
Ferrybig
4
A simultaneidade é um problema mais ou menos resolvido e não é realmente um problema específico do AV. Fiz uma votação baixa porque acho que sua resposta falha completamente na questão principal e se concentra em um problema que afetaria a maioria dos softwares de computador se não fosse resolvido, mas não porque foi resolvido.
precisa saber é o seguinte
11
@gronostaj, se me permite perguntar, qual você acha que é a questão central? Os AVs ativos que reagem a todos os eventos de leitura / gravação no disco criam um problema de simultaneidade principalmente exclusivo, porque ambos desejam reagir ao mesmo evento. Isso não é comum entre outros softwares. Quanto à forma como é resolvido, gostaria de elucidar?
Frank Thomas
2
Eu tentei resolver isso na minha resposta . Dois AVs não competem pela E / S do disco no sentido de que tentam em paralelo, causando uma condição de corrida. Cada um tentará se injetar no sistema operacional. Qualquer uma das situações será resolvida de maneira estável quando um AV for verificado pelo outro, ou terminará em uma bagunça frágil, ou os AVs continuarão tentando se dominar.
precisa saber é o seguinte
11
@gronostaj Na sua essência, as duas respostas não são excludentes? Por que não há problemas com a contenção de gancho do SO (IE: lutando por "gravar arquivo") ... E ... problemas com a simultaneidade? Corrija-me se eu estiver errado, mas ambos parecem problemas "complementares" que exasperam o outro (ao mesmo tempo em que adicionam outros problemas - cada AV tem falhas de segurança, problemas de desempenho, bloatware etc.). Parece que essa é uma luta para condensar um grande problema em um único problema ... e uma luta para decidir quem tem o "problema".
WernerCD
3

Os dois processos de inspeção competem entre si para examinar a E / S da unidade e da rede.

Ele atrapalha a CPU e nenhuma vantagem é adquirida, já que a maioria dos fabricantes de antivírus compartilha assinaturas coletivamente, de modo que nenhum dos dois detectará malware antes que o outro seja atualizado.

Um único AV bem conhecido e aceito pelo setor protegerá adequadamente o seu sistema, mesmo que você tenha hábitos imprudentes e propensos a infecções e com a mesma eficácia com o uso simultâneo de 10 produtos AV.

123456789123456789123456789
fonte