Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
EmbedPayloadInPng — Embed a payload inside a PNG file | Kitploit
Инструменты/GitHubGitHub/maldev-academy/embedpayloadinpng
IDS/IPS EvasionData ExfiltrationSteganographyCryptographyPayload Development
GitHubmaldev-academy/embedpayloadinpng

EmbedPayloadInPng

Embed a payload inside a PNG file

Репозиторий
373561 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

EmbedPayloadInPng

Встраивание пейлоада в PNG-файл путём разделения пейлоада на несколько секций IDAT. Каждая секция шифруется индивидуально с использованием собственного 16-байтового ключа с помощью алгоритма шифрования RC4.

Быстрые ссылки

Главная страница Maldev Academy

Учебная программа Maldev Academy

Цены Maldev Academy

Реализация

Этот репозиторий содержит две реализации:

  • EmbedPayloadInPng.py — Python-скрипт для встраивания входного пейлоада в указанный PNG-файл.
  • FetchPayloadFromPng — извлекает пейлоад из PNG-файла, созданного EmbedPayloadInPng.py, и расшифровывает его с помощью функции ExtractDecryptedPayload.

Использование

  1. Используйте EmbedPayloadInPng.py для создания PNG-файла со встроенным пейлоадом:
изображение

PNG-файл со встроенным пейлоадом Output.png — это тот же PNG-файл, что и исходный.

https://github.com/user-attachments/assets/bec6f597-9955-4552-80f7-f484bd5754c3

  1. Скопируйте определение макроса MARKED_IDAT_HASH, выведенное EmbedPayloadInPng.py, и замените им существующее определение в проекте FetchPayloadFromPng здесь.

Структура PNG-файла со встроенным пейлоадом

Как упоминалось ранее, EmbedPayloadInPng.py отвечает за встраивание файла пейлоада в PNG-файл. Ниже представлена структура PNG-файла со встроенным пейлоадом.

изображение

Поскольку максимальный размер секции IDAT составляет 8192 байта, наш пейлоад разбивается на несколько секций IDAT. Каждая секция имеет размер, равный (8192 - 16 [длина ключа RC4]). Кроме того, последняя секция IDAT будет содержать оставшиеся байты пейлоада.


Следующие изображения поясняют вывод EmbedPayloadInPng.py и сравнивают его со структурой созданного PNG-файла:

  • Секции выходного PNG-файла.
изображение

  • Случайная секция IDAT, созданная для обозначения начала нашего пейлоада. CRC-хэш этой секции используется в нашем C-коде для идентификации начала нашего пейлоада в PNG-файле.
изображение

  • Первая секция IDAT с пейлоадом, следующая за нашей случайной секцией (выделена синим). Это изображение также демонстрирует положение CRC-хэша и размер рандомизированной секции IDAT заранее (выделено жёлтым).
изображение

  • CRC-хэш первой секции IDAT с пейлоадом, расположенный в конце секции после зашифрованного первого фрагмента нашего пейлоада.
изображение

  • Начало второй секции IDAT с пейлоадом.
изображение
Скачать инструмент