A Ascensão e Dissolução do Perímetro — Pt 2

Vinicius Oliveira
SecurityIN
Published in
6 min readJul 21, 2016

Na primeira parte deste artigo eu discuti a ascensão da mais utilizada estratégia de defesa, que evoluiu a partir do advento do Firewall, no início dos anos 90. Em sua época o Firewall foi muito bem aceito e resolveu muitos problemas. Após sua criação, com o objetivo de se refinar ainda mais a análise que estes eram capazes de fazer, surgiram os primeiros Sistemas de Detecção de Intrusão (IDSs — Intrusion Detection Systems). Posteriormente, os IDSs foram integrados aos Firewalls, culminando no surgimento dos primeiros Sistemas de Prevenção de Intrusão (IPSs — Intrusion Prevention Systems). Nos anos 2000 popularizaram-se também os SIEMs (Security Information and Event Management), uma tecnologia que agrega várias técnicas de detecção e análise de eventos de segurança para uma monitoração mais centralizada. Mais recentemente começou-se também a falar em orquestração de segurança, que consiste em comandar vários dispositivos em um ambiente computacional com o fim de se coibir uma ameaça. No centro de todas estas tecnologias nota-se o conceito de segurança de perímetro fortemente instaurado.

Por muito tempo a proteção do perímetro foi uma tática muito eficiente para a proteção da informação. No entanto, este paradigma vem sofrendo com as drásticas mudanças no cenário tecnológico, dentre as quais gostaria de citar o aumento na complexidade e eficácia dos ataques, o advento da Computação em Nuvem e o BYOD (Bring Your Own Device).

A segurança de perímetro, como uma técnica medieval, é muito eficiente contra ataques que se equiparam a aqueles utilizados no período medieval. Entretanto, assim como não se usa mais espadas e cavalos no mundo físico, no cenário cibernético as técnicas de ataque também avançaram sobremaneira. Por um longo período, as principais ameaças se sucediam pela ingenuidade dos usuários ou por meio da exploração de vulnerabilidades já corrigidas no Software, neste caso afetando somente máquinas com serviços desatualizados. No entanto, desde 2010, tendo como marco a descoberta do Stuxnet, temos visto uma série de ataques com uso de vulnerabilidades 0-Day para suas explorações. Em termos gerais, uma 0-Day é uma vulnerabilidade ainda não conhecida pelo fornecedor do Software e pelo grande público e, dessa forma, ainda não há correção para tal. Apesar disso, o que é ainda mais emblemático é que as ferramentas de proteção do perímetro (IDSs, IPSs e etc) não possuem assinaturas para a detecção de tentativas de exploração de uma vulnerabilidade 0-Day, implicando na ineficiência desta tecnologia na mitigação deste tipo de ameaça. Ademais, sabe-se que ao explorar vulnerabilidades em um Software, a depender de suas permissões, pode-se transpassar todas as barreiras que supostamente protegem o seu entorno, levando o atacante a plena conclusão de seus objetivos. A tendência é que este tipo de ameaça cresça nos próximos anos, sendo que o maior indicativo disso é a ampla ascensão do mercado de vulnerabilidades 0-Day que eu discuto brevemente aqui.

Assim como no mundo real, no espaço cibernético os ataques também evoluíram sobremaneira.

Outro paradigma que tem contribuído grandemente para a deterioração do perímetro é a Computação em Nuvem (Cloud Computing), a qual vem angariando cada vez mais força por prover uma série de benefícios a aplicações que podem se utilizar de seu ambiente distribuído e flexível. Com este paradigma, parte-se de um perímetro bem definido, com toda a infraestrutura concentrada em único lugar, para uma abordagem distribuída com muitos pontos de entrada e saída. Neste cenário, torna-se difícil a implantação de tecnologias como Firewalls, WAFs, SIEMs e etc, uma vez que é intrínseco para um bom funcionamento e gerência destas tecnologias que haja um perímetro bem estabelecido. Além disso, grande parte das aplicações em nuvem executam sobre infraestruturas terceirizadas, o que acrescenta ainda mais desafios a uma gerência efetiva da segurança.

