

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
A análise estática identifica falhas e vulnerabilidades no código-fonte sem a necessidade de execução do programa, agindo como uma camada preventiva de segurança. No que tange a essa técnica de inspeção, assinale a alternativa correta.
O procedimento de análise estática substitui de forma integral os testes de penetração, pois garante a descoberta de todas as falhas lógicas decorrentes do ambiente de execução real.
As ferramentas de análise estática operam exclusivamente sobre arquivos binários compilados, sendo ineficazes para a análise de scripts desenvolvidos em linguagens de alto nível.
A técnica de análise estática impede que o desenvolvedor envie alterações para o repositório caso o código contenha comentários explicativos, visando reduzir o tamanho dos artefatos.
A análise estática permite detectar vulnerabilidades de segurança, como injeções e estouro de buffer, além de identificar o descumprimento de padrões de codificação definidos pela equipe.
Na análise de vulnerabilidades de software, as técnicas de análise estática de segurança de aplicações (SAST)
realizam testes de invasão com a aplicação em pleno funcionamento no ambiente de produção.
avaliam a segurança física do local onde os servidores da aplicação estão hospedados.
interceptam requisições HTTP entre o navegador e o servidor para manipular parâmetros de entrada.
simulam ataques de negação de serviço para verificar a resiliência da infraestrutura de rede.
examinam o código-fonte ou binário da aplicação sem que haja a execução do software.
Uma aplicação em produção foi comprometida por meio da exploração de uma biblioteca com CVE conhecido, que permite execução remota de código.
O pipeline da aplicação possui SAST durante a fase de desenvolvimento, DAST em ambiente de homologação e, ainda, possui monitoramento em produção. Após investigação, verificou-se que a vulnerabilidade estava em uma dependência indireta, não houve alerta durante o pipeline e a exploração ocorreu imediatamente após o deploy.
Com base nesse contexto, assinale a afirmativa que explica corretamente a falha de detecção.
Ausência de análise de composição de software (SCA) no pipeline para identificação de vulnerabilidades em dependências transitivas.
Limitação do SAST na análise de fluxos dinâmicos de execução da aplicação.
Dependência do DAST de cobertura de testes para identificação de vulnerabilidades exploráveis.
Natureza reativa do monitoramento em produção, voltada à detecção pós-exploração.
Ausência de testes funcionais capazes de exercitar cenários de falha na aplicação.
A programação segura é um conjunto de práticas e princípios que visa reduzir a introdução de vulnerabilidades durante o desenvolvimento de software, cujo objetivo é proteger a aplicação contra ataques. Considerando isso, assinale a alternativa CORRETA sobre boas práticas de programação segura.
A prevenção de injeção de SQL é garantida pelo uso de consultas dinâmicas que concatenam a entrada do usuário.
O princípio do menor privilégio determina que cada módulo, componente ou serviço de uma aplicação deve operar com o conjunto mínimo de permissões necessárias para executar sua função.
A validação de dados de entrada deve ser realizada exclusivamente no lado do cliente (front-end).
A exibição de mensagens de erro detalhadas com stack traces e estrutura do banco ao usuário final é recomendada.
Tokens CSRF protegem aplicações contra ataques de Cross-Site Scripting (XSS), impedindo scripts no navegador.
A equipe de desenvolvimento do Tribunal Regional do Trabalho está trabalhando em um novo produto de software que sera implementado em um ambiente de nuvem. A organização utiliza práticas de DevOps e DevSecOps para acelerar o desenvolvimento e, ao mesmo tempo, melhorar a segurança desde as primeiras fases do ciclo de vida do software. Um dos principais desafios para a equipe é integrar testes de segurança contínuos sem impactar a velocidade de entrega, o que pode ser conseguido
garantindo que a equipe de desenvolvimento seja treinada em práticas de DevSecOps, aplicando na fase de produção, testes IAST (Inferactive Agile Security Testing), que combinam testes FAST e ZAST, usando soffware para monitorar a performance da aplicação.
concentrando-se principalmente em automação de testes de performance e de funcionalidades, com foco em segurança após a fase de homologação, aplicando teste RAST (Rapid Agile Security Testing).
criando uma equipe de segurança separada que realiza auditorias manuais de segurança em intervalos regulares, após cada fase do desenvolvimento.
implementando verificações de segurança apenas na fase final do desenvolvimento, para garantir que todos os testes de segurança sejam realizados apenas uma vez.
adotando a abordagem Shift Left Security e integrando ferramentas automatizadas de segurança diretamente nos pipelines de CI/CD, permitindo que vulnerabilidades sejam detectadas nas primeiras fases do desenvolvimento.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
SAST (static application security testing), DAST (dynamic application security testing) e SCA (software composition analysis) são técnicas de análise do comportamento dinâmico das aplicações em tempo de execução, com a finalidade de garantir que todos os componentes do software sejam seguros e livres de vulnerabilidades.
Certo
Errado
O control flow flattening implementado no firmware pode ser eficientemente revertido por meio de técnicas de análise estática de descompiladores que utilizam algoritmos de reconhecimento de padrões baseados em grafos de fluxo de controle, restaurando o fluxo de execução original sem a necessidade de taint analysis ou execução simbólica.
Certo
Errado
A equipe de desenvolvimento utiliza a ferramenta SonarQube no pipeline de CI/CD para manter a qualidade do código-fonte.
Assinale o principal tipo de análise que o SonarQube realiza no código-fonte, e o seu objetivo primário na cultura de Clean Code
Análise Dinâmica (DAST) para simular ataques e quebrar a segurança interna e externa do sistema.
Análise Estática (SAST) para identificar code smells, dívida técnica, vulnerabilidades e duplicidade, sem executar o código.
Testes de Mutação para validar a eficácia dos testes unitários conduzidos pela equipe de desenvolvimento.
Testes de Performance (Load Testing) para medir a latência da API.
Análise de Cobertura de Testes Exclusivamente no projeto.
A análise estática de código é uma técnica por meio da qual podem ser identificadas vulnerabilidades de segurança em um programa sem a necessidade de executá-lo.
Certo
Errado
Em um ambiente que adota a cultura DevSecOps, a segurança é integrada em todas as fases do Secure SDLC.
Um engenheiro de segurança está automatizando ferramentas para identificar vulnerabilidades. Ele usa uma ferramenta que analisa o código-fonte ou binário sem executá-lo, focando em erros de programação segura e falhas de design, e outra que interage com a aplicação em execução (ambiente de staging ou teste) para encontrar vulnerabilidades como XSS ou SQL Injection.
Assinale a opção que apresenta o termo que define, respectivamente, a análise de segurança que opera sem executar o código-fonte ou binário (focando em padrões inseguros) e a análise de segurança que opera interagindo com a aplicação em tempo de execução.
Análise Manual (MR) e Análise Estática de Código (SAST).
Análise Dinâmica de Código (DAST) e Penetration Testing.
Análise Estática de Código (SAST) e Análise Dinâmica de Código (DAST).
Análise de Composição de Software (SCA) e Análise Estática de Código (SAST).
Análise Dinâmica de Código (DAST) e Análise de Composição de Software (SCA).


Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
No contexto da Qualidade de Software, diferentes abordagens, estratégias e ferramentas são utilizadas para garantir que o produto atenda aos requisitos funcionais e não funcionais, bem como às expectativas dos usuários. Uma ferramenta utilizada para análise estática de código é a
Selenium.
SonarQube.
Jmeter.
Trello.
Jenkins.
Uma empresa de tecnologia está desenvolvendo um novo sistema de gestão financeira baseado em arquitetura web e precisa garantir que sua aplicação esteja protegida contra ameaças comuns, como injeção de código, vazamento de informações e exploração de vulnerabilidades conhecidas. Para isso, a equipe de segurança implementou uma abordagem de desenvolvimento seguro, integrando testes automatizados ao longo do ciclo de vida do software.
A organização avaliou diferentes técnicas de análise e decidiu combinar SAST (Static Application Security Testing), DAST (Dynamic Application Security Testing) e IAST (Interactive Application Security Testing) para aprimorar a detecção e mitigação de vulnerabilidades.
Diante desse cenário, assinale a alternativa que descreve corretamente as diferenças entre SAST, DAST e IAST e como elas contribuem para o desenvolvimento seguro.
O SAST analisa o código-fonte estaticamente antes da execução, identificando falhas estruturais e lógicas; o DAST testa a aplicação em execução, simulando ataques externos; e o IAST combina elementos de ambos, analisando o comportamento da aplicação em tempo real durante sua execução.
O SAST é uma técnica de teste dinâmico que analisa a aplicação em tempo de execução para identificar falhas de segurança exploráveis durante sua execução normal.
O DAST é um método de análise estática que examina o código-fonte da aplicação antes da compilação, permitindo identificar vulnerabilidades sem a necessidade de execução.
O IAST é uma abordagem puramente manual, baseada em testes exploratórios conduzidos por especialistas em segurança para encontrar vulnerabilidades impossíveis de serem detectadas automaticamente.
O SAST e o DAST são métodos equivalentes e podem ser usados de forma intercambiável, pois ambos testam o código-fonte da aplicação antes da sua implantação.
A respeito do método de teste de segurança de aplicações conhecido como SAST, é correto afirmar que
consiste em uma operação de escaneamento de portas de rede abertas (port scan).
é realizado com a aplicação em execução, por meio de um agente de testes embutido na própria aplicação.
requer acesso ao código-fonte.
é um subtipo do método DAST.
inclui o método DAST como seu subtipo.
Considerando técnicas de testes de segurança em aplicações, analise as afirmativas a seguir.
I. SAST (Static Application Security Testing) pode identificar vulnerabilidades de lógica de negócio e falhas de autorização baseadas em contexto de execução, sendo mais efetivo que DAST para detectar quebras de controle de acesso horizontal (IDOR - Insecure Direct Object Reference)
II. IAST (Interactive Application Security Testing) utiliza instrumentação de código para correlacionar entrada de dados com fluxo de execução em runtime, reduzindo falsos positivos em comparação com SAST puro, mas introduzindo overhead de performance que pode inviabilizar uso em ambientes de produção.
III. Fuzzing (Fuzz Testing) é técnica eficaz para identificar vulnerabilidades de corrupção de memória (buffer overflow, use-after-free) em aplicações compiladas, mas tem limitação em detectar falhas de lógica de negócio que requerem sequências específicas de operações válidas.
IV. DAST (Dynamic Application Security Testing) consegue identificar todas as rotas e endpoints de uma API REST automaticamente por meio de spidering, sem necessidade de documentação OpenAPI/Swagger, sendo mais abrangente em cobertura de código que SAST.
Está correto o que se afirma em
I e II, apenas.
I e IV, apenas.
II e III, apenas.
II e IV, apenas.
III e IV, apenas.
Na prática “Produzir Software Bem Protegido” do SSDF (secure software development framework), o NIST incentiva o reúso de credenciais de autenticação entre diferentes ambientes de desenvolvimento para facilitar o acesso dos desenvolvedores e agilizar o processo de integração contínua.
Certo
Errado


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
Uma empresa está modernizando seu processo de desenvolvimento adotando o Azure DevOps e aplicando as diretrizes do Secure Development Lifecycle (SDL). O pipeline de CI/CD foi configurado para incluir SAST usando o SonarQube e DAST com o OWASP ZAP. O objetivo é reduzir falhas de segurança desde a codificação até a execução em ambientes de teste. Em relação ao contexto apresentado, analise as assertivas a seguir:
I. O SAST (SonarQube) deve rodar durante as etapas de build no Azure DevOps, analisando o código-fonte para encontrar vulnerabilidades como injeção de SQL e falhas de autenticação, podendo bloquear a pipeline antes do deploy.
II. O DAST (OWASP ZAP) deve ser executado no ambiente de testes, realizando ataques simulados contra o aplicativo já em execução, detectando problemas como configurações inseguras de HTTP headers e falhas de autorização.
III. O DAST depende de acesso ao código-fonte para localizar vulnerabilidades em tempo de execução.
IV. A execução combinada de SAST e DAST no pipeline cobre vulnerabilidades tanto estáticas (no código) quanto dinâmicas (em runtime), fortalecendo a segurança em múltiplas camadas.
Quais estão corretas?
Apenas l e II.
Apenas II e III.
Apenas IIl e IV.
Apenas I, Il e IV.
I, II, IIl e lV.
Uma equipe de segurança de um tribunal está revisando suas práticas de desenvolvimento de software. Durante uma auditoria interna, identificou-se que os requisitos de segurança das infraestruturas e processos de desenvolvimento não estão formalizados. De acordo com o Secure Software Development Framework (SSDF) versão 1.1, a medida mais alinhada à tarefa PO.1.1 da prática Preparar a Organização (PO), que foca em identificar e documentar todos os requisitos de segurança para as infraestruturas e processos de desenvolvimento de software, é
implementar um plano de comunicação institucional que informe os usuários finais sempre que forem identificadas falhas de segurança em ambientes de produção.
revisar a documentação técnica dos sistemas legados para verificar possíveis falhas estruturais que indiquem a necessidade de modernização ou substituição.
estabelecer diretrizes para que fornecedores compartilhem periodicamente indicadores técnicos e métricas de segurança sobre os produtos entregues.
criar um repositório centralizado contendo as rotinas de backup e restauração dos ambientes de produção, homologação e testes automatizados.
definir políticas para proteger a infraestrutura de desenvolvimento e processos ao longo do ciclo de vida de desenvolvimento de software, incluindo componentes de software de terceiros.
IAST é uma ferramenta de teste de segurança de aplicativos que combina SAST e DAST, com a inserção de agentes no código em execução, para coleta de informações sobre seu comportamento.
Certo
Errado
O SonarQube exige que todo código analisado seja compilado antes da execução da análise estática, mesmo para linguagens interpretadas como Python ou JavaScript.
Certo
Errado
Testes de segurança do tipo SAST envolvem
testes automatizados que escaneiam uma aplicação em execução na busca por vulnerabilidades.
testes automatizados que escaneiam um servidor por portas TCP e UDP abertas.
simulações de ataques de engenharia social.
a análise do código-fonte da aplicação.
o desligamento abrupto da energia elétrica, seguido de religamento, para determinar se os servidores e suas aplicações retornarão automaticamente ao funcionamento em estado estável.