pwncollege
DojosLeaderboardCommunity
Back to cse365-f2025

Module 6

cse365-f2025
0/32 challenges completed

In this sixth module we will learn how memory corruption can be abused to completely take over a program.

Questions and Discussions (Discord)

  • Chat about the content: Core Material > #intro-to-cybersecurity
  • Create a forum post: Core Material > #core-material-forum

Binary Exploitation

Binary code is the truest version of source code, and the exploitation of binary code is one of the most advanced arts in cybersecurity. Here, you will learn this art: the first step in a subdiscipline that will blow your mind.

1
LECTURE: Introduction
2
LECTURE: High-Level Problems
3
LECTURE: Smashing the Stack
4
LECTURE: Causes of Corruption 1
5
LECTURE: Causes of Corruption 2
6
LECTURE: Stack Canaries
7
LECTURE: ASLR
8
LECTURE: Shellcode — Introduction
9
LECTURE: Shellcode — Common Challenges
10
LECTURE: Exploitation — Introduction
11
LECTURE: Hijacking to Shellcode
12
Your First Overflow (easy)
13
Your First Overflow (hard)
14
Precision (easy)
15
Precision (hard)
16
Variable Control (easy)
17
Variable Control (hard)
18
Control Hijack (easy)
19
Control Hijack (hard)
20
Tricky Control Hijack (easy)
21
Tricky Control Hijack (hard)
22
PIEs (easy)
23
PIEs (hard)
24
String Lengths (easy)
25
String Lengths (hard)
26
Basic Shellcode
27
NOP Sleds
28
NULL-Free Shellcode
29
Hijack to (Mapped) Shellcode (easy)
30
Hijack to (Mapped) Shellcode (hard)
31
Hijack to Shellcode (easy)
32
Hijack to Shellcode (hard)