Procurando argumentos fortes e significativos em favor de software antivírus em máquinas de desenvolvimento [fechado]

40

Ao formar opiniões, é uma boa prática seguir a tradição escolástica - pense o máximo que puder contra a opinião que você mantém e tente encontrar contra-argumentos.

No entanto, por mais que eu tente, simplesmente não consigo encontrar argumentos razoáveis ​​a favor de antivírus (e medidas de segurança relacionadas) em máquinas de desenvolvimento.

Os argumentos contra o antivírus (AV) no desenvolvimento são abundantes:

  1. Não é incomum que a compilação de 1 minuto demore 10 vezes mais com o AV ligado
  2. Em uma palestra em conferência, os desenvolvedores do IntelliJ afirmam que o software antivírus é o principal suspeito quando o IDE é lento
  3. O descompactação vem com aproximadamente 100 kb / s de velocidade com o AV ativado
  4. O AV torna o Cygwin completamente inutilizável (o vim leva 1 minuto para abrir um arquivo simples)
  5. O AV me impede de baixar arquivos úteis (JARs, DLLs) dos emails dos colegas
  6. Não consigo usar vários computadores para desenvolvimento, pois as medidas de segurança / antivírus me impedem de desbloquear portas
  7. O AV mata o desempenho de programas com alta rotatividade de arquivos, como Maven ou Ant

Por último, mas não menos importante - do que o AV realmente me protege? Não estou ciente do meu programa antivírus que interrompe qualquer thread de segurança.

Se o motivo é o medo de divulgar coisas da NDA - nenhum AV pode me impedir de fazê-lo se eu me dedicar a isso.

Se o motivo é o medo de perder o código fonte e / ou a documentação - existem sistemas de revisão distribuídos para isso (há pelo menos 20 cópias de nosso repositório e sincronizamos diariamente).

Se o motivo é o medo de divulgar dados do cliente - os desenvolvedores raramente trabalham conectados a bancos de dados reais de produção, mas estão brincando em ambientes de brinquedo.

Mesmo que haja argumentos significativos a favor de ter AV em máquinas de desenvolvimento, eles se desfazem quando confrontados com a capacidade de executar uma Máquina Virtual em seu ambiente paranoico.

Como quero manter uma mente aberta sobre o problema, alguém poderia apresentar argumentos significativos e fortes a favor do software antivírus para desenvolvedores?

Maros Urbanec
fonte
4
Novamente, você pode ter um desenvolvedor de Mac / Linux que ocasionalmente usa o Windows Virtual Machine para verificar a aparência do site no Internet Explorer - sem nenhum antivírus lá. Para mim, parece que os serviços de TI são extremamente paranóicos em uma frente (usuários do Windows) e muito confiáveis ​​em outras frentes (Macs / Linux). Eu me inclino mais para a explicação de que o Windows facilita para os serviços de TI impor sua paranóia.
Maros Urbanec
2
Nas poucas vezes em que corri e usei um programa antivírus, sempre desativei a verificação contínua e deixei-a apenas agendar. Quando o Windows Defender estava disponível, eu parei de usá-los. Agora eu nem sequer usar o Windows, a menos que eu tenho que (ou seja, no trabalho ... ugh)
Drake Clarris
22
Não acho que seu problema seja um software antivírus, é um software antivírus excessivamente invasivo . Desabilite a verificação de anexos de email, o firewall (o Windows possui), a verificação de arquivos zip, etc. Basta fazer um monitoramento básico em tempo real e verificações frequentes fora do horário comercial.
GrandmasterB
4
Se o seu AV estiver lento, você está usando o AV errado.
ZzzzBov
6
Não importa o quão inteligente você seja sobre não clicar em links suspeitos, desativar plugins etc. quando um site em que você confia é invadido e usa um bug do navegador para instalar um malware driveby. BTDT Meu sistema de backup passou no teste de restauração não programada do sistema com cores vivas.
Dan Neely

Respostas:

41

A única razão para usar o software antivírus em máquinas de desenvolvimento que supera todos os seus argumentos é:

Para cumprir auditorias de segurança.

Bancos, agências governamentais, grandes empresas regulamentadas com dados sensíveis não têm escolha sobre esse assunto.

