Segurança da Informação: Rede segregada em camadas

AGRADEÇA AO AUTOR COMPARTILHE!

Umas das estatísticas que mais se lê no mundo da Segurança da Informação é aquela que diz que 70% dos ataques aos sistemas são internos, ou seja, são executados de dentro da rede da empresa e pelos próprios colaboradores.

Me parece razoável supor que nos dias atuais essa proporção seja bem maior e por uma razão muito simples que descrevo a seguir.

Toda troca de informações no mundo digital pressupõe uma conexão, isto é, uma ligação temporária entre duas máquinas por onde essa troca vai ocorrer. Na maioria dos casos, em um dos lados da conexão está um sistema corporativo, com tecnologias de proteção, controle de mudanças e que é manipulado por profissionais da área de informática. Do outro lado da conexão está o usuário, que não é proficiente em computação ou em segurança, que abre todos os anexos que recebe por e-mail independentemente de onde tenham vindo e que está habituado a clicar no botão “Concordo” sem ler nada, pois sabe que é a maneira mais rápida e fácil de fazer qualquer coisa funcionar em um computador.

Agora vocês vão concluir o óbvio comigo: é muito mais fácil invadir e dominar o computador de um usuário para daí se conectar no sistema corporativo usando as suas credenciais, do que atacar a estrutura de tecnologia da empresa diretamente. Vide o caso dos bancos, que hoje concentram muita energia em criar soluções para garantir que é o próprio usuário acessando sua conta corrente, partindo de seu próprio computador doméstico e não alguém que dominou sua máquina e/ou roubou suas credenciais.

Então, além dos 70% dos ataques que são internos e executados intencionalmente pelos colaboradores, há ainda mais uma parcela que vem do usuário e da máquina do colaborador, mas por conta de uma manipulação feita por um agente externo. Daí minha suposição de que essa proporção interno versus externo tenha aumentado.

O desdobramento mais importante dessas conclusões é o seguinte: A rede interna de uma empresa, onde estão os desktops e notebooks dos usuários, simplesmente não pode ser considerada confiável. Ela deve ser tratada como desmilitarizada, isto é, sem proteção perimetral, onde a segurança de cada estação de trabalho fica a cargo dos softwares  e configurações nela instalados como antivírus, personal firewall, group policies, etc. Em miúdos, é terra de ninguém, como se diz por aí, onde é cada um por si e Deus por todos.

Fazer Segurança de TI máquina-a-máquina na empresa inteira é muito caro e muito complicado. Cada computador com seu sistema operacional e softwares instalados tem literalmente milhares de parâmetros que, se mal configurados, o deixam vulnerável.

Mapear, monitorar, corrigir e compatibilizar todos esses parâmetros com as funcionalidades técnicas exigidas pelos sistemas, sem expor tudo a fragilidades, exige um volume gigantesco de horas trabalhadas e conhecimento técnico de uma profundidade que infelizmente a grande maioria dos profissionais de TI não têm.

Então, para que a Segurança da TI seja efetiva e para que tenha uma relação custo/benefício mais aceitável, é essencial poder contar com segurança perimetral em algumas partes da rede. Ora, se a parte da rede onde estão os usuários é necessariamente desmilitarizada, a única maneira de ter segurança perimetral em outra parte da rede é segregá-la.

Isto significa quebrar a rede corporativa em redes menores, separadas por ferramentas que filtram as conexões e bloqueiam os ataques. São os chamados firewalls, de antiga e nova geração e os IPS (Sistemas de Prevenção a Intrusão).

Agora peço atenção especial. Duas camadas, uma militarizada e outra desmilitarizada, constituem um modelo que é bem melhor que uma rede monolítica, mas que ainda deixa muito espaço para melhorar a Segurança e a relação custo/benefício.

