Design para proteger a disponibilidade
Impeça ou minimize o tempo de inatividade e a degradação do sistema e da carga de trabalho no caso de um incidente de segurança usando controles de segurança fortes. Você deve manter a integridade dos dados durante o incidente e após a recuperação do sistema. |
---|
Você precisa equilibrar as opções de arquitetura de disponibilidade com as opções de arquitetura de segurança. O sistema deve ter garantias de disponibilidade para assegurar que os utilizadores têm acesso aos dados e que os dados são acessíveis. Do ponto de vista da segurança, os utilizadores devem operar dentro do âmbito de acesso permitido e os dados devem ser fiáveis. Os controles de segurança devem bloquear os agentes mal-intencionados, mas não devem bloquear o acesso de usuários legítimos ao sistema e aos dados.
Cenário de exemplo
A Contoso Concierge executa um sistema de software de gerenciamento hoteleiro usado em mais de 50 marcas de hotéis nos Estados Unidos. É responsável pela reserva, check-in do hóspede e rastreia os serviços ao hóspede e a equipe de limpeza. É um sistema baseado em nuvem que funciona em duas regiões nos Estados Unidos. Ele é hospedado principalmente em conjuntos de escala de máquina virtual. Os clientes nos hotéis são baseados em navegador.
Melhore a fiabilidade através de uma segurança robusta
Use controles de segurança e padrões de design para evitar que ataques e falhas de código causem esgotamento de recursos e bloqueiem o acesso.
A adoção dessa abordagem ajuda a garantir que o sistema não sofra tempo de inatividade causado por ações maliciosas, como ataques distribuídos de negação de serviço (DDoS).
O desafio da Contoso
- A equipe de carga de trabalho e as partes interessadas da carga de trabalho consideram a confiabilidade desse sistema de extrema importância, porque muitos hóspedes do hotel dependem dele para viagens de negócios e lazer. Deve caber aos hotéis gerir os seus negócios.
- A equipe investiu recursos consideráveis no teste de requisitos funcionais e não funcionais para garantir que a confiabilidade permaneça alta, incluindo o uso de práticas de implantação seguras para liberar atualizações de aplicativos de forma confiável.
- Embora tenham estado fortemente focados na fiabilidade, a equipa tem estado menos atenta à segurança. Recentemente, foi lançada uma atualização que continha uma falha de código que foi explorada por um invasor para derrubar todo o sistema de muitos hotéis. O ataque sobrecarregou os servidores de aplicativos em uma região por mais de quatro horas em uma noite, causando problemas para clientes e hóspedes do hotel.
- O invasor usou os servidores de aplicativos da Contoso para fazer proxy de solicitações para uma conta de armazenamento regional para receber informações de fólio pré-geradas. Um fólio mal-intencionado excessivamente grande foi gerado, o que fez com que os servidores de aplicativos esgotassem os recursos no servidor de aplicativos à medida que ele estava sendo carregado na memória, e as repetições do cliente espalharam o problema por todos os servidores de aplicativos.
Aplicação da abordagem e dos resultados
- A equipe analisou um padrão de design para remover seus servidores de aplicativos do fluxo de solicitação do fólio, optando por uma abordagem de chave de manobrista. Embora isso não tivesse evitado o problema, teria isolado o impacto.
- Eles também adicionaram mais validação de entrada no sistema para limpar a entrada, o que ajudará a evitar tentativas maliciosas como essa no futuro.
- Agora, com a higienização dos insumos e um design reforçado, um tipo de risco foi mitigado.
Limitar proativamente vetores de ataque
Implemente medidas preventivas para vetores de ataque que explorem vulnerabilidades no código do aplicativo, protocolos de rede, sistemas de identidade, proteção contra malware e outras áreas.
Implemente scanners de código, aplique os patches de segurança mais recentes, atualize o software e proteja seu sistema com antimalware eficaz continuamente. Isso ajuda a reduzir a superfície de ataque para garantir a continuidade dos negócios.
O desafio da Contoso
- As VMs usadas para hospedar o sistema são imagens do Azure Marketplace com o sistema operacional Ubuntu mais recente. Os processos de inicialização para uma VM configuram alguns certificados, ajustam algumas configurações SSH e instalam o código do aplicativo, mas nenhuma ferramenta antimalware é empregada.
- Embora o Gateway de Aplicativo do Azure esteja à frente da solução, ele é usado apenas como um gateway da Internet; a função de firewall de aplicativo da Web (WAF) não está habilitada atualmente.
- Ambas as opções de configuração deixam o ambiente de computação desprotegido contra vulnerabilidades no código ou através da instalação não intencional de malware.
Aplicação da abordagem e dos resultados
- Depois de consultar a equipe de segurança da Contoso, as máquinas virtuais agora estão inscritas em uma solução antivírus gerenciada pela empresa.
- A equipe também decide habilitar e ajustar a função WAF para ajudar a proteger o código do aplicativo, eliminando solicitações arriscadas conhecidas, como tentativas de injeção de SQL, no nível do gateway.
- O aplicativo e a plataforma de aplicativos agora têm defesa adicional em profundidade, para ajudar a proteger contra exploits que podem afetar a disponibilidade do sistema.
Proteja sua estratégia de recuperação
Aplique pelo menos o mesmo nível de rigor de segurança em seus recursos e processos de recuperação que aplica no ambiente principal, incluindo controles de segurança e frequência de backup.
Você deve ter um estado seguro preservado do sistema disponível na recuperação de desastres. Se o fizer, pode efetuar o failover para um sistema ou local secundário seguro e restaurar backups que não introduzam uma ameaça.
Um processo bem projetado pode evitar que um incidente de segurança atrapalhe o processo de recuperação. Dados de backup corrompidos ou dados criptografados que não podem ser decifrados podem retardar a recuperação.
O desafio da Contoso
- Embora o sistema funcione como ativo-ativo entre regiões, a equipe tem um plano de recuperação de desastres em vigor para ajudar a restaurar a continuidade dos negócios na pior das hipóteses.
- Parte desse plano inclui o envio de backups para uma terceira região nos EUA.
- Infelizmente, os backups estavam chegando em um sistema que não era monitorado com frequência e tinha controles de segurança relativamente frouxos. Durante um exercício, eles perceberam que todos os backups foram infetados com malware. Se eles tivessem um desastre real naquele momento, eles não teriam sido capazes de se recuperar com sucesso.
Aplicação da abordagem e dos resultados
- A equipe investiu tempo e esforço para proteger o local de backup, adicionando controles adicionais de rede e identidade para proteger os dados. Os backups agora também são armazenados em armazenamento imutável para evitar adulterações.
- Depois de analisar seus controles de segurança, a equipe descobre que, durante o processo de recuperação, o aplicativo é executado sem um WAF por um período de tempo. Eles mudam a ordem das operações para fechar essa lacuna.
- Agora, a equipe está confiante de que os backups e o processo de recuperação do sistema não são mais um vetor de ataque fácil de explorar.