MrFox
fonte
2
Você sabe como essas empresas lidam com Linux e / ou Mac? Como funcionário, você é obrigado a usar o Windows lá?
Maros Urbanec
2
@MarosUrbanec Na minha experiência, e este é um tipo de comentário YMMV, você obtém uma máquina de desenvolvedor de imagens padrão do Windows. A partir daí, você pode conectar-se a uma caixa UNIX / Linux através do seu terminal favorito e trabalhar. Eu nunca vi desenvolvedores usando Macs no setor bancário.
MrFox 31/05
11
Tendo trabalhado para bancos e agências governamentais, a falha nesse argumento é que os desenvolvedores raramente (se alguma vez) têm dados confidenciais reais em suas máquinas - ou mesmo acesso a dados confidenciais na rede. Esses dados geralmente são controlados por meio de suas próprias políticas e funções de segurança, e os desenvolvedores normalmente apenas têm código em suas máquinas. (Dito isso, sim, percebo que as políticas de segurança de TI geralmente não têm muita correlação com a realidade).
DA01
11
(também, quando eu estava na banca, tivemos Macs que foi great desde que nos deixou sozinhos e que realmente poderia fazer coisas produtivas com nossas máquinas.)
DA01
11
@ DA01 As empresas procuram mitigar os riscos legais e os riscos de provocar reguladores. Isso pode ser muito mais caro do que uma produtividade de desenvolvimento um pouco menor. Os argumentos técnicos são discutíveis. O status quo é superprotetor e não completamente racional - e sim, provavelmente posso estender essa conjectura a nossos governos e sistemas jurídicos em geral.
MrFox
42

Realmente, não há absolutamente nenhuma razão para isentar os desenvolvedores de terem software antivírus em suas máquinas. E muitas razões para exigir isso.

A maioria das desvantagens mencionadas pode ser resolvida informando ao software antivírus que sua pasta de desenvolvimento (a que está vinculada ao seu repositório de códigos) é um local confiável. Depois de fazer isso (e fazer com que a TI adie a verificação diária para nós em algum momento da noite, já que a maioria dos desenvolvedores deixa suas máquinas ligadas de qualquer maneira), não tivemos mais problemas com o software antivírus em nossas máquinas.

Quanto ao download de arquivos de e-mails: diga aos seus amigos para usar uma extensão diferente. Não é conhecido - o software antivírus é inteligente o suficiente para verificar se é ou não o que pretende ser, um software inventado. Atualização : observe que essa é uma maneira de contornar as regras mais estúpidas dos clientes de email em relação aos anexos. A maioria dos softwares antivírus não se deixa enganar pela alteração da extensão e, mesmo que seja, o antivírus será acionado quando você mudar o nome da extensão para realmente usá-la.

E para a questão da porta: essa é a única coisa em que as políticas do software antivírus podem precisar ser diferentes para os desenvolvedores, mas, honestamente, precisamos e podemos desbloquear as instâncias de servidor como quisermos, ainda não podemos aceitar conexões externas à nossa rede local. E em termos de segurança, é assim que deve ser. E estamos trabalhando com uma equipe remota. Eles usam uma VPN (Rede Privada Virtual) e, portanto, estão "dentro" da rede local no que diz respeito ao software antivírus.

Marjan Venema
fonte
25
"Quanto ao download de arquivos de e-mails: diga aos seus amigos para usar uma extensão diferente." Isso é estúpido e significa que o AV que você usa é uma porcaria e não pode verificar os cabeçalhos dos arquivos baixados. Além disso, se você precisa mudar seu fluxo de trabalho apenas para fazer seu feliz AV, então boa sorte
toasted_flakes
@grasGendarme Não acho estúpido, é apenas o AV que está protegendo usuários estúpidos. O usuário médio não receberá legitimamente emails com anexos executáveis ​​e, portanto, esse anexo provavelmente será malicioso. Se você pular os bastidores da alteração da extensão para executá-la, mostrará perfeitamente que conhece o conteúdo executável e provavelmente sabe o que está fazendo.
Loren Pechtel
11
@LorenPechtel Sim, mas a idéia de contar a seus amigos para alterar as extensões de sua attachement, em vez de configurar o seu AV é, na melhor das hipóteses, questionnable
toasted_flakes
11
@grasGendarme não só é estúpido; mas os únicos filtros que encontrei nos anexos mortos arbitrariamente residiam no servidor de email de alguém, não localmente. A maioria deles também foi inteligente o suficiente para perceber que "TestApp.NotAnExe" ou "SampleData.Piz" eram arquivos exe / zip, independentemente da extensão.
Dan Neely
2
@grasGendarme: Geralmente não é o antivírus que o desabilita, mas o cliente de email. E a recomendação também é questionável. Quando você contorna o cliente de email, o AV entra em ação assim que você renomeia o arquivo e tenta fazer qualquer coisa com ele.
Marjan Venema
27

