• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

SSDLC – Implementação

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Essa é a fase que nós, pessoas desenvolvedoras, iremos atuar continuamente. Assim como arquitetos de software precisam entender sobre segurança, nós também precisamos conhecer sobre desenvolvimento seguro. Se esse conceito é novo para você e você trabalha com desenvolvimento web, recomendo começar pelo

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

Mas a segurança vai além disso! Também existem outras referências importantes, como:

  • CWE e CWE Top 25 - Lista de fraquezas comuns de segurança em software.
  • CERT - Diretrizes para programação segura em diferentes linguagens.
  • CVE - Base de dados de vulnerabilidades conhecidas em produtos e softwares específicos.

Nesta fase, colocamos a segurança em prática através de código seguro e ferramentas automatizadas.
Já temos o relatório da "Modelagem de ameaças", sabemos quais são as possíveis ameaças e também como mitiga-las.
Também podemos usar a segurança na criação de histórias. Veja um exemplo:

Exemplo de Codificação Segura com OWASP ASVS


O OWASP ASVS (Application Security Verification Standard) é um guia estruturado para validar controles de segurança em aplicações web. Ele pode ser usado como checklist para assegurar que requisitos de segurança estão sendo cumpridos durante a codificação.

No login da plataforma, precisamos proteger contra acesso não autorizado.

  • Problema: Precisamos proteger o sistema contra acessos não autorizados.
  • Fonte: ASVS (Application Security Verification Standard)
  • Seção do ASVS: V3 Gestão de Sessão

Formato da User Story:

Como [tipo de usuário], eu quero [meta ou objetivo] para que [benefício ou resultado]
User Story:

"Como uma pessoa desenvolvedora, eu quero que o sistema expire automaticamente as sessões após 30 minutos de inatividade, para reduzir o risco de acesso não autorizado."
Requisito de Segurança (ASVS):
"O sistema deve expirar automaticamente as sessões após 30 minutos de inatividade, conforme o OWASP ASVS, seção V3 (Gestão de Sessão)."

Comportamento Esperado:
Expiração automática das sessões após 30 minutos de inatividade.

Critério Específico:
A sessão deve ser expirada após 30 minutos de inatividade do usuário.

Referência ao OWASP ASVS:
Seção V3 (Gestão de Sessão) do OWASP ASVS, que trata da gestão segura das sessões e o tempo limite de inatividade.


Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



Implementação em Node.js (Express):


const session = require('express-session');
require('dotenv').config(); // Carrega variáveis de ambiente

app.use(session({
secret: process.env.SESSION_SECRET, // Chave armazenada em variável de ambiente
resave: false,
saveUninitialized: false,
cookie: {
secure: true, // Só transmite via HTTPS
httpOnly: true, // Impede acesso via JavaScript
maxAge: 30 * 60 * 1000 // 30 minutos
}
}));

Esse foi apenas um exemplo simples de como o time pode usar ASVS para criar suas histórias.

Implementação de Ferramentas de Segurança


Nessa fase também implementamos ferramentas de segurança que complementam o desenvolvimento de código seguro como SAST - analisa o código-fonte em busca de vulnerabilidades. Essas ferramentas não são a única solução, mas são aliados poderosos para aumentar a segurança da aplicação. Não podemos depender exclusivamente delas, mas usá-las como um suporte para mitigar vulnerabilidades.

Ferramentas para Automatizar a Segurança:


Análise Estática de Código:
Como SonarQube ou ESLint com regras de segurança para identificar vulnerabilidades durante o desenvolvimento.

Verificação de Dependências:
Como Snyk ou Dependabot para detectar bibliotecas com vulnerabilidades (ex: npm audit).

Implementação SAST no pipeline



Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



main: main é o branch principal da aplicação. É o código estável.
feature: é onde estamos escrevendo nossos códigos
commit: commit das nossas alterações
pull request: estamos enviando uma solicitação para mesclar nossas alterações na main
github action: quando criamos PR ou fazemos um push com github actions configurado, ele é acionado para executar os fluxos de trabalho definidos.
CI: Toda vez que ele foi acionado, ele executa o trabalho: clona o projeto, roda todos os testes, gerar o build(arquivos que você precisa para a aplicação rodar) da aplicação. E também no nosso caso, executa o Horusec. Ou seja, todas as vezes que fizermos um PR, esse processo garante que código de forma segura possa estar integrado na aplicação principal.
horusec: O Horusec é uma ferramenta de segurança que analisa o código em busca de vulnerabilidades de segurança.

Notas:



Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

 
Вверх Снизу