Caso o líder constate que os membros da equipe têm nível ins...

Próximas questões
Com base no mesmo assunto
Q65130 Segurança da Informação
Uma equipe de desenvolvimento de software recebeu a
incumbência de desenvolver um sistema com as características
apresentadas a seguir.

* O sistema deverá ser integrado, interoperável, portável e
seguro.
* O sistema deverá apoiar tanto o processamento online, quanto
o suporte a decisão e gestão de conteúdos.
* O sistema deverá ser embasado na plataforma JEE (Java
enterprise edition
) v.6, envolvendo servlets, JSP (Java server
pages
), Ajax, JSF (Java server faces) 2.0, Hibernate 3.5, SOA
e web services.

O líder da equipe iniciou, então, um extenso processo de
coleta de dados com o objetivo de identificar as condições
limitantes da solução a ser desenvolvida e tomar decisões
arquiteturais e tecnológicas que impactarão várias características
funcionais e não funcionais do sistema, ao longo de seu ciclo de
vida. A partir dessa coleta, o líder deverá apresentar à equipe um
conjunto de informações e de decisões.

A respeito de práticas e técnicas de programação para desenvolver
com segurança o sistema integrado referido no texto, julgue os
próximos itens.

Caso o líder constate que os membros da equipe têm nível insuficiente de conhecimento acerca de programação segura, será correto ele determinar como prática geral de segurança que se use assinatura digital em todos os códigos produzidos durante o desenvolvimento do sistema, especialmente nos applets e nas aplicações distribuídas que usam o modelo Java web start. Nessa situação, o uso de assinatura digital evitará que vulnerabilidades presentes no código produzido pela equipe sejam exploradas indevidamente quando o código for executado na plataforma do cliente.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta para a questão é E - errado.

Vamos entender cada ponto abordado e justificar a correta avaliação da alternativa:

Tema da Questão: A questão trata de práticas e técnicas de programação para desenvolver um sistema integrado com segurança. Mais especificamente, aborda a utilização de assinatura digital como uma prática geral de segurança no desenvolvimento de sistemas.

Assinatura Digital: Uma assinatura digital é um mecanismo de segurança que garante a autenticidade e a integridade de um código ou documento, confirmando que ele foi criado por uma fonte confiável e não foi alterado.

Análise da Alternativa: A questão sugere que a assinatura digital pode ser utilizada para evitar que vulnerabilidades presentes no código sejam exploradas indevidamente. Vamos analisar isso em detalhes:

1. Função da Assinatura Digital: A assinatura digital é extremamente importante para garantir a autenticidade e integridade do código, ou seja, para assegurar que o código realmente foi produzido por um desenvolvedor autorizado e que não sofreu alterações após ser assinado. Isso é crucial em ambientes onde a segurança é prioritária.

2. Limitações da Assinatura Digital: No entanto, a assinatura digital por si só não resolve problemas de vulnerabilidades no código. Se o código assinado contiver falhas de segurança, a assinatura digital não impedirá que essas vulnerabilidades sejam exploradas. Ela apenas garante que o código é autêntico e não foi alterado desde que foi assinado. A segurança contra vulnerabilidades requer boas práticas de programação, revisões de código, testes e auditorias de segurança.

Conclusão: Dado que a assinatura digital não elimina vulnerabilidades no código, mas apenas autentica a origem e integridade do código, a afirmação na questão está incorreta. Portanto, a alternativa correta é E - errado.

Dica Importante: Para desenvolver sistemas seguros, é essencial combinar várias práticas de segurança, como:

  • Programação segura
  • Revisões de código
  • Testes de segurança (como testes de penetração)
  • Uso de ferramentas de análise estática e dinâmica
  • Políticas de segurança e treinamento contínuo para a equipe

Espero que esta explicação tenha sido clara e ajude você a entender melhor a importância e as limitações da assinatura digital no contexto do desenvolvimento de sistemas seguros.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

A assinatura digital tem como função a integridade, pois ao gerar a assinatura com uma função hash, qualquer modificação no código da aplicação assinada invalida o hash.
"Evitará que vulnerabilidades presentes no código produzido pela equipe sejam exploradas indevidamente".  Isto não tem nada haver com assinatura digital.

Viagem na maionese !!

Uma applet por padrão não pode, por exemplo, acessar recursos da máquina do usuário (o que é chamado de sandbox), logicamente por questões de segurança. O que permite a uma applet realizar este tipo de acesso e vários outros é justamente esta applet ser assinada digitalmente. Logo, se uma applet possuir alguma vulnerabilidade e for assinada digitalmente poderá ser utilizada para atacar a máquina do cliente final.

Se o sujeito estivesse preocupado com garantia de autoria do código...


Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo