/CVE-2022-44268-MagiLeak

Tools for working with ImageMagick to handle arbitrary file read vulnerabilities. Generate, read, and apply profile information to PNG files using a command-line interface.

Primary LanguagePythonCreative Commons Zero v1.0 UniversalCC0-1.0

ImageMagick Arbitrary Read Files - CVE-2022-44268

This repository contains a proof-of-concept (PoC) code for exploiting the arbitrary file read vulnerability (CVE-2022-44268) in ImageMagick. The PoC demonstrates how an attacker can leverage the vulnerability to read arbitrary files on the system.

Prerequisites

To run the code, ensure that you have the following dependencies installed:

  • Python 3.x
  • Pillow (Python Imaging Library)

You can install the necessary dependencies using pip:

pip install pillow

Usage

The PoC code provides three main functionalities: generate, read, and apply.

Generate

Generate a PoC PNG file with embedded profile information.

python3 magileak.py generate -l [local_file] -o [output_file]
  • [local_file]: Path to the local file that we want to extract.
  • [output_file]: Path to the output PNG file.

Read

Read and decode the profile type from a PNG file.

python3 magileak.py read -i [input_file]
  • [input_file]: Path to the input PNG file.

Apply

Apply profile information to a PNG file.

python3 magileak.py apply -i [input_file] -l [local_file]
  • [input_file]: Path to the input PNG file.
  • [local_file]: Path to the local file that we want to extract.

Disclaimer

This code is provided for educational and demonstration purposes only. Use it responsibly and at your own risk. The author and contributors of this repository are not responsible for any misuse or damage caused by this code.

References