Toda esta problemática tem sido reconhecida pela Cloud Security Alliance, que criou o Software Defined Perimeter Working Group justamente para discutir e propor soluções para estas questões. Neste contexto, tem-se buscado por uma adaptação do perímetro a um cenário em que as companhias possuam cada vez mais perímetros, com uma dimensão cada vez menor, chegando-se ao limite das máquinas virtuais em execução no ambiente. No entanto, a gerência deste maior número de perímetros implica na implementação de um número maior de controles em um número maior de lugares, conferindo um grande aumento na complexidade de administração; sabendo que a complexidade é a grande inimiga da segurança, temos outro grande problema.

O que é o perímetro quando pensamos em Computação em Nuvem?

Além da Computação em nuvem o BYOD tem cada vez mais obscurecido as linhas de definição do perímetro. BYOD se refere a uma política que permite aos colaboradores de uma dada organização utilizarem, em seu ambiente de trabalho, seus próprios dispositivos eletrônicos. Uma vez que estes dispositivos são moveis e trafegam por diferentes domínios, como podem ser protegidos pelo perímetro da organização?

Como último argumento, gostaria de salientar que todas as ferramentas que protegem o perímetro são Software e estão sujeitas a todas suas vulnerabilidades, uma vez que a segurança ainda não é uma prioridade nos estágios de desenvolvimento. O pesquisador Peiter Zatko, conhecido como Mudge na comunidade de segurança, publicou recentemente em seu Twitter algumas informações, aparentemente extraídas de documentos do DoD (U.S. DEPARTMENT OF DEFENSE), indicando que ⅓ de todas as vulnerabilidades encontradas em sistemas do governo americano foram encontradas em Software de segurança, ou seja, os sistemas usados para a proteção do perímetro.

Além dos dados apresentados pelo Mudge, recentemente o pesquisador de vulnerabilidades Tavis Ormandy tem voltado sua atenção para sistemas de segurança, desde então ele tem descoberto várias vulnerabilidades em vários produtos de grandes fornecedores deste mercado: AVG, AVAST, Kaspersky, FireEye e outras. A maioria de suas descobertas têm sido publicadas no blog Project Zero, mantido pela Google, estas são de grande valia para quem gostaria de estudar mais sobre o assunto. Ao meu ver é assustador encontrar vulnerabilidades em Software de segurança, em primeiro lugar porque é inadmissível que sistemas projetados para defender aumentem a superfície de ataques do ambiente onde foram implantados; em segundo lugar porque são projetados por empresas que supostamente entendem toda a problemática e a importância da segurança da informação; assim, não deveriam essas empresas dar o exemplo e desenvolver com maior responsabilidade? Eu compreendo o desafio que é construir Software seguro e que ocasionalmente todo Software está sujeito a vulnerabilidades, mas algumas das vulnerabilidades relatadas pelo Tavis poderiam ser simplesmente evitadas com uma atenção maior ao código, o que indica que aqueles que deveriam dar o exemplo não estão fazendo o dever de casa.

Para finalizar, eu não defendo o fim do perímetro ou que ele esteja morto, como é discutido por muitos. A segurança de perímetro continua essencial, mas não possui a mesma hegemonia de tempos atrás e não é mais suficiente, se utilizada de forma isolada, para as demandas atuais. A forma correta de se aplicar a segurança de perímetro é utilizando-a como uma das camadas de uma abordagem de segurança em profundidade, mas no centro desta abordagem deve-se haver um Software que seja resiliente para resistir quando todas as outras camadas falharem.

No entanto, o que muito se vê, infelizmente, é uma desproporcionalidade na alocação dos recursos de segurança; muito se investe em misteriosas caixas-pretas que prometem milagres e pouco nos processos de desenvolvimento seguro. Esse desbalanço na alocação dos recursos culmina em camadas com diferentes níveis de segurança, o que quebra o conceito fundamental que determina que a segurança é tão forte quanto o seu elo mais fraco. Enquanto o Software continuar a ser o elo mais fraco, será sempre o grande alvo e o grande vetor pelo qual os grandes ataques se sucedem. Como praticamente toda a cadeia de tecnologia se baseia em Software, um amadurecimento no desenvolvimento deste resultaria em todo um ecossistema mais seguro, proporcionando uma sólida, consistente e duradoura evolução para a Computação.

Originally published at iopub.org on July 21, 2016.

--

--

Vinicius Oliveira
SecurityIN

Christian. Application Developer at IBM. Software Security enthusiast. Author of http://securityin.co.