Adapted from the PoC of David Buchanan : GitHub link
This tool is designed to restore hidden data in PNG files using acropalypse vulnerability. It can detect and display the trailing bytes length, delete hidden data, or restore hidden data and create a new PNG image.
This uses bruteforce to restore the image, without requiring the original dimension
- Python 3.6 or higher
- Pillow (PIL)
- NumPy
You can install these dependencies using the following command:
pip install pillow numpy
The tool can be used with the following command line options:
- Detect the vulnerability and display the trailing bytes length:
python acropalypse_png.py detect <cropped_png>
- Delete the hidden data:
python acropalypse_png.py delete <cropped_png> <output_png>
- Restore the hidden data and create a new PNG image:
python acropalypse_png.py restore <type_exploit> <cropped_png> <reconstructed_png>
Where <type_exploit> can be either pixel or windows.