Heappy : A Happy Heap Editor To Support Your Exploitation Process

Heappy is an editor based on gdb/gef that helps you to handle the heap during your exploitation development.
The project should be considered a didactic tool useful to understand the evolution of the heap during the process life cycle. It has been created to simplify the study of the most common heap exploitation techniques and to support you to solve some binary exploitation CTFs related to this fantastic topic.

Main Features

This is what Heappy implements:
   ✅ take heap snapshots and compare them each other
   ✅ recognize immediately type and fields of heap bins
   ✅ search and edit heap values by decimal, hex or string
   ✅ find yourself with the panoramic view of the heap status
   ✅ take notes about a cell in the comment column
   ✅ enjoy the light and dark mode

Getting Started

These instructions will help you to install and run Heappy fastly.

Prerequisites

If you don’t have it, install GEF in GDB:

wget -q -O- https://github.com/hugsy/gef/raw/master/scripts/gef.sh | sh

md5(gef.sh): eb053864d050048cb001c80c79fde7b5

Installing

Install Node.js and npm:

apt update
sudo apt install nodejs npm

Download and install Heappy:

git clone https://github.com/gand3lf/heappy
cd heappy/
npm install

Load the server inside GDB:

gef➤ source /my/path/heappy/server/heappy.py

It is suggested to run the Heappy GUI after that the target heap has been initialized.
For example:

gef➤ break main
gef➤ run

From another terminal launch the GUI:

cd /my/path/heappy/
npm start

R K

Recent Posts

Cybersecurity – Tools And Their Function

Cybersecurity tools play a critical role in safeguarding digital assets, systems, and networks from malicious…

16 hours ago

MODeflattener – Miasm’s OLLVM Deflattener

MODeflattener is a specialized tool designed to reverse OLLVM's control flow flattening obfuscation through static…

16 hours ago

My Awesome List : Tools And Their Functions

"My Awesome List" is a curated collection of tools, libraries, and resources spanning various domains…

16 hours ago

Chrome Browser Exploitation, Part 3 : Analyzing And Exploiting CVE-2018-17463

CVE-2018-17463, a type confusion vulnerability in Chrome’s V8 JavaScript engine, allowed attackers to execute arbitrary…

16 hours ago

Chrome Browser Exploitation, Part 1 : Introduction To V8 And JavaScript Internals

The blog post "Chrome Browser Exploitation, Part 1: Introduction to V8 and JavaScript Internals" provides…

16 hours ago

Chrome Browser Exploitation, Part 3: Analyzing and Exploiting CVE-2018-17463

The exploitation of CVE-2018-17463, a type confusion vulnerability in Chrome’s V8 JavaScript engine, relies on…

19 hours ago