A resposta é realmente: não existe uma resposta simples, sim ou não. Mas a segurança é pelo menos tão importante para seus usuários de desenvolvimento quanto para qualquer outra pessoa.
Por um lado, sim, os desenvolvedores tendem a ser tecnicamente mais experientes. Por outro lado, o trabalho deles costuma ser estressante e seus marcos de desenvolvimento provavelmente terão prioridade sobre os cuidados extras necessários para manter o próprio sistema como um ambiente seguro. Isso não é uma crítica aos desenvolvedores; é uma consideração franca de seus deveres diários.
Se você deseja fornecer aos desenvolvedores acesso completo e sem restrições aos sistemas deles, considere as seguintes medidas adicionais:
- Forneça outro sistema, bloqueado tanto quanto os sistemas de usuário normais, para uso normal não-dev.
- Eles colocam suas máquinas dev de acesso completo em uma VLAN especial, com acesso apenas aos recursos dev.
- Pergunte se alguma coisa impediria que um sistema infectado colocasse em risco a base de código. Poderia uma máquina backdoor verificar código maligno ou eliminar a base de código nas mãos de um hacker hostil? Tome as medidas apropriadas para mitigar esse risco.
- Da mesma forma, pergunte se alguma coisa protege os dados corporativos mantidos nos sistemas aos quais os desenvolvedores têm acesso.
- Faça regularmente o inventário de software e a auditoria de segurança dos sistemas de desenvolvimento.
- Tenha uma idéia do que eles estão executando e use essas informações para criar suas imagens de reimplementação do sistema de desenvolvimento.
- Mais cedo ou mais tarde, você terá um desenvolvedor que fica descuidado e instala coisas que são claramente perigosas ou completamente não relacionadas ao trabalho. Ao enviar avisos rapidamente quando isso acontece, você avisa a comunidade dev que sim, alguém está assistindo e eles têm a responsabilidade de permanecer dentro dos padrões razoáveis.
- Você está fazendo verificações regulares de malware? Em alguns casos, os desenvolvedores reclamam com razão do imposto de desempenho cobrado pelos sistemas AV ao acessar (os sistemas AV que estão sempre ativados, sempre verificando todos os acessos a arquivos). Pode ser preferível mudar para uma estratégia de varredura noturna e / ou criar exclusões de arquivos / pastas para a varredura ao acessar. Certifique-se de que os arquivos excluídos sejam verificados de outra maneira.
- Seus desenvolvedores habilitados para administrador podem desativar toda a verificação AV? Como você detectaria e remediar isso?
Se você deseja bloquear sistemas de desenvolvimento, considere o seguinte:
- Você tem capacidade de suporte para responder rapidamente às solicitações de suporte? Considere a taxa média de pagamento de seus desenvolvedores e pergunte se eles merecem ou não um SLA de tempo de resposta mais rápido. Provavelmente não faz sentido manter seu desenvolvedor de US $ 120 mil (que é a chave para um projeto multimilionário) esperando enquanto você lida com solicitações de suporte de funcionários de US $ 60 mil / ano.
- Você tem uma política clara e inequívoca sobre quais solicitações de suporte você fará e não atenderá aos seus desenvolvedores? Se eles começam a ficar a sensação de que o apoio é arbitrária, você vai , eventualmente, sentir a dor.
De qualquer forma, você precisa admitir que os desenvolvedores são um caso especial e precisam de suporte extra de algum tipo. Se você não está orçando para isso, os problemas provavelmente estão piorando agora ... ou serão no futuro.
Como uma observação lateral, vi argumentos muito semelhantes ocorrerem com administradores de sistemas. Em pelo menos dois trabalhos diferentes, vi os administradores de sistemas argumentarem de maneira bastante sombria quando foi sugerido que eles próprios deveriam ter bloqueado os sistemas ou pelo menos usar dois logins (um com privs root / admin; outro sem). Muitos administradores de sistemas achavam que não deveriam ser trancados de maneira alguma e argumentavam vigorosamente contra tais medidas. Mais cedo ou mais tarde, algum administrador avesso ao bloqueio teria um incidente de segurança e o exemplo teria um efeito educacional em todos nós.
Eu costumava ser um daqueles administradores de sistemas que corria com administradores privados o tempo todo. Quando fiz a alteração para contas duplas e apenas aumentei a necessidade, admito que foi bastante frustrante durante os primeiros meses. Mas o lado positivo da nuvem foi que eu aprendi muito mais sobre a segurança dos sistemas que estava administrando, quando minha conta normal vivia sob as mesmas restrições que eu impunha aos usuários. Isso me fez um administrador melhor! Eu suspeito que o mesmo se aplica aos desenvolvedores. Felizmente, no mundo Windows, agora temos o UAC, o que facilita a execução como um usuário limitado e eleva apenas quando necessário.
Pessoalmente, não acho que alguém deva estar acima de alguma forma de práticas de segurança. Todos (administradores de sistemas, desenvolvedores, gerenciamento superior incluído) devem estar sujeitos a procedimentos e supervisão de segurança suficientes para mantê-los alerta. Dizer o contrário é dizer que os sistemas e dados da empresa não valem o esforço para proteger.
Vamos colocar de outra maneira. Se Mark Russinovich pode ser capturado por um rootkit , qualquer um pode!