Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
480 - Informática
Departamento / Department
Departamento de Tecnologias Digitais
Ano letivo / Execution Year
2022/2023
Pré-requisitos / Pre-Requisites
Não existem nenhuns requisitos específicos para a frequência desta UC.
Objetivos Gerais / Objectives
Utilizadores e organizações dependem de software e aplicações para realizar as mais diversas atividades no seu dia a dia. Os atacantes exploram cada vez mais problemas de segurança no software e em aplicações para poderem tirar proveito dos mesmos. O objetivo desta unidade é fornecer uma visão geral estruturada das categorias conhecidas de vulnerabilidades de implementação de software, e das técnicas que podem ser utilizadas para prevenir ou detetar tais vulnerabilidades, ou para mitigar a sua exploração. Esta UC aborda os principais problemas no desenvolvimento de software, no ciclo de desenvolvimento de software seguro e nas operações do mesmo (DevSecOps). Para além disto, esta unidade curricular foca-se em aplicações web e aplicações móveis, nos servidores e serviços web, como nas integrações com aplicações terceiras através de APIs.
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
A demonstração de coerência decorre da interligação dos conteúdos programáticos com os objectivos de aprendizagem (OA), como a seguir se explicita: OA1: CP1, CP2 OA2: CP1, CP2, CP5 OA3: CP3, CP4, CP6 OA4: CP5, CP7 OA5: CP4, CP5, CP6
Avaliação / Assessment
"Avaliação Periódica: - Componentes: * 40% - Projeto; * 60% - Teste escrito individual (sem consulta). - Nota mínima em cada uma das componentes: 40%. Avaliação por exame final: * 100% - Prova escrita - Aprovação - nota >= 10"
Metodologias de Ensino / Teaching methodologies
Serão utilizadas as seguintes metodologias de ensino-aprendizagem (MEA): MEA1 Aulas expositivas teórico-práticas:teoria,demos,audiovisuais MEA2 Aulas participativas:análise e discussão de casos de estudo MEA3 Aulas ativas:realização de exercícios/entregáveis do projeto de grupo em lab/apresentações, usando ferramentas do estado-da-arte MEA4 Trabalho autónomo por parte do aluno: auto-estudo,revisões,realização dos entregáveis do trabalho de grupo em lab
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-aprendizagem visam o desenvolvimento das principais competências de aprendizagem dos alunos que permitam cumprir com cada um dos objectivos de aprendizagem, pelo que, na grelha a seguir, apresenta-se as principais interligações entre as metodologias de ensino-aprendizagem (MEA) e os respectivos objectivos de aprendizagem (AO): OA1: MEA1, MEA2, MEA4 OA2: MEA1, MEA2, MEA4 OA3: MEA1, MEA2, MEA4 OA4: MEA1, MEA2, MEA3, MEA4 OA5: MEA1, MEA2, MEA3, MEA4 O documento de Planeamento de Unidade Curricular (PUC), detalhado para cada aula, evidencia a relação entre os métodos pedagógicos de ensino (de acordo com a tipologia de aula) e os objectivos de aprendizagem.
Observações / Observations
--
Bibliografia Principal / Main Bibliography
Bibliografia Secundária / Secondary Bibliography
Data da última atualização / Last Update Date
2024-02-16