Learning Series

Initiating Linux Binary Exploitation: A Beginner's Expedition into Code Manipulation

Join me on a riveting journey into the world of binary exploitation on Linux! In this series, we'll delve deep into the art of dissecting and exploiting binaries. From understanding vulnerabilities to crafting exploits, we'll navigate the Linux landscape together. Equip yourself with the skills needed to conquer binary challenges, and let's embark on this thrilling exploration of the inner workings of Linux systems! 🛠️ 💻 🔓

11
Articles
Learning
Start Learning
Initiating Linux Binary Exploitation: A Beginner's Expedition into Code Manipulation

All Articles

Explore all 11 articles in this series, ordered from oldest to newest

Embarking on the Exploration: Fundamentals of Binary Exploitation on Linux
#1

Embarking on the Exploration: Fundamentals of Binary Exploitation on Linux

Introduction Embarking on a journey to unravel the intricacies of binary exploitation techniques, I'm excited to share my experiences in this series. While it's admittedly one of the trickier topics to tackle, especially for beginners, I've decided to take the plunge in 2023! 😅 My guide of choic...

12 min read
Read More
Dancing with Functions: Unraveling the Assembler Function Convention in x32
#2

Dancing with Functions: Unraveling the Assembler Function Convention in x32

Explore x32 function calling, the dance of frame pointers, and the ballet of call instructions. Each segment crafts an eloquent narrative in the intricate performance on the stack. Witness the artistry of assembly language unfold.

5 min read
Read More
Decoding the Compiler: A Deep Dive into the Phases of C Code Compilation
#3

Decoding the Compiler: A Deep Dive into the Phases of C Code Compilation

The C compilation process encompasses preprocessing, compiling to assembly, assembly to machine code, linking object files, and managing libraries. Symbols are key for functions and variables. Each phase contributes to creating efficient software for C programmers

11 min read
Read More
Exploring ELF Binary Dynamics: Relocations and Sections in Depth
#4

Exploring ELF Binary Dynamics: Relocations and Sections in Depth

Explore ELF binaries in Linux: Understand disassembly, sections like .text, .init, and dynamic linking with PLT, GOT. Uncover memory management, variables in .bss, .data, .rodata, and delve into lazy binding for efficient, secure code execution

15 min read
Read More
Exploring Buffer Overflow Exploits: A Practical Guide with Dynamic Analysis
#5

Exploring Buffer Overflow Exploits: A Practical Guide with Dynamic Analysis

We explore vulnerable code, disabling defenses and utilizing radare2 for dynamic analysis. Focusing on 'strcpy' and 'Smash the Stack' attack, we manipulate a buffer to alter 'modified'. The article covers buffer overflow, debugging, and the significance of testing various payloads

12 min read
Read More
Shellcode Mastery: Crafting, Optimizing, and Debugging Assembler Code
#6

Shellcode Mastery: Crafting, Optimizing, and Debugging Assembler Code

"Explore shellcode development: Learn assembler programming for creating efficient, compact shellcodes, avoid null character issues, and use diagnostic tools like radare2 and strace for effective troubleshooting

15 min read
Read More
Exploiting Buffer Overflow: Crafting Interactive Shell Exploits with Shellcode
#7

Exploiting Buffer Overflow: Crafting Interactive Shell Exploits with Shellcode

This chapter combines shellcode knowledge and buffer overflow exploitation to gain shell access through a vulnerable program. It includes using pwndbg for detailed analysis and advanced pwntools for crafting effective exploits, bridging theory and practice.

12 min read
Read More
Advanced Exploits: Overcoming Restrictions with GOT and PLT
#8

Advanced Exploits: Overcoming Restrictions with GOT and PLT

Expanding Exploit Techniques: This chapter delves into complex exploit scenarios, utilizing GOT and PLT knowledge to bypass advanced code restrictions, enhancing our toolkit with dynamic function resolution strategies.

16 min read
Read More
Mastering Format String Exploits: A Comprehensive Guide
#9

Mastering Format String Exploits: A Comprehensive Guide

Explore the intricacies of format string vulnerabilities in C programming. Learn their risks, exploit development with radare2, and crafting Python exploits. Gain crucial insights into secure coding practices.

14 min read
Read More
Mastering Binary Exploitation: Unleashing the Power of Format String and Buffer Overflow
#10

Mastering Binary Exploitation: Unleashing the Power of Format String and Buffer Overflow

In this chapter, we explore binary exploitation, focusing on buffer overflow and format string vulnerabilities. Using radare2, we pinpoint key memory addresses and adjust character counts in our exploit, overcoming challenges like unexpected compiler behavior.

13 min read
Read More
ROP Magic: Exploiting Linux Binaries with ret2libc
#11

ROP Magic: Exploiting Linux Binaries with ret2libc

Discover the art of ROP in binary exploitation. From buffer overflows to crafting a "/bin/sh" execution using libc gadgets, this article provides insights into bypassing security measures and mastering exploit development with practical examples.

13 min read
Read More
Back to All Series