Segurança Aplicada ao Desenvolvimento
Assuntos
Gestão da Segurança da Informação
Conceitos Básicos
Muito bem. A essa altura do nosso estudo saímos do praticamente zero lá no primeiro período. Aprendemos a desenvolver interfaces frontend. A lógica de negócio e acesso ao banco de dados relacional e não relacional no backend. Aprendemos aplicações mobile. Também vimos aplicações distribuídas.
Caramba, quanta coisa! Entretanto, teve algo que sempre acompanhou a nossa caminhada mas que finalmente terá o seu devido lugar de foco. A Segurança as nossas aplicações finalmente será o objeto do nosso cuidado agora.
Enquanto os times de desenvolvimento se esforça para entregar todos os requisitos elicitados no backlog. Entretanto, o time de segurança também se esforça para entregar todos os requisitos elencados no backlog e, além disso, eles também se empenham em evitar que o sistema apresente comportamentos indesejados no que tange ao acesso as informações.
Requisitos da Segurança da Informação
Para elicitar os requisitos relacionados à segurança, também temos algumas abordagens que podem ser úteis. O material cita as três principais fontes para requisitos dessa natureza:
- Avaliação de riscos à organização relacionados aos objetivos da empresa.
- Requisitos legais, estatutos e regulamentos (aqui a LGPD veio com força total).
- Conjunto de princípios e práticas para o manuseio da informação que a empresa usa para apoiar suas operações.
Uma vez que tenhamos aprendido as fontes dos requisitos. Temos que entender quais propriedades esses itens devem receber para que a organização faça uso correto e pertinente das suas informações e, ao mesmo tempo, se proteja de vazamentos e intrusões.
Principais propriedades da segurança da informação:
- Confidencialidade - Somente pessoas autorizadas devem ver certas informações.
- Integridade - A informação não deve ser alterada.
- Disponibilidade - Os sistemas devem estar disponíveis para a consulta.
- Garantia - As pessoas e sistemas devem se comportar como o esperado.
- Autenticidade - Garantia que os atos e fatos são gerados pela indicação da fonte.
- Anonimato (Privacidade) - Em alguns casos, deve-se assegurar que alguns fatos e atos não sejam rastreáveis.
- Auditabilidade - Registro dos acessos às informações.
- Legalidade - Conformidade com os regulamentos e normas.
Ameaças, Ataques e Vulnerabilidades
Normas e Políticas
Norma ISO/IEC 27001
Políticas de Segurança da Informação
Desenvolvimento Seguro de Software
Barreiras de Proteção
Controle de Acesso e Permissões
Segurança de Banco de Dados
Software Seguro
Proteção Contra SQL Injection
Proteção Contra Cross-Site Scripting (XSS)
Bibliografia
Básica
- BARRETO, Jeanine dos Santos et al. Fundamentos de segurança da informação. Porto Alegre: SAGAH, 2018. E-book.
- GOODRICH, Michael T.; TAMASSIA, Roberto. Introdução à segurança de computadores. Porto Alegre, RS: Bookman, 2013. E-book.
- HINTZBERGEN, Jule et al. Fundamentos de segurança da informação: com base na ISO 27001 e na ISO 27002. Rio de Janeiro: Brasport, 2018. E-book.
- HOGLUND, Greg; McGraw, Gary. Como Quebrar Códigos: a arte de explorar (e proteger) software.
- SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de banco de dados. 7. ed. Rio de Janeiro: LTC, 2020. E-book.
- TERADA, Routo. Segurança de dados: criptografia em redes de computador. 2. ed. rev. e ampl. São Paulo: Blucher, 2008. E-book.
Complementar
- MUELLER, John. Segurança para Desenvolvedores Web. 1a. ed. 2018. E-book.
- BASTA, Alfred; BASTA, Nadine; BROWN, Mary. Segurança de computadores e teste de invasão. São Paulo: Cengage Learning, c2015. E-book
- ZEESHAN, Afzaal. DevSecOps for.NET Core/ Securing Modern Software Applications. 1st edition. 2020.
- HOWARD, Michael; LEBLANC, David; VIEGA, John. 24 Deadly Sins of Software Security/ Programming Flaws and How to Fix Them. 1st edition. 2009.