Skip to content

Maccabim-CTF/zenysec-exploit-exercises

 
 

Repository files navigation

ZenySec-Exploit-Exercises

Exploit Exercises for Security Researchers

Infrastructure to create multi architecture environments with a collection of vulnerable binaries

Architectures

Armv7 (32bit)

exercises-arm32v7.zenysec.com

ch00 - Stack Buffer Overflow

ch01 - Stack Buffer Overflow

ch02 - Stack Buffer Overflow

ch03 - Return Oriented Programming

ch04 - Buffer Overflow

ch05 - Format String

ch06 - Shellcode

ch07 - Return Oriented Programming

ch08 - Return Oriented Programming

ch09 - Return Oriented Programming

ch10 - Shellcode

ch11 - Heap Buffer Overflow

ch12 - Use After Free

Intel i386 (32bit)

exercises-i386.zenysec.com

ch00 - Stack Buffer Overflow

ch01 - Stack Buffer Overflow

ch02 - Stack Buffer Overflow

ch03 - Return Oriented Programming

ch04 - Buffer Overflow

ch05 - Format String

ch06 - Shellcode

ch07 - Return Oriented Programming

ch08 - Shellcode

ch09 - Heap Buffer Overflow

ch10 - Use After Free

Prerequisites

Python 2.7
Docker

Getting Started

Example to generate i386 environment with ssh service on port 20000

git clone https://github.com/eLoopWoo/zenysec-exercises.git
cd zenysec-exercises
python main.py -d exercises-i386 -ca -r -p 20000 -a i386 -as no

Example to generate arm32v7 environment with ssh service on port 20000

git clone https://github.com/eLoopWoo/zenysec-exercises.git
cd zenysec-exercises
python main.py -d exercises-arm32v7 -ca -r -p 20000 -a arm32v7 -as no

The goal is to login via a basic user "exercise" and escalate privileges to a second user "exercise_root" and read the contents of a protected "flag" file. ( challenge name, user and password are equal in basic users )

Example for exercise ch00

user: ch00
password: ch00

user: ch00_root
password: default (unknown)

Compiled binaries located under "binaries" directory

Sources located under "exercises-architecture" directory (architecture dependant)

Todo's

  • Add more exercises ( integer, timing, heap corruption... )
  • Add exercises with different malloc implementations ( glibc, jemalloc... )
  • Add more architectures ( mips, risc-v, amd64... )

Help & Guidance

Create issues with the specific problem. Any further questions or requests Tweet me @tomereyz

Authors

  • Tomer Eyzenberg - Initial work - eLoopWoo

About

Exploit Exercises for Security Researchers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 73.6%
  • Python 23.5%
  • Shell 2.9%