Vulnerability research training

Learn to identify, analyse and exploit software vulnerabilities on Linux. Through demonstrations and hands-on workshops, master the main memory corruption flaws, modern protection mechanisms and the essential tools of exploit development.

OFD-220 · Intermediate · 1.5 days · 10 participants max. · Demos + exploitation

Why train in vulnerability research?

Understanding how a vulnerability is discovered and turned into an exploit makes software risk easier to anticipate. This course gives offensive and defensive teams the grounding they need to analyse flaws in depth and better assess their real impact.

You will discover the main classes of vulnerabilities, exploitation mechanisms on Linux and the modern protections that make writing an exploit harder. The aim is to understand the whole path, from spotting vulnerable behaviour to building a working proof of concept.

The approach combines focused input, live demonstrations and workshops on deliberately vulnerable binaries. Each technique is set against the fixes and secure development practices that reduce the risk for the long term.

Stack · vuln.c:12CWE-121buffer[64]41 41 41 41 41 41 41 …rbp-0x40saved rbp41 41 41 41 …rbpreturn address42 42 42 42 …rbp+8"A" × 72 + "B" × 8NXonASLRonCanaryoffPIEoff$ ./vuln "$(python3 -c 'print("A"*72 + "B"*8)')"Segmentation fault (core dumped)$ gdb -q ./vuln coreProgram terminated with signal SIGSEGV.#0 0x4242424242424242 in ?? ()

On the programme

  • CWE · CVE · CVSS
  • Memory corruption
  • Exploit development
  • Fuzzing & patch diffing

What you will be able to put into practice

By the end of the course, you will be able to:

  • Master

    the fundamentals of vulnerability research, using the notions of vulnerability, exploit, CWE, CVE and CVSS scoring correctly.

  • Identify

    and analyse the main memory flaws such as buffer overflows, format strings, out-of-bounds reads and writes, double free and use-after-free.

  • Build

    the successive stages of an exploit on Linux, understanding how memory, the vulnerable process and exploitation primitives work.

  • Understand

    the impact of modern protections such as NX, ASLR, Canary, RelRO and PIE, and discover the approaches used to bypass them.

  • Use

    the essential analysis and exploitation tools, including Ghidra, IDA, GDB and pwntools, to examine a binary and automate a proof of concept.

  • Apply

    effective vulnerability discovery strategies through library analysis, identification of risky functions, patch diffing, fuzzing and advanced analysis techniques.

The format in practice

Duration

1.5 days

Group size

10 max.

10 participants max. · 2 trainers recommended

Format

  • Focused input
  • Live demonstrations
  • Analysis and exploitation workshops

Prerequisites

  • Good command of Linux
  • Knowledge of C and Python
  • Notions of CPU architecture and memory
  • Intel assembly recommended
OFD-220IntermediateVulnerability research

Certification

Individual results shared after the final assessment

Each participant receives this digital badge in their name, level 2 of 3 in the Offensive & defensive series.

Assessment

  • Continuous assessment
  • Final case on an unseen binary: find the flaw, build an exploit and propose a fix

Who it is for

  • Security engineers
  • Pentesters and Red Teamers
  • Developers
  • SOC and CERT analysts

Methods

  • Live demonstrations
  • Progressive exercises
  • Analysis of vulnerable binaries
  • Preconfigured virtual machines

Materials

  • Course materials
  • Practical sheets
  • Tooled VMs
  • Binaries and source code
  • Python scripts
  • Access for 30 days

Practice

  • Offensive security
  • Vulnerability research
  • Exploit development

Build real expertise in vulnerability research

Let's build a path around your teams' level, the environments you use and the skills you want to develop in binary analysis and exploit development.