Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 1/11
NÃO PODE FALTAR
MODELOS DE SEGURANÇA NO CICLO DE VIDA DE
DESENVOLVIMENTO DE SOFTWARE
André Lima dos Santos
PRATICAR PARA APRENDER
O custo de crimes cibernéticos continua a aumentar a cada ano. De acordo com
Mani (2018), em um único dia, há cerca de 780.000 registros de dados perdidos
devido a violações de segurança, 33.000 novas mensagens de phishing e 4.000
ataques de ransomwares em todo o mundo.
Muitos dos ataques realizados por cibercriminosos são executados com o uso de
vulnerabilidades de softwares, as quais, geralmente, são erros de programação ou
omissões que deixam aplicativos da web, servidores da web ou sites expostos.
Cabe aos programadores de software criar aplicativos com alto padrão de
segurança para evitar que esses ataques ocorram. Embora proteger um site ou
recurso de rede possa ser uma tarefa difícil, ela se tornou mais fácil graças ao
trabalho realizado pelo The Open Web Application Security Project (OWASP). O
OWASP fornece uma lista abrangente de princípios de design de segurança que os
programadores devem seguir. Isso garantirá que seu aplicativo seja seguro e pode
até reduzir drasticamente o risco de um ataque cibernético bem-sucedido.
Mas o que é a OWASP? Trata-se de uma comunidade on-line que produz
ferramentas, documentação, artigos e tecnologias gratuitas para ajudar as pessoas
a proteger seus sites, aplicativos da web e recursos de rede. Foi fundada por Mark
Curphey, um experiente especialista em segurança da informação, em 2001. Seu
foco principal é a segurança da web, a segurança de aplicativos e a avaliação de
vulnerabilidades.
Fonte: Shutterstock.
Deseja ouvir este material?
Áudio disponível no material digital.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 2/11
Prezado aluno, nesta seção, abordaremos tópicos importantes para o seu
aprendizado, tais como: princípios da segurança de software, desenvolvimento de
aplicações web baseadas em metodologias elaboradas pela OWASP, além de
técnicas de desenvolvimento web seguro.
Você foi convidado a participar do hackathon de uma conhecida empresa de e-
commerce, cujo objetivo é elaborar técnicas de prevenção de segurança. Você foi
escolhido para executar essas tarefas referentes ao módulo de check-out. Você
recebe, então, um documento contendo os cenários relatados a seguir:
1. Cenário 1: um aplicativo usa dados não con�áveis na construção da seguinte
chamada SQL vulnerável: 
String query = "SELECT * FROM accounts WHERE custID = '" +
request.getParameter ("id") + "'";
2. Cenário 2: da mesma forma, a con�ança cega de um aplicativo em estruturas
pode resultar em consultas que ainda são vulneráveis (por exemplo, Hibernate
Query Language – HQL):
Query HQLQuery = session.createQuery ("FROM accounts WHERE custID =
'" + request.getParameter ("id") + "'");
Em ambos os casos, o invasor modi�ca o valor do parâmetro ‘id’ em seu navegador
para enviar: ‘ou‘ 1 ’=’ 1. Por exemplo:
http://example.com/app/accountView?id= 'ou' 1 '=' 1
Isso muda o signi�cado de ambas as consultas para retornar todos os registros da
tabela de contas. Ataques mais perigosos podem modi�car ou excluir dados ou até
mesmo invocar procedimentos armazenados. Sendo assim, você deve:
Elaborar um plano de prevenção de ataque para os cenários relatados.
Desejo a você, aluno, uma excelente jornada de estudos!
CONCEITO-CHAVE
Navegadores se tornaram signi�cativamente mais avançados do que há dez anos.
Junto com esse avanço, surgiram diversos novos recursos de segurança. Os
protocolos de rede que usamos para acessar a Internet também avançaram.
Os navegadores de hoje oferecem um isolamento muito robusto entre sites de
diferentes origens, seguindo uma especi�cação de segurança conhecida como
Same Origin Policy (SOP). Isso signi�ca que o site A não pode ser acessado pelo site
B, mesmo que ambos estejam abertos ao mesmo tempo ou que um esteja
incorporado como um frame dentro do outro.
Os navegadores também aceitam uma nova con�guração de segurança conhecida
como Política de Segurança de Conteúdo (CSP). O CSP permite que o
desenvolvedor de um site especi�que vários níveis de segurança, por exemplo se
os scripts devem ser executados em linha (no HTML). Isso permite que os
desenvolvedores da web protejam ainda mais seus aplicativos contra ameaças
comuns. 
O HTTP, o principal protocolo de envio de tráfego da web, também melhorou do
ponto de vista da segurança. Segundo Mani (2018), o HTTP adotou protocolos
como SSL e TLS, que impõem criptogra�a estrita para todos os dados que trafegam
pela rede. Isso torna os ataques man-in-the-middle muito difíceis de serem
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 3/11
executados com sucesso.
Como resultado desses avanços na segurança do navegador, muitos dos mais
bem-sucedidos fabricantes de hoje estão, na verdade, visando à lógica escrita por
desenvolvedores, que é executada em seus aplicativos da web. Em vez de
direcionar o navegador em si, é muito mais fácil violar totalmente um site
aproveitando os bugs no código do aplicativo. Felizmente para os hackers, os
aplicativos da web hoje são muitas vezes maiores e mais complexos do que os
aplicativos da web do passado.
Hoje em dia, um aplicativo da web bem conhecido pode ter centenas de
dependências de código aberto, integrações com outros sites e vários bancos de
dados de vários tipos e pode ser servido por mais de um servidor da web em mais
de um local. Esses são os tipos de aplicativos da web que você terá mais sucesso
em explorar e nos quais focaremos ao longo desta seção.
Assim como disseram Rather e Bhatnagar (2015), os sites do passado eram
crivados de falhas de segurança (em particular, nos níveis do servidor e da rede). Já
os aplicativos da web modernos trazem uma nova área de superfície para os
invasores, a qual está sendo ativamente explorada. Da mesma forma, os
aplicativos da web do futuro serão mais seguros e os hackers provavelmente
passarão para uma nova superfície de ataque (talvez soquetes RTC ou web, por
exemplo).
A segurança de aplicativos da web trata de proteger a con�dencialidade, a
integridade e a disponibilidade dos ativos da web de uma organização, bem como
a reputação da organização. A solução para a segurança de aplicativos da web é
mais do que tecnologia, pois envolve políticas, procedimentos, leis, pessoas e
práticas. Além disso, a segurança não é um esforço único, mas deve ser um
processo contínuo integrado ao ciclo de vida de desenvolvimento de aplicativos.
A segurança, como outros componentes de aplicativo da web, é mais bem
gerenciada se planejada na fase inicial do ciclo de vida do aplicativo. Essa
estratégia ajudará os gerentes de projeto e os pro�ssionais de segurança a
estabelecer políticas de segurança, conduzir avaliações de riscos e tratar os riscos
potenciais de maneira econômica.
Segundo Al-Fedaghi e Alkandari (2011), o uso de diretrizes de desenvolvimento,
como os elaborados pela OWASP, é essencial para um Ciclo de Vida de
Desenvolvimento de Software (SDLC). Considere os seguintes princípios durante a
modelagem de ameaças de aplicativos e desenvolvimento de aplicativos seguros,
como apresentado no Quadro 1.6:
Quadro 1.6 | Princípios de modelagem
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO…4/11
Defesa em
profundidade
O uso de mecanismos de segurança em camadas aumenta a
segurança do sistema como um todo. A segurança melhora
ao garantir que controles adicionais estejam em vigor
quando os controles em estágios anteriores de segurança do
aplicativo falham. 
Exemplo: um servidor da web está comprometido por uma
vulnerabilidade não revelada anteriormente. Ele tenta se
conectar a outro servidor próximo com a mesma
vulnerabilidade. No entanto, um �rewall bloqueia a
solicitação de saída.
Modelo
positivo de
segurança
Quando possível e prático, uma “lista de permissões” deve
ser usada. Solicitações ou formatos de dados desconhecidos
são veri�cados na lista de permissões se houver a solicitação,
caso contrário os dados são processados normalmente.
Dados ou solicitações que não estão na lista de permissões
são negados. Modelos de segurança positivos também se
aplicam à arquitetura de rede. Hosts ou aplicativos que
empregam listas de permissões são menos suscetíveis a
ataques devido à redução da superfície de ataque. Criar
modelos de segurança positivos para alguns aplicativos pode
ser intratável e inviável.
Exemplo: usar a validação de entrada para garantir que um
parâmetro seja um número inteiro está estabelecendo um
modelo de segurança positivo. Valores não inteiros são
rejeitados.
Falha com
segurança
Em geral, os aplicativos devem ser capazes de lidar com
cenários inde�nidos de maneira segura. Se ocorrer uma
exceção ou falha de software, o processamento da solicitação
deve ser concluído de maneira consistente com uma ação de
negação (ou seja, um caminho de código seguro deve estar
presente e ser usado).
Exemplo: uma solicitação é recebida para promover o
usuário x ao privilégio de administrador. Durante a
veri�cação do usuário x com um provedor de identidade,
ocorre uma exceção. A solicitação não deve ser concluída,
pois o usuário x não foi veri�cado com sucesso.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 5/11
Execute com o
mínimo de
privilégios
O princípio do menor privilégio recomenda que as contas
(incluindo as de aplicativo) tenham o menor privilégio
necessário para executar seus processos de negócios. Isso
abrange direitos do usuário, permissões de recursos, como
limites de CPU, memória, rede e permissões do sistema de
arquivos.
Exemplo: um aplicativo da web se conecta a um banco de
dados para recuperar informações. Ele não precisa de
gravação no banco de dados. A conta do banco de dados
usada pelo servidor da web deve ter apenas acesso
selecionado ao banco de dados, a tabelas e a colunas de que
necessita para realizar seu trabalho.
Design aberto Os componentes seguros são resilientes à análise direta.
Componentes projetados com transparência em mente
fornecem as proteções mais fortes contra ameaças por
serem conhecidos e comprovadamente seguros. “Segurança
através da obscuridade” é o oposto de um design aberto e
implica que as ameaças externas não têm conhecimento dos
controles internos. A escolha de um design aberto ajuda a
garantir que a segurança seja forte por ser claro e aparente.
Exemplo: deixar a chave de casa embaixo do capacho é um
exemplo de segurança na obscuridade. Qualquer pessoa que
levantar o tapete encontrará a chave. Um projeto aberto
pode ser deixar a chave de casa em uma caixa de
combinação de fechadura claramente visível. As pessoas
autorizadas recebem a combinação da caixa de segurança
para recuperar a chave.
Mantenha a
segurança
simples
Em relação ao design aberto, tente manter os controles o
mais simples possível e, ao mesmo tempo, o mais e�caz.
Quanto mais códigos e complexidade um sistema tem, maior
a probabilidade de bugs e de vulnerabilidades no sistema. O
uso de controles claros e concisos reduz o risco por ser
simples de implementar e de utilizar.
Exemplo: desinstalar serviços e softwares não utilizados
reduz a superfície de ataque de um servidor e é um
mecanismo simples para obter maior segurança.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 6/11
Detecte
intrusões
Registre todos os eventos de segurança relevantes.
Estabeleça procedimentos de monitoramento para esses
logs. Estabeleça procedimentos para identi�car intrusões e
responder adequadamente.
Exemplo: um aplicativo que requer autenticação recebeu
10.000 tentativas de autenticação com falha, em um período
de cinco minutos, de um único endereço de protocolo da
Internet. Isso pode ser um ataque ou um dispositivo mal
con�gurado. Um alerta deve ser gerado e um analista deve
realizar uma análise para determinar se o ataque foi bem-
sucedido ou se o suporte deve ser informado da
con�guração incorreta.
Não con�e na
infraestrutura
Ao autenticar e autorizar solicitações, mesmo de uma
infraestrutura “con�ável”, as relações de con�ança não são
abusadas.
Exemplo: o comprometimento de um servidor de protocolo
de transporte em tempo real (RTP), no qual o privilégio
mínimo é usado, não deve permitir que uma ameaça se
“pivote” para um servidor web próximo que possa ter uma
relação de con�ança implícita com esse servidor RTP. Este
servidor web não deve con�ar no servidor RTP.
Não con�e nos
serviços
Um serviço comprometido não é con�ável, pois os dados
apresentados por ele podem ser maliciosos.
Exemplo: quando um serviço de banco de dados é
comprometido, os dados que ele fornece a outros serviços
podem conter componentes maliciosos que permitem que
esses serviços consumidores de dados sejam
comprometidos. Esses outros serviços não devem con�ar no
banco de dados. Veri�car os dados recebidos dos serviços
garante que as relações de con�ança não sejam abusadas.
Estabeleça
padrões
seguros
Relacionado ao uso de um modelo de segurança positivo,
fornecer padrões seguros garante que a segurança seja
considerada. Se um controle permitir que os usuários “optem
pela exclusão”, essa decisão pode ser ponderada pelo
usuário e escolhida conforme suas necessidades exigirem. A
con�guração inicial deve ser sempre o mais segura possível.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 7/11
Não con�e no
código-fonte de
terceiros
O uso de código de terceiros, como projetos de código aberto
e ferramentas de gerenciamento de pacote/dependência,
introduz um vetor de ataque potencial que precisa ser
auditado/monitorado. Se você estiver usando ferramentas de
pacote, use seus sistemas de alerta/aviso embutidos para
código comprometido e tome as precauções necessárias.
Além disso, considere o uso de serviços de monitoramento
para receber avisos sobre pacotes durante o
desenvolvimento e como uma veri�cação periódica
programada em sua base de código. Quando possível, revise
o código de terceiros. Desenvolva estratégias para mitigar
rapidamente os problemas à medida que surgem em suas
equipes.
Fonte: elaborado pelo autor.
A segurança para o desenvolvimento de software deve levar em consideração
muitos fatores. Necessidade do cliente, objetivo e demanda por entrega ágil são
apenas alguns detalhes na rotina de uma equipe de desenvolvimento. O cuidado
com a segurança, por exemplo, é essencial na aplicação moderna.
A importância dada à segurança da informação aumenta a con�abilidade do
software �nal. Em um universo onde o compartilhamento de informações pela
internet e entre dispositivos faz parte do dia a dia dos usuários de smartphones,
tablets e computadores, a segurança digital será fundamentalpara a criação de
novas soluções de TI.
Dessa forma, falaremos um pouco mais sobre as melhores práticas para quem
busca desenvolver softwares mais seguros e como garantir que sua equipe crie
ferramentas con�áveis.
Use métodos seguros para transferir e armazenar dados: a política de
segurança é a base de qualquer rotina que busque mais con�abilidade para
seus serviços digitais. Parte disso envolve o uso de práticas como PCI-DSS, que
aumentam a con�abilidade das trocas de informações. A con�dencialidade de
uma operação de comunicação, por exemplo, é feita por meio de métodos
modernos de criptogra�a. O aumento da integridade e da autenticidade dos
dados é feito por meio de rotinas de veri�cação de pacotes de dados. Assim,
seja armazenando, processando ou trocando arquivos e informações, tanto o
remetente quanto o destinatário terão a certeza de que a conexão utilizada é
100% segura. Assim, evita-se a captura e o roubo de dados con�denciais.
Tenha um ambiente de desenvolvimento seguro: uma empresa que lida
com o desenvolvimento de ferramentas de TI não deve trabalhar apenas para
mais segurança digital. Ter ambientes físicos livres de vulnerabilidades também
é necessário. O acesso aos setores relacionados à criação de um sistema deve
ser controlado. Além disso, os servidores devem ser isolados para evitar seu
uso por pessoal não autorizado.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 8/11
Use métodos de desenvolvimento seguros: cada programador tem um
método de desenvolvimento preferido. Independentemente de a equipe optar
por trabalhar com um método ágil ou com outro mais tradicional, ele deve ser
adaptado em busca de práticas mais seguras. Assim, sempre que veri�car um
código, o engenheiro de software deve rastrear possíveis falhas e lacunas que
possam comprometer a segurança digital do usuário. A mesma atenção deve
ser dada ao tamanho dos bu�ers e das matrizes de software, que não devem
comprometer a experiência do usuário. Além disso, os códigos de erro, durante
a compilação, devem ser rastreados e resolvidos rapidamente.
Sempre revise seu código para violações: realize atividades preventivas
voltadas para a resistência a tentativas de roubo de informações. Isso pode
incluir a revisão constante do código, o que pode ser feito por software
automatizado ou pela equipe de segurança digital da empresa. Durante o
estágio de de�nição do design do software, a equipe de programadores deve
implementar o uso de modelos de ameaça. Eles guiarão os desenvolvedores
durante os testes e revisões do código. Além disso, ao realizar testes de
segurança, ataques mais tradicionais devem ser executados para garantir que
o programa seja con�ável.
Use KPIs para avaliar sua equipe: KPIs são métricas usadas para avaliar o
desempenho de uma indústria ou de uma equipe durante um projeto. Por
meio deles, os funcionários podem aprender mais sobre seu progresso no
aprendizado de novas técnicas de trabalho. Para o gerente, o KPI representa
uma forma simples de medir com mais precisão o conhecimento e o
desempenho de sua equipe. Quando se trata de segurança digital, os KPIs
podem ser usados para atribuir padrões de segurança no projeto. Assim, as
equipes podem trabalhar em busca de novos métodos de segurança no
desenvolvimento de software que o protejam das ameaças mais comuns no
mundo digital, como vírus e injeções de SQL.
Adote um SDL: Security Development Lifecycle (SDL) é um processo de
desenvolvimento adotado pela Microsoft que envolve o uso de diversos
produtos e atividades para criar um sistema seguro. Por meio da integração de
medidas e da veri�cação dos processos de uma organização, o método busca
ajudar as empresas a criarem aplicativos mais seguros.
A qualidade de um programa pode ser medida de várias maneiras. Estabilidade,
con�abilidade, baixo número de falhas e atualizações constantes são algumas das
características que de�nem um bom programa. E a segurança de um aplicativo
pode de�nir seu sucesso em mercados cada vez mais competitivos.
ASSIMILE
Na era da informação, os ataques a computadores, tablets e telefones
celulares são cada vez mais frequentes. Nesse cenário, o desenvolvedor é
forçado a oferecer aplicativos mais seguros aos seus usuários. E quando
falamos no Brasil, um dos países mais vulneráveis do mundo, a
implementação de processos de segurança e de boas práticas de
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+SO… 9/11
desenvolvimento torna-se ainda mais importante. Assim, ao criar
ferramentas con�áveis, nosso ativo mais importante no mundo digital, a
informação, estará protegido.
REFLITA
As metodologias SDL se enquadram em duas categorias: prescritivas e
descritivas. As metodologias prescritivas aconselham explicitamente os
usuários sobre o que fazer. Já os descritivos consistem em descrições
literais do que outras empresas �zeram.
EXEMPLIFICANDO
SDL é dividido em sete etapas:
Treinamento: envolve o treinamento de todos os membros da equipe.
Requisitos: consiste em veri�car os requisitos necessários para garantir
que a segurança e a privacidade do usuário sejam totais.
Design: utilizado para analisar a superfície de ataque da aplicação e para
produzir um modelo com as principais ameaças do software.
Implementação: criação de um código com técnicas de programação
defensivas com padrões de codi�cação.
Veri�cação: desenvolvido para teste, veri�cação de código e inspeção de
documentação.
Liberação: envolve a criação de um plano de ação que preparará a equipe
de suporte para a resolução de problemas.
Resposta: nesta fase, quaisquer bugs ou falhas encontrados após a
distribuição do software são rastreados e corrigidos.
Nesta seção foi apresentado a você como trabalhar com segurança no ambiente
web, quais cuidados devem ser tomados, como desenvolver sistemas seguros e
quais modelos devem ser aplicados para garantir que, no desenvolvimento, isso
seja respeitado. Além disso, você aprendeu também sobre técnicas de
desenvolvimento seguro, com o modelo OWASP.
FAÇA VALER A PENA
Questão 1
Open Web Application Security Project (OWASP), comunidade dedicada à
segurança na web, elaborou um guia de boas práticas de programação, além de
um guia de testes de segurança para aplicações web.
Assinale a opção que contém um princípio dos testes de acordo com o OWASP
Testing Guide.
a.  Pense estrategicamente e taticamente.
b.  Teste tardia e frequentemente.
c.  Entenda o assunto em questão.
d.  Desenvolva testes de caixa preta.
e.  Documente o resultado das métricas.
Questão 2
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+S… 10/11
REFERÊNCIAS
AL-FEDAGHI, S. ALKANDARI, A. On security development Lifecycle: conceptual
Description of vulnerabilities, risks, and Threats. IJDCTA, [S. l.], v. 5, n. 5, p. 296-306,
2011.
HOWARD, M.; LIPNER, S. The security Development Lifecycle: SDL, a Process for
Developing Demonstrably More Secure Software. [S. l.]: Microsfot Press, 2006.
MANI, Y. K. A review paper on software develpoment Lifecycle models. JETIR, [S. l.],
v. 5, n. 2, 2018.
OWASP. OWASP Top 10 – 2013 – Os dez riscos de segurança mais críticos em
aplicações web. Versão em Português (PT-BR). [S. l.]: OWASP, 2013. Disponível em:
A Open Web Application Security Project (OWASP) é uma entidade sem �ns
lucrativos que reúne pro�ssionais voluntários de segurança de aplicações ao redor
do mundo com o intuito de produzir materialpara a construção de softwares mais
seguros. Um dos principais trabalhos da entidade é o guia OWASP Top 10, que é
publicado a partir de dados estatísticos de diversas organizações atuantes na
indústria. Por exemplo, cita-se a falha categorizada como:Assinale a alternativa que
representa uma violação de dados pessoais:
Acerca dos conceitos relacionados ao desenvolvimento seguro de aplicações,
assinale a alternativa correta.
A1 – Injeção As falhas de injeção, tais como injeção de SQL, de Sistema Operacional (SO) e de LDAP, ocorrem
quando dados não con�áveis são enviados para um interpretador como parte de um comando ou uma
consulta. Os dados manipulados pelo atacante podem iludir o interpretador para que ele execute comandos
indesejados ou permita o acesso a dados não autorizados. 
— (OWASP, 2013, [s. p.])
“
a.  A responsabilidade de desenvolver aplicações seguras é dos desenvolvedores.
b.  Para que um software seja considerado seguro, é su�ciente que possua certa resiliência.
c.  A fase de requisitos de software é de pouca ou nenhuma importância para a construção de software
seguro.
d.  A aplicação de criptogra�a na informação, gerenciada pela aplicação, e o uso do SSL/TLS para a proteção
da comunicação são su�cientes para manter as aplicações web protegidas.
e.  Um ciclo de desenvolvimento de software seguro é aquele em que atividades de segurança são aplicadas
ao longo das etapas de requisitos, projeto, codi�cação, testes, operação e descarte.
Questão 3
Uma das boas práticas de programação para o desenvolvimento de sistemas
seguros caracteriza-se pela veri�cação de todos os dados de entrada para impedir
perda de controle do sistema e falhas gerais de proteção.
Dessa maneira, assinale a alternativa correta:
a.  Testar o retorno de funções chamadas.
b.  Filtrar caracteres especiais.
c.  Criar funções intrinsecamente seguras.
d.  Documentar funções corretamente.
e.  Tratar todas as entradas do sistema como não con�áveis.
0
V
e
r 
a
n
o
ta
çõ
e
s
4/7/24, 9:35 PM lddkls212_seg_eng_sof
https://www.colaboraread.com.br/integracaoAlgetec/index?usuarioEmail=tquintela13%40gmail.com&usuarioNome=TATIANA+OSCAR+QUINTELA&disciplinaDescricao=SEGURANÇA+EM+ENGENHARIA+DE+S… 11/11
https://bit.ly/3jwssJW. Acesso em: 12 ago. 2021.
OWASP. OWASP Top 10 – 2017 – The Ten Most Critical Web Application Security
Risks. Versão portuguesa. [S. l.]: OWASP, 2017.
RATHER, M. A.; BHATNAGAR, M. V. A comparative study of software develpoment
Lifecycle models. IAJIEM, [S. l.], v. 4, n. 10, 2015.
0
V
e
r 
a
n
o
ta
çõ
e
s
https://owasp.org/www-pdf-archive/OWASP_Top_10_2013_PT-BR.pdf

Mais conteúdos dessa disciplina