EdX

Penetration Testing - Exploitation (edX)

Offered by New York University, NYUx,
Penetration Testing - Exploitation (edX)

Learn exploitation phase of penetration testing, including the foundations of explorations, application debugging, reverse engineering, exploitation development and web application exploitation. This is a self-paced course that continues the development of ethical hacking skills. The curriculum provides an introduction to the exploitation phase of penetration testing topics. Among the topics covered are foundations of explorations, application debugging, reverse engineering, exploitation development, and web application exploitation.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

This is the 8th course in the intermediate, undergraduate-level offering that makes up the larger Cybersecurity Fundamentals MicroBachelors Program. We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

These topics build upon the learnings that are taught in the introductory-level Computer Science Fundamentals MicroBachelors program, offered by the same instructor.
In this class, students learn the third phase of penetration testing; exploitation. In the exploitation phase, the penetration testers try to exploit security weaknesses actively. Exploits are developed to, for example, gather sensitive information or to enable the ethical hacker to compromise a system and manifest themselves on it. Once a device is successfully compromised, it is quite often possible to penetrate more systems because the malicious users now have access to more potential targets that were not available before. The additional marks are accessible because the compromised system can interact with internal devices that are not accessible from the Internet. For any new targets, the reconnaissance and enumeration phases are re-entered, to gather information about these new systems and exploit them.

What you'll learn

  1. Apply methodology to penetration tests to ensure they are consistent, reproducible, rigorous, and under quality control.
  2. Analyze the results from automated testing tools to validate findings, determine their business impact, and eliminate false positives.
  3. Discover key application flaws.
  4. Use programming to create testing and exploitation scripts during a penetration test.
  5. Discover and exploit SQL Injection flaws to determine true risk to the victim organization.
  6. Create configurations and test payloads within other web attacks.
  7. Fuzz potential inputs for injection attacks.
  8. Explain the impact of exploitation of application flaws.
  9. Analyze traffic between the client and server application using tools.
  10. Discover and exploit Cross-Site Request Forgery (CSRF) attacks.

Syllabus

Week 1 - Exploitation Pt 1 - Foundations
Week 2 - Exploitation Pt 2 – App Debugging Reversing, and Exploit Development
Week 3 - Exploitation – Web App Pt 1
Week 4 - Exploitation – Web App Pt 2
Week 5 - Final Exam

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Introduction to Visual Basic Programming (Coursera) Coursera
LearnQuest

Introduction to Visual Basic Programming (Coursera)

This course is the second course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the five main concepts in procedural programming: user input, console output, variable declaration and assignment, decision branching and iteration. Labs will allow the students to apply the material in the lectures in simple computer programs designed to re-enforce the material in the lesson.

Jun 1st 2026
4 Weeks
Introduction to Java Programming: Writing Good Code (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Writing Good Code (edX)

Learn to program in an easy and interactive way and enter the fascinating world of computer science. This is an introductory course to learn programming with Java designed to teach how to code good programs in Java, understanding “good” as both correct and efficient. Basic principles of software engineering will be introduced to make it easier for our future self and others to reuse code. Ethical issues and the intellectual property of our programs will also be addressed in the last part of this course. Examples and case studies will be provided, so that learners can implement simple but increasingly complex programs in Java.

Self Paced
Self-Paced
Algorithmic Toolbox (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Algorithmic Toolbox (Coursera)

The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming. We will learn a lot of theory: how to sort data and how it helps for searching; how to break a large problem into pieces and solve them recursively; when it makes sense to proceed greedily; how dynamic programming is used in genomic studies. You will practice solving computational problems, designing new algorithms, and implementing solutions efficiently (so that they run in less than a second).

Jun 8th 2026
5-12 Weeks
Troubleshooting and Debugging Techniques (Coursera) Coursera
Google

Troubleshooting and Debugging Techniques (Coursera)

In this course, we'll give you the tools to quickly identify and solve real-world problems that you might come across in your IT role. We'll look at a bunch of different strategies and approaches for tackling the most common pitfalls of your code and IT infrastructure. You'll learn strategies for approaching almost any technical problem and then see how those apply to solving different real-world scenarios.

Jun 9th 2026
4 Weeks
Excel/VBA for Creative Problem Solving, Part 1 (Coursera) Coursera
University of Colorado Boulder

Excel/VBA for Creative Problem Solving, Part 1 (Coursera)

Excel/VBA for Creative Problem Solving, Part 1" is aimed at learners who are seeking to augment, expand, optimize, and increase the efficiency of their Excel spreadsheet skills by tapping into the powerful programming, automation, and customization capabilities available with Visual Basic for Applications (VBA).

Jun 1st 2026
5-12 Weeks
Introduction to Computer Science and Programming Using Python (edX) EdX
MIT,MITx

Introduction to Computer Science and Programming Using Python (edX)

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5. This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems.

Jan 24th 2024
5-12 Weeks
APIs (Coursera) Coursera
Meta

APIs (Coursera)

Delve deeper into the processes and concepts behind APIs and their infrastructure. Explore the key concepts that underpin API development and the principles of representational state transfer architectural style (REST) architecture. Build basic API and REST data backbones for web apps using Django. Discover emerging API technology and practice other ways to build and work with APIs. Finally, you will test, optimize and develop documentation for an API.

Jun 8th 2026
4 Weeks
Python Programming Essentials (Coursera) Coursera
Rice University

Python Programming Essentials (Coursera)

This course will introduce you to the wonderful world of Python programming! We'll learn about the essential elements of programming and how to construct basic Python programs. We will cover expressions, variables, functions, logic, and conditionals, which are foundational concepts in computer programming. We will also teach you how to use Python modules, which enable you to benefit from the vast array of functionality that is already a part of the Python language. These concepts and skills will help you to begin to think like a computer programmer and to understand how to go about writing Python programs.

Jun 1st 2026
4 Weeks