Prévia do material em texto
Prova de Software Seguro 9/9 1- Questão: Muito raramente, uma empresa desenvolve todos os componentes de um software. O normal é que utilizem componentes de outras empresas. Em termos de produtividade, faz bastante sentido, mas há o risco de inserir vulnerabilidades no sistema da empresa. Neste sentido, selecione a opção correta com uma forma de reduzir os riscos de inserir vulnerabilidades: A. Utilizar apenas componentes de software com licença comercial. B. Trabalhar apenas com componentes de código aberto. C. Realizar estudos sobre o código-fonte do componente. D. Utilizar qualquer biblioteca com criptografia. E. Utilizar componentes de empresas com boa reputação e com documentação. Resposta correta: E. Utilizar componentes de empresas com boa reputação e com documentação(5. Desenvolvimento de S…). Esta questão aborda o tema de segurança no uso de componentes de terceiros no desenvolvimento de software, enfatizando a importância de escolher componentes de fontes confiáveis. 2- Questão: Apesar de todos os cuidados que possamos ter com um sistema, ainda assim, estamos sujeitos a ataques. É claro que o interesse dos invasores aumenta com a importância dos dados que estamos trabalhando. Nesse sentido, selecione a opção correta que trata sobre uma forma eficiente de evitarmos que um sistema fique indisponível devido a um ataque: A. Utilizar apenas sistemas de empresas conhecidas. B. Aplicar algoritmos de criptografia nos dados. C. Utilizar versões redundantes do sistema. D. Ter um plano conceitual de recuperação de desastres. E. Utilizar versões do sistema de outros fornecedores. Resposta correta: C. Utilizar versões redundantes do sistema(5. Desenvolvimento de S…). 3- Essa questão trata sobre a resiliência de sistemas e como garantir sua disponibilidade mesmo em caso de ataques, sugerindo o uso de versões redundantes para minimizar o impacto. Questão: As normas ISO/IEC são desenvolvidas por especialistas de várias partes do mundo e são reconhecidas internacionalmente. Elas são projetadas para garantir que as empresas estejam seguindo as melhores práticas e cumprindo as regulamentações e requisitos necessários. A respeito das normas relacionadas à segurança da informação e outras que podem ser empregadas para apoio ao desenvolvimento de software seguro, leia as afirmativas e selecione a alternativa mais adequada: I. A família ISO 27000 é um conjunto de padrões internacionais que fornecem diretrizes especificamente para sistemas de software. II. A norma ISO/IEC 15288 é amplamente utilizada na indústria de tecnologia da informação e comunicação (TIC) e fornece uma estrutura para o desenvolvimento, aquisição, operação e manutenção de sistemas, ou seja, para o ciclo de vida de sistemas de software. III. A norma ISO/IEC 20004, da família 20000, que formaliza a inclusão das práticas ITIL, se apoia em duas outras normas ISO para orientar a identificação, seleção e avaliação de potenciais vulnerabilidades em software. Alternativas: A. Apenas I está correta. B. Apenas II está correta. C. Apenas III está correta. D. Apenas I e II estão corretas. E. Todas estão corretas. Resposta correta: B. Apenas II está correta(5. Desenvolvimento de S…). Essa questão aborda o papel das normas ISO/IEC na garantia de boas práticas de segurança da informação e gestão de sistemas no desenvolvimento de software seguro. 4- Questão: Continuous Integration (Integração Contínua) e Continuous Delivery (Entrega Contínua) são práticas de engenharia de software oriundas dos conceitos de Automação e Orquestração, que são pilares fundamentais para as abordagens DevOps e DevSecOps. Qual é a diferença entre Continuous Integration (Integração Contínua) e Continuous Delivery (Entrega Contínua)? Alternativas: A. A Integração Contínua foca na entrega confiável e automatizada de software, enquanto a Entrega Contínua concentra-se na automação do processo de compilação e teste. B. A Integração Contínua é um componente fundamental da Entrega Contínua, mas se concentra na entrega frequente de alterações de código. C. A Integração Contínua é uma prática de engenharia de software, enquanto a Entrega Contínua é uma técnica de automação. D. A Integração Contínua visa a colaboração entre os membros da equipe de desenvolvimento, enquanto a Entrega Contínua foca na colaboração entre desenvolvimento e operações. E. A Integração Contínua é um componente fundamental da Entrega Contínua, mas se concentra na colaboração entre as equipes de desenvolvimento e operações. Resposta correta: B. A Integração Contínua é um componente fundamental da Entrega Contínua, mas se concentra na entrega frequente de alterações de código (5. Desenvolvimento de S…). Essa questão destaca a diferença entre essas duas práticas fundamentais para o desenvolvimento ágil e seguro no contexto de DevOps e DevSecOps. 5- Questão: Os sistemas atuais envolvem diversas configurações. Isso torna o processo de desenvolvimento mais complexo e, assim, aumenta as chances de que existam vulnerabilidades no código. Neste sentido, selecione a opção correta que apresenta a forma correta de reduzir as vulnerabilidades causadas por configurações inadequadas: Alternativas: A. Utilizar configurações padrões de fábrica. B. Deixar que os desenvolvedores aprendam por si mesmos como realizar as configurações ideais. C. Treinar responsáveis para fazer as configurações dos componentes. D. Ignorar o processo de configuração e focar apenas no desenvolvimento do software. E. Autorizar todos os desenvolvedores a fazer qualquer configuração necessária para garantir que o software seja seguro. Resposta correta: C. Treinar responsáveis para fazer as configurações dos componentes(Prova AV Desenvolviment…)(Prova AV Desenvolviment…). Essa questão foca na importância da configuração adequada dos sistemas para evitar vulnerabilidades durante o desenvolvimento de software. 6- Questão: O controle de permissões, normalmente, é referenciado como uma boa prática que auxilia nas reduções de vulnerabilidades. Na prática, porém, ela pode oferecer alguns desafios. Nesse sentido, selecione a opção correta que contém uma possível vulnerabilidade associada ao controle de permissões: Alternativas: A. Aplicar a política do privilégio mínimo. B. Associar as permissões aos perfis dos usuários. C. Fazer configurações inadequadas. D. Restringir acesso aos dados. E. Usar certificados digitais. Resposta correta: C. Fazer configurações inadequadas(5. Desenvolvimento de S…). Essa questão aborda como as configurações inadequadas no controle de permissões podem ser uma fonte de vulnerabilidades, mesmo quando essa prática é geralmente recomendada como medida de segurança. 7- Questão: Existem diversas fontes de informação que descrevem as vulnerabilidades de segurança de um software. Um exemplo de fonte de informação é a OWASP. Neste sentido, selecione a opção correta a respeito da afirmação: "Um invasor pode utilizar uma fonte oficial de informação para aprender a explorar vulnerabilidades de um software". Alternativas: A. Está errada, pois essas fontes não fornecem muitos detalhes sobre as vulnerabilidades. B. Está correta, pois um invasor pode usar um conhecimento para explorar sistemas vulneráveis. C. Está errada, pois essas fontes são explícitas sobre as consequências de usar um conhecimento que elas fornecem de forma indevida. D. Está correta, pois o objetivo dessas fontes é que os sistemas vulneráveis sofram as consequências do mau gerenciamento. E. Está correta, pois é natural que após aprender sobre as vulnerabilidades de um software, um indivíduo passe a explorá-las. Resposta correta: B. Está correta, pois um invasor pode usar um conhecimento para explorar sistemas vulneráveis(5. Desenvolvimento de S…). Essa questão destaca como informações sobre vulnerabilidades,fornecidas por fontes como a OWASP, podem ser usadas tanto para corrigir falhas quanto para serem exploradas por invasores. 8- Questão: Em uma recente reunião de equipe de TI, o CTO mencionou a adoção da prática de DevSecOps para melhorar o processo de desenvolvimento de software. Isso levantou questões sobre as possíveis vantagens desta abordagem. Qual o benefício, entre as opções a seguir, do DevSecOps no desenvolvimento de software? Alternativas: A. Aumento dos custos de reparação e correção de danos. B. Redução da transparência do projeto. C. Melhoria da qualidade do software. D. Aumento da conformidade regulatória. E. Diminuição da resiliência do sistema. Resposta correta: C. Melhoria da qualidade do software(5. Desenvolvimento de S…). Essa questão foca nos benefícios da prática de DevSecOps, com destaque para a melhoria da qualidade do software ao integrar segurança ao longo de todo o ciclo de desenvolvimento. 9- Questão: Apesar de todos os cuidados que possamos ter com um sistema, ainda assim, estamos sujeitos a ataques. É claro que o interesse dos invasores aumenta com a importância dos dados que estamos trabalhando. Nesse sentido, selecione a opção correta que trata sobre uma forma eficiente de evitarmos que um sistema fique indisponível devido a um ataque: Alternativas: A. Utilizar apenas sistemas de empresas conhecidas. B. Aplicar algoritmos de criptografia nos dados. C. Utilizar versões redundantes do sistema. D. Ter um plano conceitual de recuperação de desastres. E. Utilizar versões do sistema de outros fornecedores. Resposta correta: C. Utilizar versões redundantes do sistema(5. Desenvolvimento de S…). Essa questão destaca a importância de resiliência e redundância no desenvolvimento de sistemas para garantir que, mesmo em caso de ataque, o sistema permaneça disponível.