Em máquinas de desenvolvedor? Sim, porque os desenvolvedores tendem a baixar todo tipo de coisas (relacionadas e não relacionadas ao trabalho).

Nas máquinas de construção, também é importante simplesmente se proteger. Seria realmente ruim implantar / enviar seu código apenas para descobrir que ele tem um vírus, uma vez que chega ao seu destino.

Richard
fonte
6
Por que uma empresa contrataria desenvolvedores que não são inteligentes o suficiente para saber do que e de onde baixam o software? A maior carne que tenho com o software AV em máquinas para desenvolvedores é que é um insulto. Estou dentro. Eu sei como usar com segurança o Internet FFS. ;) (Dito isto, embora a maioria dos softwares antivírus seja absurda, vejo a necessidade de verificações regulares e outras coisas - por nenhuma outra razão que a máquina do desenvolvedor esteja normalmente conectada à rede e se outras máquinas estiverem comprometidas ...)
DA01
7
@ DA91 Não é ofensivo - todos cometem erros e acidentalmente pressionam o botão errado + o que acontece quando outras pessoas acessam a máquina da empresa que você usa?
precisa saber é o seguinte
@ DA01: Qualquer empresa que possa ter instalado explorável (como navegadores da web) e o programador é enganada com o link para ótima solução para algum problema no s1ackexchange.com? E, dependendo da empresa em que você trabalha, pode ser alvo de ataques muito específicos ou do uso de explorações de 0 dias.
Maciej Piechotka
11
@ Mark Talvez eu esteja desatualizado em como é fácil infectar o Windows, mas, a menos que eu esteja usando uma cópia não corrigida do IE6 ou algo assim, pensei que seria preciso mais do que 'apertar acidentalmente o botão errado'
DA01
11
Isso está chegando há 20 anos, mas tudo bem, eu vou te dar essa. :)
DA01
11

Existem muitas razões para usar um antivírus. No entanto, pessoalmente, não acho que as compensações valham a pena. Você pode se proteger apenas sendo esperto ao usar computadores:

  1. Quando algo pede permissões administrativas, por que está fazendo isso? Para que precisa disso?
  2. Garanta que sua máquina receba atualizações automáticas
  3. Desative a execução automática de coisas perigosas e desnecessárias no navegador (Flash, Java, Silverlight)
  4. Verificado de msconfigvez em quando. Um programa estranho está sendo executado na inicialização? Hora de fazer uma verificação (única) e garantir que não seja nada ruim
  5. Use uma VM para desenvolvimento. Isso tem uma penalidade de velocidade, mas na última vez que o Windows 8 morreu na minha VM, tudo o que eu precisava fazer era reverter para um instantâneo de uma semana atrás e fazer um git pull. Muito mais fácil fazer isso do que manter instantâneos de máquinas físicas, especialmente com a mudança de hardware

Nunca vi um antivírus que não impactasse significativamente o desempenho do sistema. Eu mudei para o Linux e / ou OpenBSD em 2008, onde ainda assisto quais programas eu corro, mas é muito mais fácil do que o Windows saber o que um programa fará (principalmente porque a maioria das coisas é de código aberto).

De qualquer forma, desde que mudei, agora executo o Windows em uma VM e Linux na máquina física quase que exclusivamente, inclusive no meu local de trabalho (Microsoft shop). Eu nunca instalei um antivírus em uma VM. Eu realmente não navego na Web ou em qualquer coisa na VM por motivos óbvios, por isso não me preocupo muito com as informações da minha conta bancária indo a lugar algum. A pior coisa que eles conseguiram é algumas informações proprietárias ou minha senha. Eu uso senhas aleatórias, então isso é inútil. E se o vírus quiser obter informações proprietárias (por exemplo, código-fonte proprietário), provavelmente é tão direcionado e personalizado que nenhum antivírus poderá detectá-lo.

Editar:

Na verdade, eu corro um programa AV na minha VM. Eu uso o Windows Defender, mas isso é basicamente porque está ativado por padrão e é tão pouco invasivo que eu nunca o notei em execução

Earlz
fonte
7

Como quero manter uma mente aberta sobre o problema, alguém poderia apresentar argumentos fortes e significativos a favor do software antivírus para desenvolvedores, por favor?

Suspeito que a maioria das pessoas que visitam este fórum seja inteligente o suficiente para não baixar ou visitar sites perigosos da Internet; portanto, eles veem o AV como um aborrecimento ou não são necessários.

Mas, realmente, você precisa de um software AV. Não para você, mas para o pobre sap (neófito do computador) que clica no link "Clique aqui para ver gatinhos fofos" em um e-mail e a última coisa que vê são centenas de pop-ups com gatinhos fofos dizendo "todas as suas bases pertencem nós ", pois a máquina está infectada por malware.

