RE
Reverse Engineering Basics
Start from the byte: hexadecimal, byte order and bitwise operations, then reading file structures, extracting strings and breaking XOR.
Start the trackFree, no sign-up needed
What you'll learn
- Reverse engineering and bytesA program is bytes, and a byte is a number from 0 to 255
- Hexadecimal notationA byte is two hex digits
- Byte orderThe same number stored two ways in memory
- Bitwise operationsMasks and shifts take a byte apart
- Reading structuresRead header fields with the struct module
- Reading a real file headerGet a PNG image's width and height from its bytes
- Identifying files by their signaturesThe first few bytes reveal a file's format
- Extracting stringsThe readable text among the bytes
- Breaking XOR encryptionUndo XOR and try every key
Track contents
9 lessons, 2 hours in total- 1Reverse engineering and bytesREA program is bytes, and a byte is a number from 0 to 25510 min
- 2Hexadecimal notationREA byte is two hex digits12 min
- 3Byte orderREThe same number stored two ways in memory13 min
- 4Bitwise operationsREMasks and shifts take a byte apart13 min
- 5Reading structuresRERead header fields with the struct module15 min
- 6Reading a real file headerREGet a PNG image's width and height from its bytes14 min
- 7Identifying files by their signaturesREThe first few bytes reveal a file's format13 min
- 8Extracting stringsREThe readable text among the bytes15 min
- 9Breaking XOR encryptionREUndo XOR and try every key15 min
More Reverse Engineering tracks
All tracks- REIntermediate
Program Analysis
Read assembly, calling conventions and control flow, then build a disassembler and an emulator for a tiny machine, patch its bytes and check their integrity.
8 lessons2 hours - REAdvanced
Reverse Engineering Challenges
Six challenges of rising difficulty where you reverse a check function or bytecode and extract the key with your own code, not by copying it.
6 lessons2 hours