Binary Jiujitsu 26 Workshop: Difference between revisions

From HOPE Wiki
No edit summary
No edit summary
 
(2 intermediate revisions by one other user not shown)
Line 3: Line 3:
== Abstract ==
== Abstract ==


Binary Jiujitsu: White Belt Fundamentals is the entry point of the platform’s belt progression, taking students from zero binary-exploitation experience to their first working exploit against 32-bit x86 binaries with no protections enabled. It’ s organized into four stripes that build sequentially: Binaries and Memory (ELF layout, process memory, the stack, registers, and calling conventions); Finding the Vulnerability (spotting unsafe C functions, source auditing, and disassembly with objdump/GDB); Crashing and Control Flow Hijacking (triggering crashes, using cyclic patterns to find the offset, and confirming EIP control); and Exploitation (the ret2win pattern and weaponizing control-flow hijacking into a working payload with pwntools). Every lesson is paired with a hands-on challenge binary, students write scripts and work with real tools throughout rather than absorbing theory upfront, and the whole thing runs entirely in-browser with no VM or local setup required. The workshop version is instructor-guided and closes with a Blue Belt test CTF.
Binary Jiujitsu is binary exploitation as a martial art. Modeled after Brazilian Jiujitsu, Binary Jiujitsu takes fundamental concepts and incrementally builds on each tool, skill, and technique until practitioners are capable of identifying vulnerabilities, crafting exploits, and overcoming protection mechanisms that are designed to stop exploitation. Each belt represents a collection of skills and capabilities proven through hands-on training.
 
White Belt Fundamentals is a hands-on introduction to binary exploitation, taking students from zero binary exploitation experience to exploiting their first buffer overflow.
 
Stripe 1: Computer Architecture Basics
Stripe 2: Identifying points of interest
Stripe 3: Testing vulnerabilities
Stripe 4: Developing proof of concept exploits
 
== Prerequisites ==
 
* Understand basic programming concepts (loops, conditionals, i/o)
* Willingness to ask questions
* Grit
* Curiosity


== Day / Time / Location ==
== Day / Time / Location ==


Day 1, Friday, 14-August-2026, 6:30pm - 10pm<br>
Day 1, Friday, 14-August-2026, 6:30pm - 10:00pm<br>
Workshop A (Sutton Place, third floor)
Workshop A (Sutton Place, third floor)


== Full Description ==
== Full Description ==


[optional: put your longer description here]
What Belt Fundamentals gets students exploiting binaries from the very beginning. All tooling and environment is provided to students in the browser, eliminating the need to install VMs or configure tooling which takes time and can be complicated to troubleshoot.
 
Stripe 1 covers basic computer architecture concepts necessary to understand exploitation.
* Endianness and the hexadecimal number system
* Introduction to x86 assembly
* Registers
* How the stack works
 
Stripe 2 covers how POIs (points of interest) are identified.
* Vulnerable functions in C
* Reading source code
* Reverse Engineering concepts
 
Stripe 3 covers how POIs are tested.
* Static analysis with decompilers and disassemblers
* Dynamic analysis with GDB
* Interacting with the application with pwntools
 
Stripe 4 covers exploit development
* Writing pwntools scripts for buffer overflows
* Troubleshooting when an exploit fails
* Ret2win and gaining control of EIP/RIP
* Overwriting local variables
 
Belt test: The workshop ends with a belt test. Players who complete the belt test will be promoted to Blue Belt in Binary Jiujitsu.
 
The workshop is also a CTF! Complete challenges and lesson content to score points on a leaderboard with your fellow students. Top three players by 5:30pm on Sunday win Binary Jiujitsu placement medals.


== Registration -- NOT required ==  
== Registration -- NOT required ==  


<span style="color:orange">'''NOTE:  You do NOT need to register to take this workshop<br>-- please show up early to ensure a seat at the WORKSHOP XXXX room (in Sutton Place, on the third floor).'''<br>
<span style="color:orange">'''NOTE:  You do NOT need to register to take this workshop<br>-- please show up early to ensure a seat at the WORKSHOP A room (in Sutton Place, on the third floor).'''<br>