Em seguida, o malware se espalha pela sua rede e, em seguida, você vê o seu processador funcionando a 100% e nada está funcionando.

A menos que você esteja desenvolvendo uma bolha, quero proteção. Posso citar que, uma vez que trabalhei para uma empresa que decidiu que não precisava de antivírus e por um tempo estava tudo bem, até que todos os computadores foram infectados. Máquinas de poço foram reformatadas e muito tempo foi perdido. Então todos receberam o AV e um aviso da empresa para não desativar ou desinstalar o AV.

Como outros sugeriram, você pode ajustar o AV para que ele tenha menos impacto em seus esforços diários.

Você pode andar na corda bamba sem rede, mas realmente prefiro ter uma rede, mesmo que nunca precise dela.

Jon Raynor
fonte
5
-1 Como observei na questão principal; um site confiável pode ser invadido para infectá-lo com uma unidade de ataque, mesmo se você for inteligente o suficiente para não clicar em links aleatórios de gatinhos.
Dan Neely
11
Além disso, sua empresa decide se você (e, por extensão) pode andar na corda bamba, não você. Em casa, você decide.
Mark Allen
3
+1, pois esse é realmente o único argumento válido. Não é você como desenvolvedor, são as outras 100 máquinas com as quais você compartilha a rede. Quanto aos ataques drive-by, ainda são predominantemente os IE, JRMs e plugins Flash e similares ... geralmente coisas que um desenvolvedor também não deseja em suas máquinas. ;)
DA01
@ Dan - Desculpe, meu post não foi feito para sugerir que a abertura de e-mails é a única maneira de obter um vírus, foi apenas um exemplo para ilustrar meu argumento sobre o software AV.
Jon Raynor
4

Concordo que o software antivírus é tão invasivo que nos faz pensar se o remédio é pior que a cura. Eu também sou tentado a desistir e ver o que acontece.

No entanto, nunca fiz isso, porque há sérios riscos em ficar sem o software antivírus. As informações podem ser roubadas, os dados podem ser perdidos ou o computador pode ser atolado por spyware. Seu software provavelmente bloqueou muitos ataques que você nem sabia. De qualquer maneira, "isso ainda não aconteceu" nunca é um bom argumento contra medidas cautelares.

Uma coisa que eu poderia sugerir é ajustar as configurações do seu software anti-vírus. Provavelmente, você pode desativar alguns dos recursos para chegar a um compromisso aceitável entre desempenho e segurança. A maioria dos principais problemas que você descreve vem da verificação de arquivos em tempo real. Eu não acho que você realmente precise disso (desde que não esteja fazendo nada estúpido) e, se você desligá-lo, provavelmente descobrirá que 90% do aborrecimento desaparece.


fonte
1

Nunca experimentei lentidão com o tempo de construção. Sou desenvolvedor do Windows e o Windows 8 possui um AV robusto embutido (no Windows XP-7, você pode usar o Microsoft Security Essentials gratuito - que é um excelente produto que tem muito pouco impacto no desempenho).

Se o tempo de construção demorar 10 vezes mais, sugiro que você encontre um software AV melhor na sua plataforma - e garanta que você está usando o MSE na sua máquina Windows.

niico
fonte
0

Se sua empresa cria um software antivírus, pode ser necessário testar ou alimentar seu software.

Parece absurdo, mas foi exatamente o meu caso há 3 ou 4 anos, e posso garantir que não houve impacto zero.

Além disso, em 2010,

A indústria de malware publicou quase quatro novos vírus por minuto no primeiro semestre do ano.

- https://www.gdatasoftware.co.uk/press-center/news/article/article/1760-number-of-new-computer-viruses.html

Dados esses números, a única maneira de o software AV ser mantido é através das heurísticas - na prática, monitore chamadas win32 específicas e faça com que elas ativem o AV. Obviamente, isso é um pouco problemático se você precisar fazer essas chamadas como desenvolvedor. Novamente, um problema que vi acontecer.

Sklivvz
fonte
0

Assim que existir um software AV para usuários avançados, eu diria que não haveria razão contra isso. O problema é que todo o software * AV é feito para seus pais. Eles têm mais dinheiro que você e estão dispostos a pagar pela sensação de segurança (e clicar em mais botões para baixar as barras de ferramentas do gatinho).

* Para valores adequados de "todos". Eu encontrei todos os programas antivírus até agora (cerca de meia dúzia de grandes marcas) extremamente antipáticos e invasivos.

l0b0
fonte