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

Vulnerabilidades y pruebas de penetración (Coursera) Coursera
Universidad de los Andes

Vulnerabilidades y pruebas de penetración (Coursera)

El curso Vulnerabilidades y pruebas de penetración busca que identifiques los conceptos de detección de vulnerabilidades y amenazas, los fundamentos de los ciberataques y de pruebas de penetración a sistemas. Este curso se desarrolla en cuatro (4) módulos en donde aprenderás a cómo Identificar las vulnerabilidades y amenazas de los ciberataques, recopilar la información disponible de la organización y los sistemas objetivo y la posterior identificación de los activos de información y las posibles amenazas, revisar como realizar la explotación de las vulnerabilidades de los sistemas para irrumpir en el mismo y poder acceder a los activos de información; es decir establecer el acceso a un sistema o recurso, determinar el valor del sistema comprometido y mantener el control para su uso posterior, y revisar como realizar la explotación de las vulnerabilidades de los servidores y las aplicaciones web.

Aug 3rd 2026
4 Weeks
The Arduino Platform and C Programming (Coursera) Coursera
University of California, Irvine

The Arduino Platform and C Programming (Coursera)

The Arduino is an open-source computer hardware/software platform for building digital devices and interactive objects that can sense and control the physical world around them. In this class you will learn how the Arduino platform works in terms of the physical board and libraries and the IDE (integrated development environment). You will also learn about shields, which are smaller boards that plug into the main Arduino board to perform other functions such as sensing light, heat, GPS tracking, or providing a user interface display. The course will also cover programming the Arduino using C code and accessing the pins on the board via the software to control external devices.

Aug 3rd 2026
4 Weeks
Network Security - Introduction to Network Security (edX) EdX
New York University,NYUx

Network Security - Introduction to Network Security (edX)

Learn fundamentals of network security, including a deep dive into how networks are attacked by malicious users. This is a self-paced course that provides an introduction to network security topics. The curriculum focusses on how malicious users attack networks. The material is essential in later classes that will develop ethical hacking skills. Students are introduced to some key concepts in network security. Next, we provide an overview of network reconnaissance strategies.

Self Paced
Self-Paced
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
Software Engineering: Implementation and Testing (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Software Engineering: Implementation and Testing (Coursera)

Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the implementation and testing phases of SDLC, and you will examine different software development processes for large software systems development, and understand the strengths (pros) and weaknesses (cons) of different software development processes.

Aug 3rd 2026
5-12 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.

Jul 27th 2026
4 Weeks
Writing, Running, and Fixing Code in C (Coursera) Coursera
Duke University

Writing, Running, and Fixing Code in C (Coursera)

Building on the course Programming Fundamentals, this course will teach you how to write code by first planning what your program should do—an important approach for novice and professional programmers. You will learn how to compile and run your program, and then how to test and debug it. This course builds on the Seven Steps you have already learned and provides a framework for systematically testing for problems and fixing them, so you can find and fix problems efficiently.

Jul 27th 2026
4 Weeks
IBM COBOL Basic Testing and Debugging (Coursera) Coursera
IBM,LearnQuest

IBM COBOL Basic Testing and Debugging (Coursera)

Welcome to IBM COBOL – Basic Testing and Debugging! By enrolling in this course, you are taking a big step in increasing your knowledge and hands on experience with IBM COBOL testing and debugging topics and technologies. In this course, you will describe common errors associated with working with COBOL. You will list file status codes. You will also describe the process of debugging COBOL code. So let’s get started!

Jul 27th 2026
5-12 Weeks
Proactive Computer Security (Coursera) Coursera
University of Colorado System

Proactive Computer Security (Coursera)

I’ve heard this before – “I’m not sure my computer security practices are working”. I reply “Have you tested them?” This course is the fourth and final course in the Practical Computer Security specialization. In this course, you’ll learn how to proactively test what you have put in place to protect your data. In the first week you’ll be able to discuss the basics of deterrents and how to “trick” attackers into believing they’ve hit a goldmine of data away from your real systems. In week 2, you’ll be able to understand and discuss the steps of penetration testing methodology.

Aug 3rd 2026
5-12 Weeks
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.

Jul 27th 2026
4 Weeks
Modeling and Debugging Embedded Systems (Coursera) Coursera
University of Colorado Boulder

Modeling and Debugging Embedded Systems (Coursera)

This is part 3 of the specialization. In this course students will learn : * About SystemC and how it can be used to create models of cyber-physical systems in order to perform "what-if" scenarios; * About Trimble Engineering's embedded systems for heavy equipment automation; * A deeper understanding of embedded systems in the Automotive and Transportation market segment; * How to debug deeply embedded systems; * About Lauterbach's TRACE32 debugging tools; * How to promote technical ideas within a company; * What can be learned from studying engineering failures.

Jul 27th 2026
4 Weeks
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).

Jul 27th 2026
5-12 Weeks