Configuração incorreta de segurança

Segurança A configuração incorreta surge quando as configurações de segurança são definidas, implementadas e mantidas como padrão. Uma boa segurança requer uma configuração segura definida e implementada para o aplicativo, servidor da web, servidor de banco de dados e plataforma. É igualmente importante ter o software atualizado.

Exemplo

Alguns exemplos clássicos de configuração incorreta de segurança são fornecidos -

  • Se a listagem de diretórios não estiver desabilitada no servidor e se o invasor descobrir o mesmo, o invasor pode simplesmente listar os diretórios para encontrar qualquer arquivo e executá-lo. Também é possível obter a base de código real que contém todo o seu código personalizado e, em seguida, encontrar falhas graves no aplicativo.

  • A configuração do servidor de aplicativos permite que os rastreamentos de pilha sejam retornados aos usuários, potencialmente expondo as falhas subjacentes. Os invasores obtêm as informações extras fornecidas pelas mensagens de erro, o que é suficiente para eles penetrarem.

  • Os servidores de aplicativos geralmente vêm com aplicativos de amostra que não são bem protegidos. Se não for removido do servidor de produção, o seu servidor ficará comprometido.

Mãos em

Step 1- Inicie o Webgoat e navegue até a seção de configuração insegura e deixe-nos tentar resolver esse desafio. Um instantâneo do mesmo é fornecido abaixo -

Step 2- Podemos experimentar quantas opções pudermos pensar. Tudo o que precisamos é encontrar a URL do arquivo de configuração e sabemos que os desenvolvedores seguem uma espécie de convenção de nomenclatura para arquivos de configuração. Pode ser qualquer coisa listada abaixo. Geralmente é feito pela técnica de força BRUTE.

  • web.config
  • config
  • appname.config
  • conf

Step 3 - Ao tentar várias opções, descobrimos que 'http://localhost:8080/WebGoat/conf'é bem-sucedido. A página a seguir é exibida se a tentativa for bem-sucedida -

Mecanismos Preventivos

  • Todos os ambientes, como ambientes de desenvolvimento, controle de qualidade e produção, devem ser configurados de forma idêntica, usando senhas diferentes usadas em cada ambiente que não possam ser hackeadas facilmente.

  • Certifique-se de que uma arquitetura de aplicativo forte está sendo adotada, fornecendo separação eficaz e segura entre os componentes.

  • Ele também pode minimizar a possibilidade desse ataque, executando varreduras automatizadas e auditorias periódicas.