This course will help you build a foundation of some of the fundamental concepts in secure programming. We will learn about the concepts of threat modeling and cryptography and you'll be able to start to create threat models, and think critically about the threat models created by other people. We'll learn the basics of applying cryptography, such as encryption and secure hashing. We'll learn how attackers can exploit application vulnerabilities through the improper handling user-controlled data. We'll gain a fundamental understanding of injection problems in web applications, including the three most common types of injection problems: SQL injection, cross-site scripting, and command injection.
Ce cours fait partie de la Spécialisation Secure Coding Practices
Offert par
À propos de ce cours
1-2 years of experience with some form of computer programming language like C/C++ or Java.
Compétences que vous acquerrez
- Cryptography
- Authentication Methods
- secure programming
1-2 years of experience with some form of computer programming language like C/C++ or Java.
Offert par

Université de Californie à Davis
UC Davis, one of the nation’s top-ranked research universities, is a global leader in agriculture, veterinary medicine, sustainability, environmental and biological sciences, and technology. With four colleges and six professional schools, UC Davis and its students and alumni are known for their academic excellence, meaningful public service and profound international impact.
Programme de cours : ce que vous apprendrez dans ce cours
Foundational Topics in Secure Programming
In this module, you will gain exposure to the ideas of threat modeling and applied cryptography. By the end of the module, you will be able to start to create threat models, and think critically about the threat models created by other people. You will be able to apply the STRIDE Method to your threat model and distinguish the trust boundaries in a given system. You will also gain a basic understanding of applied cryptography, such as encryption and secure hashing.
Injection Problems
By the end of this module, you will have a fundamental understanding of injection problems in web applications. You'll be able to discuss and describe the three most common types of injection problems: SQL injection, cross-site scripting, and command injection. In order to drive home these concepts, you will be able to work on exploiting a SQL injection vulnerability in the WebGoat application. You'll be able to formulate plans to mitigate injection problems in your applications.
Problems Arising From Broken Authentication
By the end of this module, you will be able to evaluate a system to determine if it follows the generally prescribed secure methods for authentication and session management in web applications. You'll be able to distinguish the relationship between authentication, session management, and access control. You will also be able to exploit WebGoat's authentication and session management vulnerability. As well as be able to evaluate a system to determine if it performs sufficient security logging such that non-repudiation is enforced. This will help drive the concepts that you will learn in this module.
Sensitive Data Exposure Problems
By the end of this module, you will understand how to effectively store password-related information, and NOT to store the actual plaintext passwords. You will also have a hands on coding assignment that will help you to better understand the mechanisms for effectively storing password-related information. Ready?
Avis
- 5 stars73,10 %
- 4 stars20,68 %
- 3 stars4,82 %
- 1 star1,37 %
Meilleurs avis pour IDENTIFYING SECURITY VULNERABILITIES
This class was awesome, it was challenging, and caused me to grow toward my goal of being in Cyber security! Thanks!
The course is really great and got to learn new & interesting concepts except that the webgoat installation tutorial/document is not up to date.
Coursera site is very use full for learning,knowledge sharing, quality checking and improve skills
Excellent course material and equally good delivery.
À propos du Spécialisation Secure Coding Practices
This Specialization is intended for software developers of any level who are not yet fluent with secure coding and programming techniques.Through four courses, you will cover the principles of secure coding, concepts of threat modeling and cryptography and exploit vulnerabilities in both C/C++ and Java languages, which will prepare you to think like a hacker and protect your organizations information. The courses provide ample practice activities including exploiting WebGoat, an OWASP project designed to teach penetration testing.

Foire Aux Questions
Quand aurai-je accès aux vidéos de cours et aux devoirs ?
À quoi ai-je droit si je m'abonne à cette Spécialisation ?
Une aide financière est-elle possible ?
D'autres questions ? Visitez le Centre d'Aide pour les Étudiants.