• EN
  • Facebook
  • Instagram
  • Youtube
  • Linkedin
Você está em: Início > Ensino > Unidades Curriculares > TSPWDM115
Autenticação
ATENÇÃO: Este site utiliza cookies. Ao navegar no site estará a consentir a sua utilização.

Segurança na Web

Código: TSPWDM115    Sigla: SW
Área Científica: Ciências Informáticas

Ocorrência: 2023/24 - 1S

Área de Ensino: Informática

Cursos

Sigla Nº de Estudantes Plano de Estudos Ano Curricular Créditos Horas Contacto Horas Totais
TSPWDM 6 Aviso n.º 14644/2015, de 16 de dezembro 4

Horas Efetivamente Lecionadas

TTWDM-2-STR

Teórico-Práticas: 56,00

Docência - Horas Semanais

Teórico-Práticas: 4,00

Tipo Docente Turmas Horas
Teórico-Práticas Totais 1 4,00
Ricardo Miguel Andorinha Rodrigues - ESGT   4,00

Docência - Responsabilidades

Docente Responsabilidade
Filipe Gonçalves Cardoso - ESGTS Responsável

Objetivos de Aprendizagem (conhecimento, aptidões e competências a desenvolver pelos estudantes)

Espera-se do aluno aprovado, a capacidade de:
-Conhecer conceitos em órbita de segurança na Web;
-Compreender as atitudes de segurança que poderão comprometer sistemas para que os possa tornar sustentáveis;
-Adquirir práticas de desenvolvimento "seguras" com as tecnologias e linguagens selecionadas;
-Programar alguns dos ataques mais comuns e também escrever soluções "imunes" a esses ataques;
-Adquirir conhecimentos para a regulação do acesso a soluções.

Conteúdos programáticos

1.Conceitos
Segurança
Importância da segurança
Hacking e hackers
Desenvolvimento/engenharia de software com práticas seguras
2.Atitudes básicas
Atitudes do privilégio mínimo e da solução mais simples
Input dos utilizadores
Esperar o inesperado
3.Desenvolvimento "seguro"
Controlo dos mecanismos de I/O
Validações de inputs, client/server-side e na comunicação entre partes de sistemas
Sanitização de dados em geral
Controlo de exceções de runtime e da informação tornada pública
Obfuscação
Logging
Boas práticas com sistemas de gestão de bases de dados
Boas práticas na configuração de HTTP servers
4.Programação de ataques comuns
Cross-site scripting (XSS) e request forgery (CSRF)
SQL injection
URL manipulation e URLs fabricados
Manipulação de cookies
Hijacking de sessões
Denial of service
5.Encriptação, autenticação e cenários
Algoritmos comuns injetivos
Hashing
Sistemas para geração e manutenção de passwords, incluindo o problema da recuperação
Autenticação em n-fatores
Regulação de acessos ao sistema, na prática

Demonstração da Coerência dos Conteúdos Programáticos com os Objetivos de Aprendizagem da Unidade Curricular

São expostos scripts server-side que permitem tornar o desenvolvimento mais seguro com boas práticas.
São expostos scripts que mostram os ataques mais comuns e as correções aos mesmos.

Metodologia de Ensino (Avaliação incluída)

Aulas teórico-práticas de exposição da matéria, de demonstração de conceitos e de software, de resolução de exercícios e de
apresentação e discussão da solução dos exercícios.
Aulas práticas dedicadas à realização do projeto da disciplina e aulas de apresentação e discussão dos projetos dos alunos
Avaliação:
Realização de um teste, com o peso de 60% na nota final.
Conceção, desenho e implementação de trabalhos práticos e de um projeto final em sala de aula (40% da nota final).


Demonstração da Coerência das Metodologias de Ensino com os Objetivos de Aprendizagem da Unidade Curricular

Com a exposição dos conceitos fundamentais e com a demonstração de código e de soluções de software é dado ao aluno a
responsabilidade e a motivação para o seu envolvimento nos exercícios que lhe são atribuídos. É favorecida a autonomia do aluno
e privilegiado o desejo e a capacidade da descoberta. O projeto final permite a articulação e a integração dos conceitos e
tecnologias abordados, consolidando-os e abrindo as portas à procura de mais conhecimento.

Bibliografia de consulta (existência obrigatória)

Michal Zalewski. The Tangled Web: A Guide to Securing Modern Web Applications, 2011
Dafydd Stuttard & Marcus Pinto. The Web Application Hacker's Handbook: Discovering and Exploiting Security Flaws,
2007
Thomas Hansen, Jason Lengstorf. 2014, PHP for Absolute Beginners, APress
Elizabeth Naramore, J. G., Yann Le Scouarnec, Jeremy Stolz, Michael K. Glass. 2005, Beginning PHP5, Apache, and
MySQL Web Development, John Wiley & Sons.
Erdal Ozkaya. 2019, Cybersecurity: The Beginner's Guide

Observações

Recurso às plataformas Moodle e Zoom (se justificável).