domingo, 3 de julho de 2011

Alinhando as expectativas

Você pode tentar ler esse post isoladamente, mas estou escrevendo mantendo uma certa ordem. Recomendo a leitura do post anterior para que esse conteúdo faça mais sentido.

Seguindo a diante no plano de segurança, agora que temos uma noção dos nossos ativos, temos que estabelecer qual nossa expectativa sobre os níveis de segurança que coexistirão em nosso ambiente.

Em paralelo, temos que rever os pré-requisitos dos níveis de segurança que vamos estipular.

Para termos uma referência mais palpável, vamos assumir que nosso ambiente mapeado possui os seguintes ambientes:
  • Produção*;
  • Homologação;
  • Desenvolvimento interno;
  • Desenvolvimento externo;
  • Corporativo (estações de trabalho).
Vamos assumir também que possuímos apenas três níveis de ativos:
  • Alto valor;
  • Médio valor;
  • Baixo valor.
Nesse caso, pode passar desapercebido, mas não conseguiremos implementar diferentes níveis de segurança se não segregarmos os ativos em ambientes distintos, cada um correspondendo as expectativas de segurança do seu nível. Esses ambientes precisam ser independentes e com nível mínimo de integração entre eles, preferencialmente sem qualquer tipo de integração.

Assim, no nosso exemplo teremos três ambientes de produção, um para cada nível de ativo, cada um com diferentes expectativas de segurança e assim sucessivamente para os demais ambientes.

Detalhando as expectativas de segurança

Produção, Alto Valor
  • Backup
Backups frequentes, com longos períodos de retenção. Deve ser executado regularmente o teste de restauração (restore) automatizado garantindo que o dado que foi enviado para backup foi restituído.

Para atingir esse objetivo todo backup deve gerar um código de controle (hash) dos dados enviados para fita, para que durante o teste de restauração automatizado esse código de controle possa ser facilmente revalidado por meio de ferramentas e sem intervenção humana, garantindo-se assim a capacidade de escala.

Além disso, deve-se garantir que a informação esteja em um estado integro antes de ser enviada para fita, pois se esse cuidado não for tomado, quando o ambiente for restaurado, há um chance dele não voltar ao estado operacional. Esse problema é comumente enfrentado em backups de banco de dados. Enquanto os dados estão sendo copiados para fita, partes dos dados estão sendo alteradas pelo sistema em uso, ferindo a integridade da informação que foi enviada para fita.

Para evitar tais problemas de integridade, existem modelos sofisticados de backup, mas eles encarecem substancialmente o custo da operação de backup. De maneira bem resumida, eles copiam os dados em um estado integro para um ambiente paralelo e executam o backup sobre essa "cópia consistente" dos dados.
  • Disponibilidade
Suporte a alta disponibilidade, garantindo que falhas nos equipamentos não impliquem necessariamente em colocar o ativo fora de operação. Via de regra lança-se mão de balanceadores de carga e redundância de interfaces de comunicação para garantir que sempre existirá um caminho até o ativo.
  • Controle de acesso
Controle de acesso ao ativo garantindo que todos os acessos sejam devidamente aprovados e revisados a períodos constantes.


Além disso é preciso que a utilização desses acessos seja devidamente registrada, permitindo que seja avaliado a qualquer tempo o comportamento de um usuário dentro do sistema.

Existem alguns fatores chave para o sucesso do controle de acesso.

Primeiro, centralize ao máximo o processo de autenticação concentrando a senha em um local único na corporação. Isso maximiza a chance dos donos dos acessos criarem senhas fortes, de que eles se lembrem com facilidade da mesma e não a mantenham anotada em lugares ermos. Maximiza também a facilidade de operação e da segurança dessa base de acessos. Tenha em mente apenas que esse passa a ser um dos ativos de maior valor para empresa, pois sem ele o acesso aos demais ativos será impossível.

Segundo, tente associar a autorização a um modelo RBAC. Isso facilitará muito o processo de concessão e revisão dos acessos. Se não for possível atingir esse grau de maturidade, implemente pelo menos um modelo baseado em papeis.

Terceiro, garanta a auditoria dos acessos controlando pelo menos o momento de entrada e saída com e sem sucesso para todos os ativos desse ambiente. O que nos leva ao próximo item, o servidor de logs.
  • Log Server
Concentre os logs dos ativos em um servidor dedicado a essa função. Assim, garante-se a integridade das informações, bem como se otimiza as atividades operacionais comuns aos logs, como rotação periódica, gerenciamento da área de armazenamento, correlação de eventos e investigações de incidentes.
  • Hardening
Além dos pontos já apresentados, é importante estabelecer um conjunto de configurações e características mínimas que maximizem a segurança desse ambiente. Esse trabalho é comumente conhecido como hardening. Existem vários modelos de mercado. Minha sugestão é que você escolha poucos itens e comece a implementá-los adicionando novos itens de controle ao longo do tempo, bem como revisando os já existentes.

Muito bonito, mas até agora nossa produção tem todos os controles de "baixo nível", mas ainda não endereçamos os principais itens da produção os sistemas de negócio e seu ciclo de vida.
  • Sistemas
Garanta sua capacidade de controlar o ciclo de vida de seus sistemas. Com isso me refiro ao controle às alterações feitas sobre os sistemas em produção através de processos bem definidos de Gestão de Mudança.

É importante que toda promoção a produção passe pelo escrutínio da Gestão de Mudança para que sejam avaliados os aspectos que garantam a operação e a segurança do sistema. Por exemplo, se o sistema passou com sucesso pelos testes de qualidade (funcional), segurança e carga e se todos os problemas que por ventura foram encontrados encontram-se corrigidos antes da liberação para produção.

No mundo corporativo, aspectos como "time to market" não podem ser ignorados, assim é muito importante se definir o processo de formalização e aceitação de riscos, caso persistam problemas sem correção e ainda sim seja necessário se promover o sistema imaturo para produção.

Para que os riscos não se potencializem, é necessário que os sistemas incluam em sua entrega toda documentação necessária para sua instalação e operação, visando garantir que a solução seja adequadamente configurada e operada garantindo sua segurança. Nessa documentação devem obrigatoriamente constar os passos para remoção de contas padrão da aplicação, remoção de privilégios desnecessários pós-implantação etc.

Conclusão
Apenas pelos aspectos apresentados até aqui, você deve ter percebido que esse nível de ambiente tem um custo bastante expressivo, fazendo sentido apenas para ativos que requeiram tal nível de operação e segurança.

Esse post já ficou grande demais, numa próxima oportunidade discorrerei sobre os outros ambientes de produção (Produção, Médio Valor - Produção, Baixo Valor) seguido dos demais ambientes. Até a próxima!

Nenhum comentário:

Postar um comentário