pwncollege
DojosLeaderboardCommunity
Back to cse365-f2024

Reverse Engineering

cse365-f2024
0/21 challenges completed

Welcome to your introduction to Reverse Engineering! Reverse Engineering is a critial art that you will evolve during your journey through pwn.college, and this journey starts here with the Connor Image Format, cIMG. You have never heard of cIMG before, and it does not actually exist in the wider world, but throughout this module you will reverse engineer it by analyzing various iterations of cIMG rendering binaries. By the time you solve the last level, you will have gone from no knowledge about cIMG to complete understanding of it, a path that you will walk many times with many different programs.

Reverse Engineering: Introduction
Video
Slides
Fundamentals: Binary Files
Video
Slides
Fundamentals: Linux Process Loading
Video
Slides
Fundamentals: Linux Process Execution
Video
Slides
Reverse Engineering: Functions and Frames
Video
Slides
Reverse Engineering: Data Access
Video
Slides
Reverse Engineering: Static Tools
Video
Slides
Reverse Engineering: Dynamic Tools
Video
Slides
Reverse Engineering: Real-world Applications
Video
Slides
Other Resources
Useful Tools
1
File Formats: Magic Numbers
2
Reading Endianness
3
Version Information
4
Metadata and Data
5
Input Restrictions
6
Behold the cIMG!
7
A Basic cIMG
8
Internal State
9
File Formats: Directives
10
The Patch Directive
11
Optimizing for Space
12
Tweaking Images
13
Storage and Retrieval
14
Extracting Knowledge
15
Advanced Sprites
16
Accessing Resources
17
Unsafe Animations
18
Animations
19
Interoperability: Patching Data
20
Patching Code
21
Patching Control Flow