An open API service indexing awesome lists of open source software.

https://github.com/dnakov/aor-2024

Advent of Radare2 2024 Solutions - Complete educational solutions for all 25 days
https://github.com/dnakov/aor-2024

Last synced: about 1 year ago
JSON representation

Advent of Radare2 2024 Solutions - Complete educational solutions for all 25 days

Awesome Lists containing this project

README

          

# Advent of Radare2 2024 Solutions

This repository contains solutions for the Advent of Radare2 2024 (AOR24) challenges.

## About AOR24

Advent of Radare2 is a community challenge created by pancake from r2land, featuring 25 daily challenges throughout December to help learn and master the radare2 reverse engineering framework.

## Project Structure

```
advent-radare2024/
├── challenges/ # Individual challenge directories (01-25)
│ ├── 01/ # Day 1: Identifying architecture
│ ├── 02/ # Day 2: Breaking into main function
│ └── ... # Days 3-25
├── scripts/ # Utility scripts for common r2 operations
├── docs/ # Additional documentation and notes
└── challenges.md # Full list of challenges
```

## Getting Started

### Prerequisites

- radare2 (latest version recommended)
- Python 3.x (for automation scripts)
- Basic knowledge of assembly and reverse engineering

### Installation

1. Install radare2:
```bash
git clone https://github.com/radareorg/radare2
cd radare2
sys/install.sh
```

2. Clone this repository:
```bash
git clone [your-repo-url]
cd advent-radare2024
```

## Challenge Progress

- [ ] Day 01: Identifying architecture
- [ ] Day 02: Breaking into main function
- [ ] Day 03: Finding all functions
- [ ] Day 04: Searching strings
- [ ] Day 05: Hexadecimal dumps
- [ ] Day 06: Finding references
- [ ] Day 07: Symbolicating
- [ ] Day 08: SVD Files
- [ ] Day 09: ARM Analysis
- [ ] Day 10: Got Root?
- [ ] Day 11: Binlimp
- [ ] Day 12: Emulation with ESIL
- [ ] Day 13: Moving around
- [ ] Day 14: Custom settings
- [ ] Day 15: Diffing code
- [ ] Day 16: Reversing with AI
- [ ] Day 17: Breakpoints and registers
- [ ] Day 18: Hello Papi
- [ ] Day 19: Function bytes
- [ ] Day 20: Welcome Contributors
- [ ] Day 21: Diffing for Coins
- [ ] Day 22: Parsing Headers
- [ ] Day 23: Memory Layouts
- [ ] Day 24: Tracing Functions
- [ ] Day 25: Merry Xrefmas

## Useful radare2 Commands

```bash
# Basic analysis
r2 -A binary # Analyze all
r2 -AA binary # Analyze all (experimental)

# Common commands
aaa # Analyze all
afl # List functions
pdf @ main # Disassemble function
iz # List strings
axt @ sym.func # Find references to function
```

## Resources

- [Official AOR24 Website](https://rada.re/advent/)
- [radare2 Documentation](https://book.rada.re/)
- [radare2 GitHub](https://github.com/radareorg/radare2)
- Hashtag: #aor24

## Contributing

Feel free to share your solutions and discuss challenges using the #aor24 hashtag!