PCRT:自动化检测修复损坏PNG文件取证工具

0x01 概述

Python2.7

旨在实现检查并自动化修复损坏的 PNG 图像,可用于恢复取证中提取到的缺失的图片流,或者提取隐藏在 PNG 图片中的恶意样本。

0x02 功能

显示图片文件信息

修复PNG文件头错误

修复由于错误的图片长度或宽度导致的IHDR块crc校验出错

修复由于DOS->UNIX平台自动格式转换导致的部分IDAT块数据长度出错

修复由于自身错误导致的IDAT块crc校验出错

修复丢失的IEND块

提取追加在IEND块后的数据

自动显示修复后的图片

添加payload到图片文件

根据图片有限压缩数据尽可能恢复并显示

0x03 特点

支持跨平台运行(Windows/Linux/Mac OS)

支持窗口打开待修复文件,无需手动输入文件路径

自动化检测修复问题

支持修复结果即时显示

支持提取追加在IEND块后的数据

支持插入payload到辅助块/关键块

修复结果去除所有辅助块

0x04 安装

python 2.7

所需依赖:

Tkinter

For Python 3

sudo apt-get install python3-tk

For Python 2.7

sudo apt-get install python-tk

PIL

Python2.7 安装 PIL 失败解决方法:pip install Pillow

ctypes (For Windows)

  1. 下载源码至本地
git clone https://github.com/sherlly/PCRT.git
cd PCRT
python PCRT.py
  1. 官方示例
> python PCRT.py -h
usage: PCRT.py [-h] [-q] [-y] [-v] [-m] [-n NAME] [-p PAYLOAD] [-w WAY]
             [-d DECOMPRESS] [-i INPUT] [-f] [-o OUTPUT]
optional arguments:
-h, --help            show this help message and exit
-q, --quiet           don't show the banner infomation
-y, --yes             auto choose yes
-v, --verbose         use the safe way to recover
-m, --message         show the image information
-n NAME, --name NAME  payload name [Default: random]
-p PAYLOAD, --payload PAYLOAD
                      payload to hide
-w WAY, --way WAY     payload chunk: [1]: ancillary [2]: critical
                      [Default:1]
-d DECOMPRESS, --decompress DECOMPRESS
                      decompress zlib data file name
-i INPUT, --input INPUT
                      Input file name (*.png) [Select from terminal]
-f, --file            Input file name (*.png) [Select from window]
-o OUTPUT, --output OUTPUT
                      Output repaired file name [Default: output.png]

PCRT:自动化检测修复损坏PNG文件取证工具_第1张图片
具体使用方法就不在此演示了,关键是我使用的过程中并没有得到预期结果。
可能是安装的过程有问题?

你可能感兴趣的:(kali,linux,CTF)