> For the complete documentation index, see [llms.txt](https://alham-rizvi.gitbook.io/alhamrizvi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://alham-rizvi.gitbook.io/alhamrizvi/binary-exp/readme.md).

# Binary Exploitation Learning Repository

Hey everyone 👋

I’m currently learning **Binary Exploitation** and related security concepts over the next few months, and this repository is my public learning log.

Everything I learn from basics to advanced techniques—will be documented here in a structured way.

## 📚 Table of Contents

* [What this repo contains](#-what-this-repo-contains)
* [Lab Structure](#-lab-structure)
* [Goal of this repo](#-goal-of-this-repo)
* [Getting Started](#-getting-started)
* [Progress](#-progress)
* [Contributing](#-contributing)
* [Disclaimer](#-disclaimer)

## 📚 What this repo contains

* Step-by-step learning notes on Binary Exploitation
* Practical examples and vulnerable programs
* Free hands-on labs created by me
* Writeups for each challenge
* Exploitation techniques explained in a simple way

## 🧪 Lab Structure

For every topic, you will find:

* 3 custom challenges (Easy → Medium → Hard)
* Source code of vulnerable programs
* Setup instructions
* `solution.md` explaining the exploitation step-by-step

You are expected to **set up the lab environment yourself** before solving the challenges.

## 🎯 Goal of this repo

This repo is meant to help learners:

* Understand how vulnerabilities actually work
* Practice exploitation in a safe environment
* Build intuition for real-world security bugs
* Improve problem-solving in CTF-style scenarios

## 🚀 Getting Started

1. Clone the repository:

   ```bash
   git clone https://github.com/alhamrizvi-cloud/Binary-Exploitation.git
   cd Binary-Exploitation
   ```
2. Set up your environment (GCC, GDB, etc.)
3. Start with the basics in `01. Basics.md`

## 🚀 Progress

I’ll keep updating this repo regularly as I learn new concepts like:

* Stack-based exploitation
* Buffer overflows
* Format string bugs
* Return-oriented programming (ROP)
* Linux exploitation basics

## 🤝 Contributing / Learning Together

Contributions are welcome! If you find any issues or have suggestions:

* Open an issue
* Submit a pull request
* Share your solutions or improvements

Feel free to follow along, fork the repo, and learn with me.\
If you're also learning, you can try solving the challenges and compare approaches.

## ⚠️ Disclaimer

All content in this repository is strictly for **educational purposes only**.\
Do not use these techniques on real systems without proper authorization.

Let’s learn binary exploitation step by step 🔥


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://alham-rizvi.gitbook.io/alhamrizvi/binary-exp/readme.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
