BLOG

Como garantir a disponibilidade, integridade e confidencialidade de seus aplicativos

SUMÁRIO EXECUTIVO

Aplicativos sempre ativos, 24 horas por dia, 7 dias por semana, significam exposição constante a ameaças como nunca antes desde o advento da internet. Para empresas que desenvolvem seus próprios aplicativos, seus programadores precisam produzir software como parte de um ciclo de vida de desenvolvimento de software seguro (SDLC) de ponta a ponta. Isso significa focar na redução da superfície de ataque do software, eliminando vulnerabilidades e treinando desenvolvedores para projetar e programar com mais segurança. Veja como garantir a disponibilidade, integridade e confidencialidade dos seus aplicativos.

Miniatura F5
F5
Publicado em 20 de março de 2017

7 MIN. LER

Nas últimas quatro décadas, o software evoluiu. Na época do mainframe, os usuários acessavam programas armazenados centralmente em grandes sistemas multiusuários. Na década de 1990, no entanto, o aplicativo típico vinha em um disco plástico embalado em uma caixa de papelão, era instalado localmente e atualizado apenas raramente.

De certa forma, fechamos o ciclo: os aplicativos estão sendo cada vez mais entregues por meio de uma rede, e os desenvolvedores de aplicativos estão cada vez mais envolvidos em funções operacionais e na proteção dos aplicativos que eles mesmos desenvolvem. Neste mundo sempre ativo de aplicativos como serviço, vulnerabilidades de software podem ser rapidamente exploradas e ataques DDoS simples podem interromper o serviço.

Para empresas que desenvolvem seus próprios aplicativos, seus programadores precisam produzir software como parte de um ciclo de vida de desenvolvimento de software seguro (SDLC) de ponta a ponta. Isso significa focar na redução da superfície de ataque do software, eliminando vulnerabilidades e treinando desenvolvedores para projetar e programar com mais segurança.

Aplicação de controles de acesso e princípios básicos de segurança

Ao mesmo tempo, as empresas também precisam tratar os aplicativos de nuvem como tecnologia operacional que precisa ser gerenciada com segurança. Como os aplicativos em nuvem estão sempre conectados, eles podem ser facilmente atacados, o que torna essencial a identificação e a eliminação oportunas de vulnerabilidades. Para se manterem à frente das ameaças, as empresas devem implantar um processo de gerenciamento de vulnerabilidades que identifique e faça a triagem das vulnerabilidades e possa automatizar rapidamente a correção com um firewall de aplicativo da Web (WAF). Um WAF é um controle crítico de segurança da web que pode dar tempo à empresa ao bloquear um ataque enquanto a equipe de desenvolvimento trabalha para corrigir o código.

Além da discussão típica sobre gerenciamento de vulnerabilidades na segurança de aplicativos, o que mais você deve considerar? Um ponto de partida é definir o controle de acesso correto. A estrutura de autenticação, autorização e contabilidade (AAA) é um guia essencial para garantir que você exija autenticação forte por padrão, usando recursos como SSO e autenticação multifator. Além disso, autorizar usuários com base em um controle de acesso robusto baseado em funções (RBAC), que inclui pelo menos três funções (por exemplo, usuário sem privilégios, usuário privilegiado e administrador), ajuda a reduzir incidentes não intencionais. E, caso ocorra um incidente, garantir que você registre os eventos adequadamente ajudará a obter detalhes importantes para resolução, como qual conta foi usada e de qual sistema ela veio.

Neste mundo sempre ativo, vulnerabilidades de software podem ser rapidamente exploradas.

Junto com a estrutura AAA, analisar a segurança de aplicativos pela ótica dos princípios de segurança da CIA — confidencialidade, integridade e disponibilidade — pode destacar etapas adicionais que as empresas devem tomar para proteger seus aplicativos e manter os serviços em execução.

1. Disponibilidade — Manter as luzes do aplicativo acesas

Com a crescente dependência dos trabalhadores em aplicativos de nuvem, a disponibilidade de serviços de nuvem se tornou crítica para as operações comerciais. Antes apenas um incômodo, os ataques DDoS agora são muito mais capazes de interromper as operações comerciais.

Recomendações:

  • Use serviços de mitigação de DDoS projetados para bloquear ataques na borda da rede. No caso de um ataque, esse sistema pode realmente economizar dinheiro, pois o tráfego não causará cobranças adicionais devido a picos no uso da nuvem.
  • Implementar um processo para gerenciamento de mudanças. Muitas empresas causaram uma interrupção em seus próprios serviços após implementar uma atualização falha em sua infraestrutura.
  • Use um dispositivo de proteção WAF ou DDoS para evitar ataques de camada 7 (nível de aplicativo).

2. Integridade — Garantir que o aplicativo esteja funcionando conforme o esperado

Manter as portas digitais abertas é a primeira tarefa de uma empresa. Manter os bandidos longe é o segundo. As equipes de desenvolvimento e operações precisam criar bases seguras para acesso a todos os seus aplicativos e dados, conforme discutido no AAA acima. Eles também precisam gerenciar o controle de alterações para que alterações não intencionais não façam com que o aplicativo tenha um desempenho que afete a integridade dos dados.

Recomendações:

  • A implementação de ferramentas como WebSafe e WAF limita a capacidade de agentes maliciosos de injetar dados incorretos no aplicativo, protegendo contra uma ampla gama de ameaças para ajudar a reduzir perdas e exposição.
  • Os controles de aplicativos que verificam a integridade dos dados também são uma ótima maneira de monitorar se um dos seus controles upstream falhou.
  • Testes automatizados da configuração do aplicativo podem alertar rapidamente as operações quando alterações defeituosas são implementadas.

3. Confidencialidade — Manter segredos na nuvem

A confidencialidade dos dados precisa ser abordada na coleta, transporte e armazenamento, seja na nuvem ou no local, no seu data center. O gerenciamento de vulnerabilidades, incluindo um WAF, são os principais controles que você deve ter para evitar que uma exploração de aplicativo comprometa seu aplicativo e a confidencialidade dos dados nele contidos. Hoje em dia, não há razão para não usar a tecnologia TLS para criptografar as comunicações entre o usuário e o servidor de aplicativos web. Os dados mantidos na nuvem ou no local também devem ser totalmente criptografados para evitar acesso não autorizado.

Recomendações:

  • Habilitar TLS/SSL por padrão. HTTPS em todos os lugares!
  • Criptografe fortemente dados críticos em repouso, especialmente armazenamentos de credenciais de back-end. Um hash de senha simples não é mais aceitável. No mínimo, um hash mais salt deve ser implementado, ou qualquer mecanismo de criptografia mais forte.
  • Implemente um programa aprofundado de gerenciamento de vulnerabilidades para detectar e selecionar falhas. Para cobrir vulnerabilidades entre implantações de patches, os recursos de patch virtual de um WAF são altamente recomendados.
  • Proteger aplicativos e infraestrutura em nuvem é complexo, mas vê-los através das lentes da AAA e da CIA permite que os profissionais de segurança abordem a disciplina de forma holística e tomem medidas que deem suporte a uma estratégia geral de segurança.

Preston Hogue é o Sr. Diretor de Marketing de Segurança na F5 Networks. Preston é responsável por campanhas de segurança global, evangelismo e liderança inovadora, incluindo a supervisão da equipe de inteligência de ameaças a aplicativos do F5 Labs. Preston tem mais de 20 anos de experiência em segurança da informação, incluindo desenvolvimento, implementação e gerenciamento de programas de segurança complexos, arquitetura de análise e gerenciamento de riscos e implementação de programas para atender a requisitos regulatórios e de conformidade.