
Segurança de Redes e Sistemas de Computadores
Código
11619
Unidade Orgânica
Faculdade de Ciências e Tecnologia
Departamento
Departamento de Informática
Créditos
6.0
Professor responsável
Henrique João Lopes Domingos, José Augusto Legatheaux Martins
Horas semanais
4
Total de horas
52
Língua de ensino
Português
Objectivos
Conhecimentos
- Frameworks de segurança, normalização de serviços de segurança e modelos de segurança para sistemas e redes de computadores
- Métodos, ferramentas e algoritmos criptográficos e sua utilização na concepção de serviços e protocolos de segurança para redes, sistemas de computadores e sistemas de software
- Protocolos e serviços de segurança na pilha TCP/IP e segurança de aplicações na Internet
- Segurança do sistema de operação e proteção com técnicas de virtualização
- Segurança de sistemas: prevenção e detecção de intrusões e soluções de defesa de perímetro.
- Bases de computação confiável e ambientes seguros de execução segura de código e mecanismos de computação confiável ao nível do hardware.
Aptidões e competências
- Programação com algoritmos criptográficos e bibliotecas com construção e composição normalizadas de algoritmos criptográficos
- Desenho, implementação e ensaio experimental de protocolos e serviços de segurança para redes de computadores e sistemas distribuídos.
- Implementação de propriedades de segurança para sistemas distribuídos e aplicações Internet
- Proteção de recursos ao nível do sistema de operação e virtualização com isolamento de serviçso de software
- Desenho e implementação de soluções de segurança para proteção e privacidade de dados
Pré-requisitos
Os alunos devem possuir conhecimentos anteriores sobre:
- Fundamentos de redes de computadores e conhecimento dos protocolos da pilha TCP/IP
- Fundamentos, paradigmas e prática de programação em Sistemas Distribuídos
- Fundamentos de Sistemas Operativos
É aconselhável que os alunos possuam autonomia e prática no uso de ferramentas de desenvolvimento de software (ex., Eclipse IDE ou outro), sistemas de operação (ex., Linux ou Mac OS X ou Windows), conhecimentos de utilização de ambientes de virtualização ou instalação e uso de máqinas virtuais (ex., VBox ou VMWare) ou ambientes de contentorização de aplicações (ex., Docker). É indicado que os alunos possuam prática anterior de programação e conhecimentos de linguagens de programação (ex., Java ou C# ou C++). O desenvolvimento de trabalhos práticos pode ainda requerer prática de programação de aplicaões em redes TCP/IP e Internet e de sistemas distribuídos, nomeadamente: programação com Sockets TCP/IP, programação REST e com Serviços WEB.
Conteúdo
Programa resumido (tópicos principais)
- Introdução
- Fundamentos de segurança em sistemas distribuídos e redes de computadores
- Criptografia aplicada: algoritmos, técnicas, ferramentas e padrões de construções criptográficas
- Sistemas e serviços de autenticação
- Modelos, mecanismos e sistemas de controlo de acesso; sistemas AAA
- Padrões de segurança na pilha TCP/IP: Protocolos, serviços e aplicações
- Segurança de sistemas: segurança do sistema operativo, segurança com virtualização, prevenção e deteção de intrusões, tecnologia de atestação de software e ambientes computação confiável
Programa detalhado
1. Introdução
2. Fundamentos da segurança em sistemas distribuídos e redes de computadores
- Frameworkse padrões de segurança: conceitos e terminologia
- Padrões ISO 27000, OSI X.800, IETF e NIST/FIPS PUB
- Modelos de segurança em sistemas distribuídos
- Segurança das comunicações: protocolos e serviços de segurança na pilha TCP/IP
- Mecanismos e sistemas de defesa de perímetro
- Segurança de sistemas de computação, tecnologias de atestação de serviços de software e ambientes de computação confiável
3. Criptografia computacional: algoritmos, técnicas e ferramentas criptográficas
- Criptografia simétrica: algoritmos e construções criptográficas seguras e normalizadas
- Criptografia assimétrica: algoritmos e construções criptográficas seguras e normalizadas
- Sínteses de segurança e códigos de autenticação e integridade
- Assinaturas digitais: normalização e construções seguras de assinaturas digitais qualificadas
- Outras técnicas criptográficas: criptografia baseada em identidades, criptografia de limiar e criptografia homomórfica
- Distribuição e estabelecimento de chaves ou parâmetros de associações de segurança
- Concepção e implementação de canais para comunicação segura
- Estabelecimento de canais seguros com provas de conhecimento nulo
4. Sistemas e Serviços de Autenticação
- Protocolos e serviços de Autenticação: PAP, CHAP e RADIUS
- Sistema Kerberos
- Autenticação X509 e frameworkPKI/PKIX
- Autenticação de utilizadores
- Fatores e provas de autenticação: tecnologias e sistemas de autenticação multi-factor
- Autenticação com gestão de identidades digitais: sistemas SSO e federação de identidades
- Sistemas AAA
5. Controlo de Acessos: Modelos, métodos e sistemas de controlo de acesso
- Modelos MAC, DAC, RBAC, ABAC e CBAC
- Métodos e mecanismos de controlo de permissões
- Sistemas de controlo de acessos e estudo de casos
6. Segurança na pilha TCP/IP: protocolos, aplicações e serviços
- Segurança WEB e HTTPS
- Pilha TLS e subprotocolos TLS
- SSH
- Pilha IPSec: ESP, AH, IKE e ISAKMP
- Redes Privadas Virtuais (VPNs) e tecnologias de encapsulamento
- Segurança de canais e redes de acesso: EAP, 802.1x e 802.11i
- Segurança do encaminhamento IP: SBGP
- Protocolos e serviços de segurança de sistemas de EMail:
- POP3S, IMAPS, SMTPS, S/MIME, PGP, DKIM e DMARC
- Segurança do DNS: DNSSEC
7. Segurança de sistemas
- Segurança do sistema de operação
- Segurança com virtualização
- Técnicas e sistemas de defesa de perímetro
- Prevenção e detecção de intrusões
- Atestação de software e sistemas e tecnologias HW para computação confiável
Bibliografia
Bibliografia principal
- W. Stallings, Network Security Essentials - Applications and Services, Pearson, 6/E, 2017
- W. Stallings, L. Brown, Computer Security: Principles and Practice, Pearson 4/E, 2014
Ref. Complementares
- W. Stallings, Cryptography and Network Security - Principles and Practice, Pearson 7/E, 2017
- D. Gollmann, Computer Security, 3rd Ed, Wiley, 2011
Ref. Clássicas
- B. Schneier, Applied Cryptography, 1996, Wiley
Outras Ref.;
- A. Zúquete, Segurança em Redes Informáticas, 5ª Ed., 2018, Ed. FCA
- M. Correia, P. Sousa, Segurança no Softwarem 2ª Ed. , 2017 Ed. FCA
Método de ensino
Obs) As aulas podem ser dadas em língua portuguesa ou língua inglesa, de acordo com a audiência e alunos inscritos.
O funcionamento da unidade curricular envolve aulas teóricas, onde são transmitidos e discutidos os conceitos fundamentais e são discutidos os tópicos do programa e aulas práticas, desenvolvidas em ambiente laboratorial e onde os alunos realizam trabalhos práticos que incluem os trabalhos de avaliação obrigatória.
Nas aulas práticas são feitas apresentações de técnicas de segurança, podendo envolver demonstrações dessas técnicas (de acordo com o programa das aulas práticas) e realizados exercícios básicos relacionados com essas técnicas. Algumas aulas práticas serão dedicadas aos trabalhos práticos de avaliação a realizar pelos alunos, incluindo o esclarecimento de dúvidas, apresentação ou demonstração de resultados bem como discussão de possíveis soluções.
Método de avaliação
- 2 testes de frequência: T1, T2
- Os testes cobrem diferentes partes da matéria
- Duração de referência (2h30):
- 1h-1h30m: questões sem consulta
- 1h-1h30m: questões com consulta (informação individual impressa)
- 2 trabalhos práticos desenvolvidos como mini-projetos: TP1, TP2
- Trabalhos desenvolvidos em grupos de 2 alunos
- Iicluem desenvolviemnto, completude, correção, qualidade e verificação experimental.
- Alunos podem ser convocados para valiação oral.
Regras de aprovação1
- Avaliação de frequência AF = 40% (TP1) + 60% (TP2)
- Obtenção de frequência (AF):
- Obtenção de Frequência
- Avaliação Contínua AC = 40% AF + 25% (T1) + 35% (T2)
- Aprovação com avaliação contínua (AC):
- Obtenção de frequência
- Avaliação com Exame de Recurso AER = 40% AF + 60% ER
- Condições de Aprovação com Exame de Recurso (AER):
1) Alunos com frequência e acesso ao exame obtidos em 2016/2017 ou 2017/2018, poderão usar a avaliação de frequência já obtida para efeitos de acesso ao exame.