Skip to content

Sleleu/Rainfall

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About this project

This is a cybersecurity project of 42 school, following in the footsteps of the snow-crash project, aims to familiarize oneself with binary exploitation.

Several notions are covered in this project, including:

  • Basics of reverse engineering
  • Stack / heap buffer overflow
  • Buffer overflow via environment variables
  • GOT overwrite
  • Format string attack vulnerabilities
  • Use of gdb
  • Understanding assembly (a bit 🙃)
	  _____       _       ______    _ _ 
	 |  __ \     (_)     |  ____|  | | |
	 | |__) |__ _ _ _ __ | |__ __ _| | |
	 |  _  /  _` | | '_ \|  __/ _` | | |
	 | | \ \ (_| | | | | | | | (_| | | |
	 |_|  \_\__,_|_|_| |_|_|  \__,_|_|_|

                 Good luck & Have fun

  To start, ssh with level0/level0 on 10.0.2.15:4242

This project is presented in the form of a virtual machine with 14 levels available. Each level contains a binary in the user's /home directory. The objective is to exploit this binary in order to progress to the next level.

Each level should have a folder containing:

  • The flag that allows access to the user of the next level
  • Source code obtained from the decompiled executable, providing a better understanding of the binary's structure to be exploited
  • A walkthrough describing the steps to successfully exploit it

Many challenges, after identifying how to exploit the vulnerability through the debugger, assembly instructions, and decompiled code, will look like this:

(python -c "print('A' * 76 + '\x44\x84\x04\x08')"; cat) | ./binary <== poof 💣
Good... Wait what? <== 💀
whoami
levelup
cat /home/user/levelup/.pass
{flag} <== 🚩

Ressources

Here are some resources that can be helpful:

Find offset

Online decompiler

Shellcode used

Buffer overflow basics

Assembly basics

Format string attack

Got overwrite

About

This project is an introduction to the exploitation of (elf-like) binary.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages