# Capstone Challenges

<details>

<summary>Table of Contents</summary>

* [Introduction](#introduction)
* [Directory Structure And Expectations](#directory-structure-and-expectations)
* [Challenges Listing](#challenges-listing)

</details>

## Introduction

As I rewrite everything on my blog, I've realized how lackluster the binary exploitation section was in particular. I fed you a lot of information with nothing to get your hands dirty with at the end. With binary exploitation being one of the most complicated subfields in hacking, exposure and hands-on experience is a *must*. Therefore, starting from this blog post onward in the binary exploitation section, I'll release capstone projects at the end of each post so that you have something to tinker with and experiment with.

## Directory Structure And Expectations

Inside of each challenge folder, you can find the following directory structure:

```
📁 challenge_folder
├── 📑 writeup
│   └── challenge_writeup.pdf 
└── 🔴 binary
    ├── challenge_binary
    └── supporting_file(s)_if_needed
```

Included with each challenge is a complete writeup of the challenge (written in $$\LaTeX$$, of course), the challenge binary itself and if needed for the challenge, supporting files such as specific `glibc` versions and what have you.

{% hint style="danger" %}
Although there's a dedicated writeup included for each challenge, it's important to mention that you should try the challenge yourself and get as far as you can. After you've exhausted all possible resources (searching, asking a friend if searches yield nothing, etc.), you should then use the writeup as a learning resource. Don't simply rely on it because you *will* atrophy your binary exploitation skills.
{% endhint %}

## Challenges Listing

{% content-ref url="/pages/0ILlGN7HjjODOCXrOHlZ" %}
[Challenge Glossary](/nest/binexp/capstone-challenges/challenge-glossary.md)
{% endcontent-ref %}


---

# Agent Instructions: 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:

```
GET https://archive.crow.rip/nest/binexp/capstone-challenges.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
