Escolar Documentos
Profissional Documentos
Cultura Documentos
SUMÁRIO
1. Objetivo...........................................................................................................................................................2
2. Público-alvo.....................................................................................................................................................2
3. Responsabilidades ..........................................................................................................................................2
4. Regras..............................................................................................................................................................2
4.1. Regras Gerais...........................................................................................................................................2
4.2. Certificados .............................................................................................................................................3
4.3. Plug-in......................................................................................................................................................3
4.4. Codificação ..............................................................................................................................................4
4.5. Autenticação e gerenciamento de sessão..............................................................................................5
4.6. Upload de arquivos.................................................................................................................................5
4.7. Configuração de parâmetro de segurança.............................................................................................5
4.8. Métodos HTTP.........................................................................................................................................6
4.9. Configuração de respostas dos servidores:............................................................................................7
4.10. Infraestrutura......................................................................................................................................7
4.11. Aplicação .............................................................................................................................................7
4.12. Referência a objetos (arquivos)..........................................................................................................8
5. Documentos Relacionados .............................................................................................................................8
6. Penalidades.....................................................................................................................................................8
7. Glossário..........................................................................................................................................................8
1
Política de Desenvolvimento Seguro
1. Objetivo
2. Público-alvo
As diretrizes desta política se aplicam a todos os desenvolvedores que atuam no processo de
desenvolvimento e manutenção das aplicações da Dock, sejam estes colaboradores, terceiros ou
fornecedores.
3. Responsabilidades
4. Regras
2
Política de Desenvolvimento Seguro
• O código fonte deve ser revisado por outro colaborador ou terceiro que possua conhecimento
nas técnicas de desenvolvimento seguro aqui descritas antes de se tornar produtivo (entrar em
ambiente de Produção);
• As correções devem ser implantadas antes que a aplicação se torne produtiva (entrar em
ambiente de Produção);
• Devem existir dois ambientes segregados, um para Desenvolvimento/Homologação e outro para
Produção;
• Devem existir duas equipes diferentes, uma para atuar em Desenvolvimento/Homologação
e outra para atuar em Produção;
• Os ambientes de Desenvolvimento/Homologação não devem se comunicar com o ambiente de
Produção;
• Dados produtivos não podem ser utilizados como massa de testes, sejam os testes feitos em
ambiente de Desenvolvimento ou em ambiente de Homologação;
• Os responsáveis pelo desenvolvimento da aplicação não podem homologar a mesma,
devendo ser feita por outros colaboradores ou terceiros.
4.2. Certificados
• Os certificados digitais das aplicações que forem expostas à Internet devem possuir um
Emissor reconhecido (Ex.: VeriSign, CertiSign e etc.);
• Os certificados digitais devem ser válidos, sendo atualizados periodicamente para que não
haja problemas na conexão do Cliente;
• Os certificados digitais devem possuir o correto nome de domínio para que não haja
problemas na conexão do Cliente;
• Utilizar certificados internos apenas para aplicações de uso interno que tenham como
usuários apenas os funcionários da Dock;
• Caso seja utilizada uma CA interna, é necessário exportar e instalar no browser do usuário
a árvore toda do certificado digital, para que não haja problemas na conexão do Cliente.
4.3. Plug-in
• Utilizar ofuscadores de código para evitar que pessoas mal-intencionadas possam realizar
a engenharia reversa e ter acesso ao código fonte;
• Não utilizar comentários no código fonte para explicar o funcionamento do mesmo ou da
aplicação. Esta informação deve estar contida na documentação da aplicação, externa ao
código fonte;
• Adotar o uso de plataformas para inspeção contínua da qualidade do código (por exemplo,
SonarQube), para executar revisões automáticas com análise estática do código para detectar
bugs e vulnerabilidades de segurança em diversas linguagens de programação.
• Para a publicação do aplicativo em produção garantir que todas as configurações de debug foram
removidas (por exemplo, mensagens de erros, logs e etc).
3
Política de Desenvolvimento Seguro
4
Política de Desenvolvimento Seguro
de segurança MASVS-L2, como autenticação de dois fatores, por motivos de usabilidade, mas
tem uma forte necessidade comercial de prevenção de adulteração.
• Utilizar metodologias de testagem de segurança das aplicações (SAST e DAST), para identificar de
forma ágil e eficiente vulnerabilidades que podem tornar uma aplicação suscetível a ataques.
• Interfaces administrativas não devem estar expostas à Internet, caso seja necessário,
estas devem ter seu acesso restrito;
• Não utilizar usuários que remetam ao nome da Dock e suas afiliadas, pois estes serão
inseridos em dicionários de logins privativos para invasão dos sistemas;
• O uso de contas de serviço para acessos da aplicação na busca de informações é permitido, desde
que respeite o processo de dupla custódia informado na Política de Identidade e Gestão de
Acessos;
• A aplicação deve retornar a mesma resposta tanto para quando o usuário é válido e a senha foi
inserida incorretamente, quanto para quando o usuário é inexistente, para evitar a
enumeração de usuários;
• As informações de autenticação devem utilizar criptografia adicional ao SSL;
• Definir o parâmetro “autocomplete=off” nos formulários e campos de login e senha, para
evitar que o browser salve as informações de autenticação do usuário;
• Caso a funcionalidade de recuperação de senha utilize perguntas secretas, estas devem ser
definidas para que apenas o usuário saiba a resposta, não sendo de fácil adivinhação ou
descoberta através de pesquisa sobre o usuário;
• Caso a funcionalidade de recuperação de senha envie um e-mail ao usuário com um link para a
troca da senha, este link deve possuir um token que o torne válido uma única vez. • Implementar
rotinas de gerenciamento de sessão por inatividade, garantir que as sessões são invalidadas no
back-end após um período mínimo de inatividade.
• Deve-se restringir o upload de arquivos apenas à extensão necessária para a aplicação, sendo
exibida uma mensagem de erro caso o usuário tente realizar o upload de arquivos com
extensões não permitidas;
• A requisição de upload de arquivo deve ser única, para que não possa ser reaproveitada para
envio de arquivos em massa por um atacante, causando um DoS (Denial of Service).
5
Política de Desenvolvimento Seguro
• Os seguintes cabeçalhos de resposta devem ser removidos para não serem enviados ao cliente: o
Server;
o X-Powered-By;
o E-Tag;
o X-AspNet-Version (no caso de ASP.NET);
o X-AspNetMvc-Version (no caso de ASP.NET);
• Os seguintes parâmetros de segurança devem ser configurados em todos “set-Cookie”: o
Secure;
o HttpOnly;
o path=/.
• Os seguintes métodos HTTP devem ser desabilitados dos Web Servers, não permitindo
que sejam utilizados por usuários mal-intencionados:
o OPTIONS;
o TRACE;
o PUT;
o DELETE;
o CONNECT (caso aplicável);
o PARCH (caso aplicável);
• Caso haja a necessidade de utilização dos métodos PUT/DELETE, deve-se aplicar controles
para restringir apenas aos usuários que necessitam tal permissão;
• Deve-se utilizar o método POST para requisições que trafeguem informações
consideradas sensíveis, devido ao fato do método GET gerar cache e histórico.
6
Política de Desenvolvimento Seguro
• Para evitar o ataque chamado directory listing (listagem de diretórios), onde o atacante mapeia
toda a aplicação, identificando os diretórios existentes, é necessário configurar a resposta que
os servidores retornarão ao cliente;
• Quando um usuário tentar acessar um diretório ao qual ele não possui permissão, a aplicação
deve responder com um “404 Not Found” ao invés de “403 Forbidden”, impedindo, assim, que
um atacante possa diferenciar os diretórios existentes dos não existentes.
4.10. Infraestrutura
• Restringir o acesso a portas administrativas, dentre os quais, mas não se limitando a: Telnet/SSH,
FTP/TFTP e etc.;
• Não utilizar protocolos de comunicação considerados inseguros, dentre os quais, mas não se
limitando a: FTP, Telnet e etc.;
• No caso de servidores Linux/Unix, os arquivos “shadow” e “passwd” devem estar inacessíveis
a partir da rede externa;
• Restringir por usuário ou grupo de usuários os locais de onde os arquivos podem
ser obtidos/salvos para evitar ataques do tipo path traversal;
• Desabilitar o uso de cifras consideradas fracas, como CBC/CBC3, SHA1, DES, RC4; • Utilizar
TLSv1.2 (preferencialmente) para estabelecimento do canal de comunicação SSL; • Quando ocorrer
alguma falha nas conexões TLS, a aplicação não deve fornecer uma conexão insegura. • Utilizar um
firewall de aplicativo da web (WAF) para filtrar, monitorar e bloquear tráfego indesejado.
4.11. Aplicação
• Aplicar política de cross-domain para definir entre quais domínios os dados internos da aplicação
podem ser trafegados;
• Definir adequadamente os perfis de acesso de cada usuário na aplicação, provendo
acesso somente às funcionalidades necessárias;
• Uma vez que o usuário acesse outro site ou efetue o logout do sistema, a sessão deve
ser encerrada, impedindo o reaproveitamento da mesma;
• A sessão do usuário deve estar vinculada a seu IP de origem e, opcionalmente, ao seu user
agent, para evitar ataques do tipo session puzzling (embaralhamento de sessão) ou session
hijacking (roubo de sessão);
• Se a aplicação for acessada por mais de um canal diferente (PC, Mobile e etc.) deve-se
garantir que a autenticação terá o mesmo nível de segurança em todos os canais;
• Os usuários não devem conseguir acessar conteúdo ao qual seu perfil não fornece acesso,
devendo ser retornada uma mensagem de erro personalizada ou redirecionando-o para a
página inicial da aplicação;
• O tempo recomendado de timeout de sessão é de quinze minutos, podendo ser acrescido
mediante aceite de risco;
7
Política de Desenvolvimento Seguro
• A aplicação não deve ter variáveis de sessão expostas, o controle de sessão deve ser feito
via Cookie de sessão;
• Caso haja necessidade de manter requisições que contenham variáveis de sessão, por exemplo
ID de usuário, estas informações devem ser criptografadas.
• O aplicativo deverá remover dados confidenciais das visualizações quando movidos para o
segundo plano, não deve manter dados confidenciais na memória por mais tempo do que o
necessário, limpar a memória explicitamente após o uso, impor uma política mínima de
segurança de acesso ao dispositivo (por exemplo: exigir que o usuário defina uma senha de
dispositivo), educar o usuário sobre os tipos de informações de identificação pessoal
processadas, bem como as melhores práticas de segurança que o usuário deve seguir ao usar o
aplicativo.
• Para aplicativos que utilizem o WebView apenas renderizar JavaScript contido no pacote do
aplicativo.
• Os objetos da aplicação que serão disponibilizados aos usuários devem ser classificados
entre restritos e públicos.
• Os objetos restritos devem ter seu acesso controlado e estar em um diretório separado, com
acesso exclusivo aos usuários do grupo do cliente;
• Deve ser gerado um link único para acesso a estes objetos restritos, devendo ser renovado
a cada requisição para evitar ataques de referência insegura a objetos.
5. Documentos Relacionados
6. Penalidades
As violações a esta política estão sujeitas a sanções disciplinares de acordo com as políticas da Dock e
Legislação Vigente. Distorções estão sujeitas a sanções disciplinares.
7. Glossário