Em tempo de ROSI, GRC, e outras buzzwords, resolvi escrever alguns artigos sobre um básico que muitas vezes é esquecido: a segurança técnica dos componentes da infra-estrutura de TI. Como de costume, o artigo abaixo está disponível na área de documentos do meu blog, boa leitura.

Em qualquer mercado, sempre existe uma buzzword que toma a mídia especializada e as conversas dos profissionais nas rodas de bate-papo e início de reuniões. Nos últimos meses, o conceito de Governança, Risco e Compliance (GRC) tem aparecido como uma das principais iniciativas em Segurança da Informação, onde um framework muito bem estruturado, ajuda as organizações a manterem o risco em seus ambientes dentro de níveis toleráveis por quem paga a conta. Isso é sensacional, e me deixa satisfeito de ver que a especialização que escolhi como carreira, finalmente assume um papel estratégico.
Porém, existe uma base que muitas vezes é esquecida e até desprezada pelas empresas e profissionais que cuidam dos seus processos de segurança: a segurança técnica. Apesar de ser a parte mais fundamental para a manutenção de um ambiente seguro, este componente é continuamente colocado como item de segunda linha, ou que não precisa de pessoas especializadas para ser adequado e administrado. Isto não é uma opinião pessoal, existem fatos que deixam claro o quanto precisamos melhorar neste aspecto.
A Repetição do Erro
Focando somente em vulnerabilidades em Aplicações Web, os resultados do OWASP Top 10 mostram que apesar de ter obtido em 2007 um crescimento de espantosos 43% em relação ao ano anterior e ter gerado mais de R$ 6 bilhões somente no Brasil, a “cara” do comércio eletrônico é mantida de forma quase amadora. Um relatório publicado recentemente pela consultoria White Hat Security, concluiu que 90% dos web sites estão vulneráveis a ataques diversos.
Este número pode até mesmo ser um exagero ou uma tentativa de FUD, mas que tal analisarmos os resultados do OWASP Top 10 2007 que variam pouco desde 2004? A tabela abaixo deixa claro que pouca coisa mudou em três anos, e vulnerabilidades já conhecidas e com processos corretivos publicados em diversas fontes na Internet, simplesmente não são corrigidas.

