Programming Foundations: Secure Coding

This course provides a fundamental understanding of secure coding practices, teaching you how to incorporate security into the software development life cycle. It emphasizes the importance of adopting the mindset of a security professional and identifying common insecure code issues. The course covers a range of topics including understanding attackers and risks, documenting your risks, and issues related to web client-server and thick app-client-server interactions. It also delves into authorization and cryptography issues. The course concludes with an overview of implementing security in each phase of the software development life cycle, providing you with the knowledge to strengthen the security posture of your applications.

Skills for certificate:

Problem Solving

Critical Thinking

Programming Foundations: Secure Coding

Programming Foundations: Secure Coding certificate image

66d22de887f57e65fc6cdbbd3d9ea05498c3cae6c9cad34fcc633b3013d0d38b

Description

This course provides a fundamental understanding of secure coding practices, teaching you how to incorporate security into the software development life cycle. It emphasizes the importance of adopting the mindset of a security professional and identifying common insecure code issues. The course covers a range of topics including understanding attackers and risks, documenting your risks, and issues related to web client-server and thick app-client-server interactions. It also delves into authorization and cryptography issues. The course concludes with an overview of implementing security in each phase of the software development life cycle, providing you with the knowledge to strengthen the security posture of your applications.

Learning Objectives

  • Understanding the goal of secure coding and the mindset of an attacker
  • Learning to break what you build to identify vulnerabilities
  • Assessing and documenting your risks
  • Identifying input validation, communication channel, and session management issues
  • Understanding error handling, logging, output, and internal data management issues
  • Exploring configuration, database, file and I/O, and memory management issues
  • Identifying dependency issues
  • Understanding authentication, password, authorization, access control, and cryptography issues
  • Embracing security in design, development, testing, and deployment
  • Implementing best practices for secure coding

Certificate Issuer

LinkedIn