A arquitetura que sugiro aqui possui na verdade três camadas. Entre as que menciono acima, é necessária uma camada intermediária para abrigar os servidores de aplicação e serviços. Como o acesso entre camadas deve ser bem limitado, é importante haver também uma rede de gerência com livre acesso a todas as camadas mas com controle de entrada bem restritivo, preferencialmente com duplo fator de autenticação e criptografia, como uma VPN interna.

Nas camadas mais expostas, devem ficar os ativos onde temos menos controle sobre o uso. Na intermediária devem ficar os ativos transacionais.  No miolo da rede, área mais bem protegida, devem ficar as “jóias da coroa”, que são as informações da empresa.

O design geral fica assim:

arquitetura2

Rede de Estações de Trabalho: Deve abrigar os desktops, notebooks e o wifi corporativo. É rede interna, mas deve ser considerada hostil (desmilitarizada) por conta do comportamento do usuário. Esta rede fala com a rede de aplicações e com a rede de saída apenas através das portas de serviço. Fala também com a rede de gerência mas mediante duplo fator de autenticação e criptografia, acesso este que deve ser restrito à equipe de Operação de Infraestrutura de TI.

Rede de Web e Saída, ou DMZ: Deve abrigar os proxies de saída para a internet e os proxies reversos para suportar as conexões vindas da internet. Também é rede hostil (desmilitarizada), em função da exposição à internet.

Rede de Aplicações e Serviços: Deve abrigar os servidores de aplicação e middleware, bem como os servidores de serviços como domain controllers, DNS interno, serviços de diretório e mensageria. É rede semi-hostil (semi-militarizada).

Rede de Banco de Dados: Deve abrigar os servidores e clusters de bancos de dados. Só pode ser acessada através da rede de aplicação e pelas portas de banco de dados, ou pela rede de gerência. É a rede que abriga as informações da empresa em formato estruturado e deve ser a mais protegida.

Veja como fica o mapa do tráfego entre as camadas:

trafego

Uma das vantagens deste modelo é poder balancear a energia investida em segurança de host, que é bem complexa, em função do nível de exposição da rede.

Na rede militarizada, onde estão os bancos de dados, o acesso é muito restrito. Usuários externos e internos sequer conseguem fechar uma conexão para alguma máquina dessa rede. Sendo assim, as restrições dentro do sistema operacional e do banco não precisam ser tão rígidas.

Na rede semi-militarizada, acessível apenas pelas portas de serviço e onde estão os servidores de aplicação, se faz necessária uma série de cuidados extras com a configuração dos sistemas operacionais e softwares instalados, bem como cuidado especial com o código dos sistemas que lá residem. Apesar de receber acessos limitados, há a possibilidade de conexão com suas máquinas e os ataques a aplicações são possíveis diretamente.

Já nas redes desmilitarizadas não se pode confiar na segurança perimetral e os cuidados com a configuração dos ativos devem ser extremos.

Veja como fica o balanceamento de segurança de rede versus segurança de host no modelo proposto.

balanco1

Em tempo: é importante notar que estou falando apenas de rede produtiva. Se a empresa que adota esse design possui equipe de desenvolvimento que produz, testa e publica sistemas frequentemente, é essencial acrescentar a esse modelo uma rede de teste isolada, para que os desenvolvedores possam circular nos servidores de teste sem encostar nos ativos de produção e nas informações reais da empresa.

Perceba que nossas casas usam o mesmo conceito de proteção em camadas. Nelas, a rede militarizada é o interior da casa, a semi-militarizada é o quintal e a desmilitarizada é a calçada. Os assaltantes de residência fazem com as casas o mesmo que os atacantes fazem com as redes das empresas. Preferem entrar “junto” com o morador ao invés de arrombar portão, a porta e cofre para atingir seu objetivo.

O modelo é parecido e entendo que vale a pena aprender com o mundo físico novas maneiras de proteger o mundo virtual.

Um abraço e até o próximo post!

Publicado originalmente em Blog Ticiano Benetti

AGRADEÇA AO AUTOR COMPARTILHE!

Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">