Além do que está apresentado na tabela, existem várias outras vulnerabilidades que são facilmente exploradas por worms, crackers amadores e script kiddies. E as consequências podem ir desde uma simples “derrubada” no web site da organização por algumas horas, até o acesso e a modificação de dados de clientes e/ou parceiros comerciais, como pode ocorrer em alguns ambientes na exploração do Cross Site Scripting (XSS) ou do SQL Injection, que não figura no OWASP Top 10 mas é extremamente comum.
O Fator Humano
Quando olhamos uma outra fonte confiável de informação sobre vulnerabilidades, podemos concluir que o problema é gerado não só pela falta de cuidado dos fabricantes em lançar produtos com configurações padronizadas que não são obrigatoriamente alteradas pelos seus clientes, e manter a odiosa prática de senhas padrão para quase tudo. Somado a isto tudo, temos os técnicos que não configuram de forma adequada os sistemas pelos quais são responsáveis, e os usuários desta infra-estrutura que por diversos motivos falham em seguir procedimentos de segurança, estejam estes estabelecidos ou não.
Os dados apresentados no SANS Top-20 2007 Security Risks deixam claro que esta minha afirmação está longe de ser uma conjectura. Web browsers vulneráveis a spoofing e scripts maliciosos, aplicações de escritório que oferecem muito mais que um usuário comum precisa e saem de fábrica carregadas de furos de programação, sistemas operacionais que precisam de correções sucessivas. A lista é longa, e quase todos os items estão diretamente ligados à falta de cuidado com a Segurança Técnica.
Mas antes de apontar o dedo e culpar os fabricantes, técnico e usuários, é preciso entender a causa do problema e os motivos que levam estas listas a não se alterarem com o passar dos anos. Estamos trabalhando da forma certa, quando o assunto é manter o ambiente com um nível de risco aceitável? A resposta é não. Estamos fazendo o que é necessário para os negócios andarem, e isto não necessariamente significa que eles fiquem seguros.
Quantos projetos de TI você conhece que levaram a sério a etapa de avaliar a necessidade de controles, alocar recursos para que estes sejam comprados/desenvolvidos/implementados, e um processo de auditoria independente para revisar o produto final? Da minha parte, posso afirmar que de cada dez, talvez um pudesse ser encaixado nesta categoria. E você?
Buscando Alternativas
A causa me parece muito clara, infelizmente ainda não existe na maioria das organizações o entendimento do que é segurança, e como ela pode ser atingida de forma estruturada. Existem pressões para o sistema de vendas ficar pronto, para o billing atender as mudanças de preço, para o CRM incluir novos cadastros, mas e para que tudo isso funcione com estabilidade? Pressões para um plano de continuidade fazer parte do processo, para o código das aplicações ficar seguro contra ataques ou ainda para simplesmente treinar as pessoas a usarem os recursos de forma certa, existem?
Manter o ambiente com um nível de segurança aceitável significa envolver toda a organização no processo, incluir uma cultura “segura” na cabeça das pessoas, ter o apoio do corpo executivo. Isso é totalmente correto, mas é difícil de conseguir rapidamente não só pela resistência natural que existe, mas também pela falta de priorização que você vai encontrar e pela dificuldade de conseguir fundos para isto.
Porém, o primeiro passo de garantir a presença de controles de segurança técnica, é mais rápido, mais simples e envolve muito menos gente. Se você trabalha em uma empresa de pequeno ou médio porte, talvez a sua dedicação e um apoio mínimo da sua chefia sejam suficiente para mudar as coisas. Existem empresas especializadas em segurança técnica, como a minha, e existem ainda recursos na Internet que custam só o seu tempo de ler, entender e aplicar.
OWASP
O OWASP (Open Web Application Security Project) é uma iniciativa formidável que congrega pessoas de todo o mundo em torno de um só trabalho: criar e disponibilizar práticas de segurança técnica que possam ser usadas para criar um ambiente mais seguro. As pessoas que trabalham no OWASP não ganham nada além da satisfação de contribuir para a comunidade e aprender muito no processo. Lá você irá encontrar recursos que podem ajudar a:
- Aprender sobre vulnerabilidades, ameaças, ataques e principalmente, como evitar tudo isso no ambiente sob sua responsabilidade.
- Conhecer como funcionam e aprender a evitar as vulnerabilidades mais comuns no mundo web, que são listadas no OWASP Top 10 e foram traduzidas pelo Chapter Brazil para o português.
- Incluir etapas de segurança no processo de desenvolvimento de software, ou mesmo revisar o que já tem pronto para descobrir se melhorias neste escopo são necessárias. O CLASP (Comprehensive, Lightweight Application Security Process), o OWASP Guide 2.0 e o OWASP Web Security Certification Criteria são recursos gratis, de excelente qualidade e que estão disponíveis.
SANS
O SANS Institute é bastante conhecido pelas certificações técnicas que provê, porém nem todos sabem que o site deles é um enorme repositório de conhecimento, onde existe desde material de leitura acadêmia em segurança e guias para a criação de políticas de segurança, até formas de evitar as SANS Top 20. Um dos projetos que eles mantêm que mais gosto, é o Security Consensus Operational Readiness Evaluation (SCORE).
O SCORE tem como objetivo manter no site do SANS uma lista de padrões e checklists voltados para a manutenção de níveis mínimos de segurança. Ainda engatinhando, tem somente um documento disponível e muito mais voltado ao mercado norte-americano, mas estão sendo desenvolvidos documentos para UNIX, handhelds e firewalls. Contribuir para esta iniciativa, é sem dúvida uma excelente forma de aprender e compartilhar o conhecimento com a comunidade.
Concluindo
Impedir a ocorrência de problemas em Segurança da Informação é uma tarefa impossível, que ninguém em sã consciência pode assumir de forma séria, porém, evitar que erros primários gerem vulnerabilidades na infra-estrutura de TI é uma tarefa simples, que exige do corpo técnico somente boa vontade e capacidade mínima para administrar os controles de forma adequada.
Talvez na próxima vez que o seu gerente quiser falar sobre GRC, Identity Management, Risk Management e outros processos avançados em Segurança da Informação, seja bom lembrar que o básico não pode ser esquecido e o corpo técnico tem um papel tão fundamental no suporte ao processo de gestão como os demais. Seguir as recomendações para evitar a ocorrência dos problemas listados no OWASP Top 10 e SANS Top 20 é uma questão de bom senso, e certamente irá evitar muitos problemas que custarão bem mais para serem resolvidos.