Configurar componentes corretamente
Objetivos de aprendizagem
Após concluir esta unidade, você estará apto a:
- Descrever a importância da devida configuração dos componentes.
- Descrever a função dos engenheiros de segurança de aplicativos na minimização do possível impacto de uma configuração de segurança incorreta.
Configurar os componentes corretamente
Além de validar, higienizar, testar e analisar código, os engenheiros de segurança de aplicativos protegem o SDLC evitando erros de configuração de segurança. Os erros de configuração de segurança incluem falha na configuração, na aplicação de patch e no upgrade seguro de sistemas operacionais, estruturas de código, bibliotecas e aplicativos.
São exemplos a implantação de um sistema operacional com uma configuração padrão insegura, buckets de armazenamento na nuvem abertos para visualização pública ou falha na configuração correta de mensagens de erro que podem expor informações de sistemas confidenciais a invasores.
Isso dá aos invasores acesso não autorizado a dados ou funcionalidades do sistema. Os invasores podem explorar facilmente os erros de configuração de segurança, um problema bastante comum. Eles normalmente conhecem falhas de segurança sem patch e credenciais de conta padrão e as usam para obter acesso não autorizado à empresa e aos dados de seus clientes.
Proteger contra erros de configuração de segurança
Imagine um cliente que acabou de comprar um novo smartphone. Ao ligar o telefone pela primeira vez, o cliente ajusta as configurações para ter certeza de que tudo está como ele quer. Ele pode configurar um PIN pessoal ou usar impressão digital para entrar no celular. Ele baixa e atualiza novo software para usar os aplicativos mais recentes. Ele exclui aplicativos padrão que não costuma usar e muda o idioma, a hora e o fundo de tela do celular.
Assim como um cliente ajusta as configurações para deixar o celular de acordo com suas preferências, um engenheiro de segurança de aplicativos trabalha com a equipe de desenvolvimento para ajustar as configurações dos componentes do aplicativo a fim de garantir que eles funcionarão corretamente.
Os engenheiros eliminam contas e senhas padrão. Eles trabalham com as equipes de desenvolvimento e operações para ter certeza de que o software usado pelo aplicativo está atualizado e tem os devidos patches. Eles analisam se as permissões nos serviços de nuvem foram devidamente configuradas para que os dados confidenciais não possam ser visualizados pelo público sem querer. Eles desabilitam ou desinstalam recursos desnecessários, por exemplo, portas, serviços e páginas, pois um invasor pode usá-los para ter acesso ao aplicativo.
Com isso, os engenheiros de segurança de aplicativos garantem o seguinte:
- A organização usa um processo de configuração de segurança de aplicativo combinado que pode ser repetido.
- As equipes de desenvolvimento usam ambientes idênticos de desenvolvimento, garantia de qualidade (QA/GC) e produção para manter a consistência entre o ambiente em que houve desenvolvimento e teste do aplicativo e o ambiente em que ele é implantado.
- A automação da verificação e do teste das configurações para reduzir erro humano e melhorar a velocidade e a eficiência do processo de desenvolvimento.
Para saber mais sobre testes em gerenciamento de configurações, consulte o recurso OWASP, que oferece muitos outros detalhes.
Resumo
Você viu estratégias que ajudam a fortalecer a pilha do aplicativo com a padronização e a proteção das configurações. Agora é hora de saber mais sobre outra consideração essencial para engenheiros de segurança de aplicativos: proteger a autenticação e o acesso de um aplicativo.