== Presenter(s) ==
== Presenter(s) ==
Line 27: Line 67:
Observers are welcome at no cost.<br>
Observers are welcome at no cost.<br>
'''To do the hands-on portion for this workshop:<br>
'''To do the hands-on portion for this workshop:<br>
'''Materials Cost: optional: $20'''<br>
'''Materials Cost: optional: $20 for an electronic belt badge'''<br>


== Required Software / What to bring ==
== Required Software / What to bring ==


[example: Bring laptop, if you can, with Arduino software installed.]
Laptop with a browser and ability to connect to WiFi


== Links ==
== Links ==


[put helpful links here]
For students who aren't sure that they have the prerequisite knowledge necessary, please sign up at www.binaryjiujitsu.com and complete the Gray Belt content.

Latest revision as of 23:07, 31 July 2026

Binary Jiujitsu: White Belt Fundamentals workshop

Abstract

Binary Jiujitsu is binary exploitation as a martial art. Modeled after Brazilian Jiujitsu, Binary Jiujitsu takes fundamental concepts and incrementally builds on each tool, skill, and technique until practitioners are capable of identifying vulnerabilities, crafting exploits, and overcoming protection mechanisms that are designed to stop exploitation. Each belt represents a collection of skills and capabilities proven through hands-on training.

White Belt Fundamentals is a hands-on introduction to binary exploitation, taking students from zero binary exploitation experience to exploiting their first buffer overflow.

Stripe 1: Computer Architecture Basics Stripe 2: Identifying points of interest Stripe 3: Testing vulnerabilities Stripe 4: Developing proof of concept exploits

Prerequisites

  • Understand basic programming concepts (loops, conditionals, i/o)
  • Willingness to ask questions
  • Grit
  • Curiosity

Day / Time / Location

Day 1, Friday, 14-August-2026, 6:30pm - 10:00pm
Workshop A (Sutton Place, third floor)

Full Description

What Belt Fundamentals gets students exploiting binaries from the very beginning. All tooling and environment is provided to students in the browser, eliminating the need to install VMs or configure tooling which takes time and can be complicated to troubleshoot.

Stripe 1 covers basic computer architecture concepts necessary to understand exploitation.

  • Endianness and the hexadecimal number system
  • Introduction to x86 assembly
  • Registers
  • How the stack works

Stripe 2 covers how POIs (points of interest) are identified.

  • Vulnerable functions in C
  • Reading source code
  • Reverse Engineering concepts

Stripe 3 covers how POIs are tested.

  • Static analysis with decompilers and disassemblers
  • Dynamic analysis with GDB
  • Interacting with the application with pwntools

Stripe 4 covers exploit development

  • Writing pwntools scripts for buffer overflows
  • Troubleshooting when an exploit fails
  • Ret2win and gaining control of EIP/RIP
  • Overwriting local variables

Belt test: The workshop ends with a belt test. Players who complete the belt test will be promoted to Blue Belt in Binary Jiujitsu.

The workshop is also a CTF! Complete challenges and lesson content to score points on a leaderboard with your fellow students. Top three players by 5:30pm on Sunday win Binary Jiujitsu placement medals.

Registration -- NOT required

NOTE: You do NOT need to register to take this workshop
-- please show up early to ensure a seat at the WORKSHOP A room (in Sutton Place, on the third floor).

Presenter(s)

Nyt3jmp

Materials

Any materials needed to participate in this workshop will be available at-cost.
Observers are welcome at no cost.
To do the hands-on portion for this workshop:
Materials Cost: optional: $20 for an electronic belt badge

Required Software / What to bring

Laptop with a browser and ability to connect to WiFi

Links

For students who aren't sure that they have the prerequisite knowledge necessary, please sign up at www.binaryjiujitsu.com and complete the Gray Belt content.