To support our site, Class Central may be compensated by some course providers.

  • Provider Coursera
  • Subject Cybersecurity
  • $ Cost Free Online Course (Audit)
  • Session Upcoming
  • Language English
  • Certificate Paid Certificate Available
  • Effort 3-5 hours a week
  • Start Date
  • Duration 6 weeks long

Taken this course? Share your experience with other students. Write review

Overview

Sign up to Coursera courses for free Learn how

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.

Syllabus

OVERVIEW
Overview and expectations of the course

LOW-LEVEL SECURITY
Low-level security: Attacks and exploits

DEFENDING AGAINST LOW-LEVEL EXPLOITS
Defending against low-level exploits

WEB SECURITY
Web security: Attacks and defenses

SECURE SOFTWARE DEVELOPMENT
Designing and Building Secure Software

PROGRAM ANALYSIS
Static Program Analysis

PEN TESTING
Penetration and Fuzz Testing

Taught by

Michael Hicks

Help Center

Most commonly asked questions about Coursera Coursera

Reviews for Coursera's Software Security
4.2 Based on 26 reviews

  • 5 stars 62%
  • 4 stars 19%
  • 3 stars 8%
  • 2 star 0%
  • 1 stars 12%

Did you take this course? Share your experience with other students.

Write a review
  • 1
Carolina F
4.0 4 years ago
by Carolina completed this course and found the course difficulty to be medium.
Very interesting material for introducing on security applied to software. The course is structured around three major blocks, each roughly two weeks from the syllabus. Each block includes a related lab project and interviews with professionals are provided on some units.

The course requires prior knowledge of C, memory management and UNIX. Some concepts about assembler, compiler and similar are advisable. The learning curve may be somewhat steep in the first weeks; thus I'd stress brushing up the aforementioned requirements.
11 people found
this review helpful
Was this review helpful to you? Yes
Henrik W
4.0 3 years ago
by Henrik completed this course, spending 6 hours a week on it and found the course difficulty to be medium.
The first part covers buffer overflows and related memory attacks. Buffer overflows are really well explained, but the quiz and programming project can be difficult if you don't know C.

Next there was a section on web security, like SQL injection, XSS and CSRF. Again, very well explained. The programming project consisted of trying to break into a web site - great fun!

The final block covered static analysis, symbolic execution, fuzzing and penetration testing.

All in all a very enjoyable course, not least because profressor Hicks is very pedagogical - one of the best lecturers I have encountered in MOOCs. The quizzes are relatively easy, but the first and second programming projects took a bit of effort to complete. However, the workload was quite a bit less than for other programming courses I have taken on Coursera.

I've written a more detailed review here: http://henrikwarne.com/2015/10/20/coursera-course-review-software-security/
3 people found
this review helpful
Was this review helpful to you? Yes
Bobby B
5.0 4 years ago
by Bobby dropped this course, spending 5 hours a week on it and found the course difficulty to be hard.
Challenging course, goes beyond most security MOOC's by incorporating projects that have the student analyze and exploit test code. Some of the most detailed explanations of overflows i have seen in online learning.

Need a strong background in C and Assembly to be successful in at least the first half.

Dropped about halfway thru only because it was the same material I took in my Stanford security program.

2 people found
this review helpful
Was this review helpful to you? Yes
Mariano M
5.0 3 years ago
Mariano completed this course, spending 4 hours a week on it and found the course difficulty to be medium.
The videos are engaging and include interviews with people working in the field. The topics are well separated and the practical tasks are quite fun, and eye-opening: First you hack a C program into running code it shouldn't, secondly you have to break into a website, and in the third you try fuzzy testing, all in prepared virtual machines.

I highly recommend it.
2 people found
this review helpful
Was this review helpful to you? Yes
Anonymous
3.0 4 years ago
Anonymous is taking this course right now.
The first two week material is too hard to absorb. Some more coding examples with detail explaination may be added in lectures. The other option could be adding couple of week contents on crash review of C/C++ language like strings, pointers, structures and relevant material.
2 people found
this review helpful
Was this review helpful to you? Yes
Marco L
5.0 3 years ago
by Marco is taking this course right now.
This course is very important for my profession about engineer system. The application is very important against malicious programs. Thanks you by shared.
1 person found
this review helpful
Was this review helpful to you? Yes
Anonymous
3.0 2 years ago
Anonymous audited this course.
This course is in fact no longer free. Now you can only view 4 videos per week unless you pay Coursera $50.
Was this review helpful to you? Yes
Thomas D
5.0 3 years ago
by Thomas completed this course, spending 3 hours a week on it and found the course difficulty to be hard.
I highly recommend this course. The covered subjects are really interesting, and the instructor is a great teacher. He goes quite in-depth also and explains the history and state of the art of each subject, which make it much easier to understand.

The first two assessments were also extremely interesting. The 3rd one was more straightforward but still interesting.
Was this review helpful to you? Yes
Jdmrs J
1.0 8 months ago
by Jdmrs dropped this course, spending 8 hours a week on it and found the course difficulty to be very hard.
Like someone else wrote, the first two week material is too hard to absorb. Some more coding examples with detail explanation may be added in lectures. The other option could be adding couple of week contents on crash review of C/C++ language like strings, pointers, structures and relevant material.

I agree with this entire content.
Was this review helpful to you? Yes
R1100 R
5.0 a month ago
by R1100 is taking this course right now, spending 10 hours a week on it and found the course difficulty to be medium.
just good enough for me to keep on it .

i just love security and this course was perfect for me

thanks a lot for providing this course

Was this review helpful to you? Yes
Anonymous
1.0 8 months ago
Anonymous dropped this course, spending 24 hours a week on it and found the course difficulty to be very hard.
This was wayyyyy too hard. The course wasn't explained well at all and assumed you're an expert. I recommend advertising it better!
Was this review helpful to you? Yes
Anonymous
1.0 8 months ago
Anonymous dropped this course.
All I learned was how to use big words with little to no context. What a joke! I dropped the course in the 2nd week!
Was this review helpful to you? Yes
Oleksandr K
4.0 3 years ago
by Oleksandr completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
Yolanda C
5.0 3 years ago
by Yolanda completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
Lim L
5.0 3 years ago
Lim completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
Amaan C
5.0 3 years ago
Amaan is taking this course right now.
0 person found
this review helpful
Was this review helpful to you? Yes
Cristian C
4.0 3 years ago
by Cristian is taking this course right now.
0 person found
this review helpful
Was this review helpful to you? Yes
Klaas N
5.0 3 years ago
Klaas is taking this course right now.
0 person found
this review helpful
Was this review helpful to you? Yes
Peter M
5.0 3 years ago
by Peter completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
Niklas L
4.0 3 years ago
by Niklas completed this course.
0 person found
this review helpful
Was this review helpful to you? Yes
  • 1

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free

Never stop learning Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.