Software Security
This course we will explore the foundations of software security. We will consider important software vulnerabilities and attacks that exploit them – such as buffer overflows, SQL injection, and session hijacking – and we will consider defenses that prevent or mitigate these attacks, including advanced testing and program analysis techniques. Importantly, we take a “build security in” mentality, considering techniques at each phase of the development cycle that can be used to strengthen the security of software systems. Successful learners in this course typically have completed sophomore/junior-level undergraduate work in a technical field, have some familiarity with programming, ideally in C/C++ and one other “managed” program language (like ML or Java), and have prior exposure to algorithms. Students not familiar with these languages but with others can improve their skills through online web tutorials.
None
Syllabus
Syllabus - What you will learn from this course
Week 1
OVERVIEW
LOW-LEVEL SECURITY
Week 2
DEFENDING AGAINST LOW-LEVEL EXPLOITS
Week 3
WEB SECURITY
Week 4
SECURE SOFTWARE DEVELOPMENT
Week 5
PROGRAM ANALYSIS
Week 6
PEN TESTING
FAQ
When will I have access to the lectures and assignments?
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
Reviews
Very informative. A great place to get started understanding buffer overflow attacks, symbolic analysis and concepts related to software security.
The course overall is very good, I hope to have a more specialized course in C/C++ languages with more practices, as I work more with embedded systems/C
Very informative course, which gives you the basics needed to go further into any of the subjects presented. It is quite challenging but well worth the effort.
very nice course, covering the most essential topics related to software security. For the curios students, it should provide a good start to dive deep!