Ficha Unidade Curricular (FUC)

Informação Geral / General Information


Código :
04375
Acrónimo :
04375
Ciclo :
1.º ciclo
Línguas de Ensino :
Português (pt)
Língua(s) amigável(eis) :

Carga Horária / Course Load


Semestre :
1
Créditos ECTS :
6.0
Aula Teórica (T) :
12.0h/sem
Aula Teórico-Prática (TP) :
12.0h/sem
Aula Prática e Laboratorial (PL) :
12.0h/sem
Trabalho de Campo (TC) :
0.0h/sem
Seminario (S) :
0.0h/sem
Estágio (E) :
0.0h/sem
Orientação Tutorial (OT) :
1.0h/sem
Outras (O) :
0.0h/sem
Horas de Contacto :
37.0h/sem
Trabalho Autónomo :
113.0
Horas de Trabalho Total :
150.0h/sem

Área científica / Scientific area


480 - Informática

Departamento / Department


Departamento de Tecnologias Digitais

Ano letivo / Execution Year


2024/2025

Pré-requisitos / Pre-Requisites


Objetivos Gerais / Objectives


Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes


Após a conclusão desta UC os alunos estarão aptos a: OA1. Conhecerem e compreenderem os problemas de segurança do software e de aplicações OA2. Conhecerem e compreenderem os principais riscos e desafios de segurança de aplicações Web e Mobile OA3. Conhecer e aplicar metodologias a princípios de desenho e desenvolvimento seguro de software OA4. Conhecerem técnicas que permitam efetuar a exploração de software e aplicações OA5. Conceberem medidas de mitigação no software e aplicações para evitar vulnerabilidades de segurança

Conteúdos Programáticos / Syllabus


CP1. Problemas de segurança em aplicações e em software: exploração de memória, condições de concorrência, geração de output, side channels, entre outros. CP2. Deteção de vulnerabilidades de software e mitigação da exploração das mesmas CP3. Desenvolvimento seguro de software para mitigação de vulnerabilidades CP4. Desenvolvimento, Segurança e Operação de Software (DevSecOps) CP5. Principais vulnerabilidades exploradas em aplicações web, móveis, serviços web e APIs CP6. Controlos de cibersegurança e proteção de dados que devem ser implementados nas aplicações web, móveis, serviços web e API CP7. Exploração de vulnerabilidades em aplicações web, mobile e serviços web

Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular units content dovetails with the specified learning outcomes


Os conteúdos programáticos desta UC encontram-se ajustados aos objetivos de aprendizagem da mesma, Assim, no que respeita aos objetivos OA1, OA2 e OA3, os alunos irão aprender os conceitos principais da segurança do desenvolvimento de software assim como os principais problemas de segurança em diferentes plataformas. Relativamente ao objetivo OA4 os estudantes irão conhecer e perceber os múltiplos problemas de segurança que afetam o software em múltiplas plataformas, assim como as principais soluções para poderem resolver os problemas de segurança identificados. Finalmente, em OA5, os alunos irão aprender a aplicar na prática as metodologias de exploração de potenciais problemas de segurança em aplicações e em software.

Avaliação / Assessment


Avaliação ao longo do semestre: - Realização de um projeto em grupo (60%) ao longo do semestre - Realização de um teste individual (40%) [nota mínima de 9,5 valores] A frequência de um número mínimo de aulas não é obrigatória na avaliação ao longo do semestre. Avaliação por exame: Para os estudantes que optem por este processo ou para os que reprovarem no processo de avaliação ao longo do semestre, com 3 épocas nos termos do RGACC.

Metodologias de Ensino / Teaching methodologies


Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes


As metodologias de ensino foram selecionadas de forma a corresponder aos objetivos de aprendizagem da UC. Através de uma combinação de momentos de aprendizagem, os estudantes irão realizar tarefas com diferentes níveis de apoio e orientação docente ao longo da UC que lhes permitirá conhecer os principais conceitos e metodologias para o desenvolvimento de software seguro, assim como para a análise da segurança de aplicações. O docente dará feedback (corretivo e/ou cognitivo) sobre as tarefas realizadas pelos alunos. Os estudantes irão ainda realizar tarefas, laboratórios específicos e um projeto com diferentes fases relacionadas com os diferentes temas que serão abordados na unidade curricular. No caso do projeto os estudantes terão acesso a todos os detalhes do trabalho a realizar, assim como as ferramentas que devem ser usadas e os detalhes dos principais resultados a obter. Esta abordagem permitirá que os estudantes estabeleçam conexões entre os conhecimentos teóricos e práticos, permitindo-lhes perceber e aplicar os conhecimentos da unidade curricular.

Observações / Observations


Bibliografia Principal / Main Bibliography


Zalewski M. (2012). The tangled web: A guide to securing modern web applications. No Starch Press. ISBN: 1-59327-388-6. Stuttard D., Pinto M. (2012). The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws. Wiley. ISBN: 978-1118026472. Hsu, T. H. C. (2018). Hands-On Security in DevOps: Ensure continuous security, deployment, and delivery with DevSecOps. Packt Publishing Ltd. ISBN : 1788995503. Richardson T. (2012). Secure Software Design. Jones & Bartlett Learning. ISBN: 978-1449626327 Deogun D., Johnsson B., Sawano D. (2019). Secure By Design. Manning Publications. ISBN: 978-1617294358 Grembi J. (2008). Secure Software Development: A Security Programmer's Guide. Cengage Learning. ISBN: 978-1418065478 Adkins H., Beyer B., Blankinship P., Lewandowski P., Oprea A., & Stubblefield A. (2020). Building Secure and Reliable Systems: Best Practices for Designing, Implementing, and Maintaining Systems. O'Reilly Media. ISBN: 978-1492083122.

Bibliografia Secundária / Secondary Bibliography


Conjunto de materiais distribuídos pela equipa docente no decurso das aulas.

Data da última atualização / Last Update Date


2024-10-31