ISLA IPGT 25033
Software security
Cybersecurity
-
ApresentaçãoPresentationThe Course Unit of "Software Security" provides a comprehensive and practical approach to understanding and implementing effective security measures in software systems. Within the context of the Postgraduate Program in Cybersecurity, this discipline plays a fundamental role by providing students with the skills and knowledge necessary to identify, evaluate, and mitigate vulnerabilities in software applications. By addressing key concepts, methodologies, best practices, and security tools, this course prepares students to tackle emerging challenges in the field of cybersecurity. Through the analysis of case studies and the completion of practical projects, students gain a solid understanding of current threats and develop skills to protect systems against cyber attacks.
-
ProgramaProgrammeIntroduction to Software Security Basic concepts of cybersecurity Importance of security in the context of software development Threats and vulnerabilities in Software Common types of cyber attacks Identification and characterization of software vulnerabilities Methodologies and best Practices in Software Security Integration of security into the software development life cycle Secure coding practices and vulnerability prevention Security analysis tools Use of static and dynamic code analysis tools Authentication and session management Authentication methods and their challenges Implementation of secure session management in web applications Authorization and access control Principles of authorization and access control Implementation of authorization mechanisms in software systems Encryption and Data Protection Concepts of symmetric and asymmetric cryptography Application of encryption for data protection at rest and in transit
-
ObjectivosObjectivesDevelop a solid understanding of the fundamental principles of software security. Acquire knowledge about the different threats and vulnerabilities affecting software applications. Master methodologies and best practices for integrating security throughout the software development life cycle. Learn to identify, assess, and mitigate security vulnerabilities in software applications. Develop practical skills to implement effective security measures in software projects. Empower students to apply static and dynamic code analysis techniques to identify potential vulnerabilities. Foster the ability to understand and apply concepts of authentication, authorization, and session management in software environments. Promote a culture of cybersecurity, encouraging responsibility and ethics in software development.
-
BibliografiaBibliographyViega, J., & McGraw, G. (2019). Building Secure Software: How to Avoid Security Problems the Right Way (2nd ed.). ISBN: 9780321774958 Howard, M., & LeBlanc, D. (2017). Writing Secure Code (2nd ed.). ISBN: 9780735617223 McGraw, G. (2015). Software Security: Building Security In. ISBN: 9780321356703
-
MetodologiaMethodologyActive learning Use of case studies, practical projects, and group activities to promote active participation of students in the learning process Cyber attack simulations Conducting cyber attack simulations so that students can apply theoretical knowledge to solve software security problems Hands-On with cutting-edge tools Use of static and dynamic code analysis platforms to provide a hands-on experience and prepare students for real cybersecurity challenges Collaborative and participatory approaches Encouragement of collaboration among students, fostering knowledge sharing, idea debate, and teamwork on projects Development of practical skills Focus on developing practical skills such as problem solving, critical thinking, and teamwork, beyond simple information transmission
-
LínguaLanguagePortuguês
-
TipoTypeAnual
-
ECTS2
-
NaturezaNatureMandatory
-
EstágioInternshipNão