Responsabilizar a vítima é algo comum em TI: usuários são geralmente culpados pois não atualizam seus sistemas, escolhem senhas fracas, são enganados por ataques de phishing, dentre outros. Porém, enquanto os usuários são, e continuarão sendo, a principal fonte de problemas de segurança, jogar neles toda a responsabilidade é uma maneira de pensar que não ajuda em nada.
As pessoas geralmente não fazem as coisas que supostamente deveriam: trocar o óleo do carro, ir ao dentista, recarregar a bateria dos detectores de fumaça. Por quê? Porque elas aprendem com a experiência. Se algo as machuca instantaneamente, como tocar em algo quente ou alimentar um tigre, rapidamente elas aprendem a não fazer novamente, mas se esquecem de trocar o óleo, ignoram uma atualização de segurança ou escolhem senhas fracas, é pouco provável que algo aconteça de imediato. E se nada acontece, não aprendem.
Nós tentamos resolver este problema de várias maneiras. Criamos regras para as pessoas: trocar o óleo a cada 5.000 quilômetros, escolher senhas seguras. Ou também enviamos notificações: Os detectores de fumaça soam um alerta, dentistas enviam cartões postais, o Google nos avisa quando tentamos acessar um website suspeito de conter software malicioso. Porém, novamente, os efeitos causados por ignorar esses alertas geralmente não são sentidos imediatamente.
Isso torna a segurança essencialmente um entrave para o usuário. É um obstáculo recorrente: algo que interfere em seu desempenho. E é da natureza humana, baseada na nossa capacidade de raciocínio, driblar esses obstáculos quando são recorrentes. Então, se as consequências de se ignorar ou contornar os alertas de segurança não são tão óbvias, as pessoas irão naturalmente fazê-las.
Esse é o problema com o Microsoft’s User Account Control (UAC). Introduzido no Windows Vista, a idéia é melhorar a segurança limitando os privilégios de uma aplicação quando estiver em execução. Contudo, os alertas de segurança desse recurso são tão frequentes que raramente acontece algum problema quando são ignorados. Por isso o usuário tende sempre a ignorá-los.
Isto não significa que tentar educar o usuário é inútil. Pelo contrário, a educação do usuário é uma importante etapa de qualquer programa de segurança corporativo. Já usuários domésticos, quanto mais souberem das ameaças à segurança e as táticas dos hackers, mais seguro serão seus sistemas. Mas também devemos reconhecer as limitações dessa educação.
A solução é melhorar os projetos de segurança de sistema para pressupor que o usuário não tenha conhecimento, prevenindo-o de realizar modificações no sistema que o exponha a riscos desnecessários, ou até mesmo tirar a segurança completamente de seu controle.
Por exemplo, todos nós sabemos que os backups são importantes. Mas se você esquece de fazer o backup nesta semana, nada de ruim acontece. De fato, nada pode acontecer durante anos. Então, apesar de seu conhecimento, você começa a acreditar que os backups não são assim tão importantes. A Apple descobriu a solução com o seu utilitário de backup Time Machine. Você instala o programa, conecta um HD externo, e estará automaticamente protegido contra falhas de hardware e erros humanos. Ou seja, é mais fácil usá-lo do que evitá-lo.
Por sua vez, a Microsoft deu grandes passos na segurança de seu sistema operacional, provendo algumas configurações de segurança por padrão no Windows XP, e ainda mais no Windows Vista para assegurar que, quando um usuário ingênuo ligar o seu computador, não esteja totalmente desprotegido.
Infelizmente, responsabilizar o usuário pode ser um bom negócio. Companhias de telefonia celular podem faturar de seus clientes quando um aparelho é clonado e usado de forma fraudulenta. Bancos economizam dinheiro responsabilizando o usuário quando são vítimas de algum golpe eletrônico. E este cenário permanece, com alguns bancos acusando as vítimas de perpetrar as fraudes, mesmo que as evidências mostrem de que se trata de uma crime organizado.
O sistema legal precisa corrigir os seus problemas, porém, os engenheiros de softwares precisam se concentrar nos problemas técnicos. Devem aceitar que sistemas que exigem do usuário a fazer sempre a coisa certa estão condenados a falhar.
Esse texto é uma tradução livre e adaptada do artigo Blaming the user is easy – but it’s better to bypass them altogether de Bruce Schneier.
Legal o texto, só não achei legal essa história de tirar do usuário o controle sobre a segurança do sistema. Mesmo que o usuário ignore esses alertas dos sistemas, ele tem que ter controle sobre o que quer ou não quer. Tirar essa liberdade seria um retrocesso.
Não concordo porque a grande maioria dos usuários não tem a minima capacidade de gerenciar um sistema operacional, ou mesmo tempo para aprender a fazer isso. Quanto mais coisas fizermos para evitar que eles façam burradas, melhor seria.
A Apple já segue essa linha de tirar o controle do gerenciamento do sistema operacional e segurança do usuário final. Aliás, não exatamente “tirar”, mas dificultar o acesso. Você consegue fazer praticamente qualquer coisa que faria em outro Unix, porém, muitas vezes não existe uma forma fácil, óbvia ou uma interface gráfica para isso 🙂