Skip to content

Latest commit

 

History

History
651 lines (524 loc) · 56.9 KB

File metadata and controls

651 lines (524 loc) · 56.9 KB

English | 中文 | 繁體中文 | 한국어 | 日本語 | Deutsch | Español | Français | Italiano | Dansk | Norsk | Polski | Русский | Bosanski | Українська | Português (BR) | العربية | ไทย | Türkçe | বাংলা | हिन्दी | Ελληνικά | Tiếng Việt


steganography-mcp

Самый полный набор инструментов стеганографического анализа для AI-агентов.

Обнаружение LSB, хи-квадрат стеганализ, RS-анализ, DCT-криминалистика, аудиостеганография, кодирование текста нулевой ширины, криминалистика файлов, обнаружение полиглотов, определение кодировки, видеостеганография, анализ GIF, сетевая стеганография, анализ MP3, spread spectrum, BPCS, стеганография архивов, стеганография QR-кодов — всё в одном MCP-сервере.
128 инструментов. 17 категорий. 4 зависимости. 100% офлайн. API-ключи не нужны. Все инструменты работают локально.


ПроблемаЧем отличаетсяБыстрый стартЧто умеет AI-агентИнструменты (128)Использование CLIАрхитектураУчастие

npm version npm downloads License MIT Node >= 18 MCP Compatible 128 Tools Zero API Keys TypeScript strict GitHub stars


Проблема

Стеганография — это искусство сокрытия данных на виду — внутри изображений, аудиофайлов, документов и даже Unicode-текста. Она используется в соревнованиях CTF, цифровых расследованиях, скрытых каналах связи и вредоносных нагрузках. Её обнаружение требует комбинации статистического анализа, форматно-специфического парсинга, измерения энтропии и экспертных знаний.

Традиционный рабочий процесс стеганографического анализа:
  обнаружение стего в изображениях  ->  zsteg + stegsolve (2 инструмента, Ruby + Java)
  хи-квадрат анализ                 ->  самописный Python-скрипт
  RS-анализ                         ->  самописный код MATLAB/Python
  JPEG DCT-криминалистика           ->  stegdetect (заброшенный C-инструмент 2004 года)
  извлечение данных LSB             ->  zsteg + steghide + openstego (3 инструмента)
  аудиостеганография                ->  Audacity вручную + самописные скрипты
  обнаружение zero-width в тексте   ->  веб-инструменты + ручная проверка
  криминалистика файлов / binwalk   ->  binwalk + foremost + xxd (3 инструмента)
  EXIF-метаданные                   ->  exiftool (зависимость от Perl)
  определение кодировки             ->  CyberChef web UI + ручной подбор
  ─────────────────────────────────
  Итого: 10+ инструментов, 5+ языков, часы ручной корреляции

steganography-mcp предоставляет вашему AI-агенту 128 инструментов в 17 категориях через Model Context Protocol. Агент выполняет стеганализ изображений, JPEG-криминалистику, продвинутое обнаружение JPEG, анализ аудио, обнаружение текстовой стеганографии, криминалистику файлов, анализ документов, определение кодировки, видеостеганографию, анализ GIF, сетевую стеганографию, анализ MP3, обнаружение spread spectrum, BPCS-анализ, стеганографию архивов, создание и встраивание, а также стеганографию QR-кодов — всё в рамках одной беседы, всё работая 100% локально без зависимостей от внешних сервисов.

С steganography-mcp:
  Вы: "Проанализируй это изображение из CTF-задания на скрытые данные"

  Агент: -> img_detect: Хи-квадрат p=0,0001 (обнаружено LSB-встраивание),
            RS-анализ оценивает 42% степень встраивания, аномалия
            энтропии в нижнем правом квадранте
         -> img_lsb_extract: Извлечено 847 байт из LSB RGB
         -> crypto_detect: Извлечённые данные закодированы в Base64
         -> crypto_decode: Декодировано в "FLAG{hidden_in_plain_sight_2024}"
         -> img_known_tools: Совпадение сигнатуры OpenStego

         "Изображение содержит LSB-стеганографию, встроенную с помощью
          OpenStego. Тест хи-квадрат подтверждает замену LSB во всех
          трёх каналах RGB со степенью встраивания 42%. Скрытая
          полезная нагрузка закодирована в Base64 и декодируется
          во флаг: FLAG{hidden_in_plain_sight_2024}"

Чем отличается

Большинство стеганографических инструментов — это утилиты одного назначения. steganography-mcp даёт вашему AI-агенту возможность рассуждать обо всех стеганографических техниках одновременно.

Традиционный подход steganography-mcp
Интерфейс 10+ CLI-инструментов, 5+ языков, веб-интерфейсы MCP — AI-агент вызывает инструменты в формате беседы
Охват Одна техника за раз 17 категорий, 128 инструментов параллельно
Анализ изображений zsteg (Ruby), stegsolve (Java), самописные скрипты Агент выполняет хи-квадрат, RS-анализ, SPA, карту энтропии, гистограмму, извлечение битовых плоскостей, метаданные и обнаружение сигнатур инструментов — всё сразу
JPEG-криминалистика stegdetect (заброшен), ручная инспекция DCT Агент анализирует гистограмму DCT, двойное сжатие, таблицы квантования, глубокий EXIF-анализ, сравнение миниатюр, поля комментариев
Аудиостего Audacity + ручные LSB-скрипты Агент выполняет LSB хи-квадрат, спектральный анализ, проверку LSB в тихих участках, обнаружение эхо-стеганографии, извлечение метаданных
Текстовое стего Веб-инструменты, ручная проверка Агент обнаруживает символы нулевой ширины, кодирование пробелами, невидимый Unicode, гомоглифы, акростихи — и может встраивать/извлекать ZWC-сообщения
Зависимости Ruby, Java, Perl, Python, C, веб-инструменты npx -y steganography-mcp — 4 зависимости, чистый TypeScript
API-ключи Не применимо (но фрагментированный набор инструментов) Ноль. 100% офлайн, никаких внешних вызовов
Вывод Сырой текст, изображения, ручная корреляция Структурированный JSON — AI коррелирует находки автоматически

Быстрый старт

Вариант 1: npx (без установки)

npx -y steganography-mcp

Все 128 инструментов работают сразу. Без API-ключей. Без настройки. 100% офлайн.

Вариант 2: bunx (быстрее)

bunx steganography-mcp

Вариант 3: Клонирование

git clone https://github.com/badchars/steganography-mcp.git
cd steganography-mcp
bun install

Подключите к AI-агенту

Claude Code
# С npx
claude mcp add steganography -- npx -y steganography-mcp

# С локальным клоном
claude mcp add steganography -- bun run /путь/к/steganography-mcp/src/index.ts
Claude Desktop

Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "steganography": {
      "command": "npx",
      "args": ["-y", "steganography-mcp"]
    }
  }
}
Cursor / Windsurf / другие MCP-клиенты

Тот же формат JSON-конфигурации. Укажите команду на npx -y steganography-mcp или путь к локальной установке.

Начните анализ

Вы: "Проверь это изображение на скрытые данные"

Вот и всё. Агент выполняет хи-квадрат анализ, RS-анализ, картирование энтропии, извлечение метаданных, обнаружение приложенных данных и сканирование сигнатур инструментов — автоматически.


Что умеет AI-агент

Решение CTF-заданий

Вы: "Реши это CTF-задание по стеганографии — изображение challenge.png"

Агент: -> img_detect: Хи-квадрат стеганализ обнаруживает LSB-встраивание
          (p=0,00012), RS-анализ оценивает 38% степень встраивания,
          аномалия энтропии в блоках (12,4)-(15,8)
       -> img_lsb_extract: Извлечено 1 247 байт из LSB RGB-каналов
       -> crypto_detect: Данные соответствуют шаблону Base64 (уверенность: 0,95)
       -> crypto_decode: "Q1RGe3N0M2cwX21hc3Rlcn0=" -> "CTF{st3g0_master}"
       -> img_known_tools: Сигнатура OpenStego обнаружена в PNG-чанках

       "Найден флаг: CTF{st3g0_master}
        Изображение использует LSB-стеганографию, встроенную OpenStego.
        Полезная нагрузка была закодирована в Base64 в наименее
        значимых битах RGB со степенью встраивания 38%."

Цифровое расследование

Вы: "Проанализируй suspect.png и suspect.wav на скрытую коммуникацию"

Агент: -> img_detect: LSB-стего не обнаружено, но найдены приложенные данные
          (12 847 байт после маркера PNG IEND)
       -> file_identify: Приложенные данные начинаются с сигнатуры ZIP (PK)
       -> img_metadata: PNG-чанк tEXt содержит необычный ключ "comm"
          со значением Base64
       -> audio_detect: WAV-файл имеет аномалию хи-квадрат LSB (p=0,003)
       -> audio_silence: Обнаружено 3 тихих участка с активными LSB
       -> audio_lsb_extract: Извлечено 2 048 байт скрытых данных

       "Оба файла содержат скрытые данные:
        1. suspect.png имеет ZIP-архив, приложенный после маркера
           EOF PNG, плюс сообщение в Base64 в метаданных
        2. suspect.wav содержит LSB-стеганографию, особенно в
           тихих участках — сильный признак намеренного сокрытия.
        Рекомендуется извлечь ZIP и проанализировать нагрузку WAV."

Обнаружение zero-width текста

Вы: "Это письмо выглядит нормально, но может содержать скрытый текст"

Агент: -> text_detect: Обнаружено 847 символов нулевой ширины между
          видимыми символами
       -> text_zwc_detect: ZWSP (342), ZWNJ (505) найдены в 127
          позициях по всему тексту
       -> text_zwc_extract: Двоичное декодирование даёт "EXFIL-ROUTE-7"
       -> text_invisible_scan: 3 дополнительных невидимых символа Unicode
          (U+2060, U+FEFF) найдены в секции заголовка

       "Письмо содержит скрытое сообщение, закодированное символами
        нулевой ширины: 'EXFIL-ROUTE-7'. 847 невидимых символов
        распределены по всему видимому тексту с использованием
        двоичного кодирования ZWSP/ZWNJ. Кроме того, 3 символа
        Word Joiner и BOM найдены в заголовке — вероятно,
        артефакты метаданных."

Криминалистический анализ JPEG

Вы: "Это JPEG-изображение подлинное или было изменено?"

Агент: -> jpeg_structure: 14 маркеров разобрано, нормальная структура JFIF
       -> jpeg_double_compression: Двойное сжатие ОБНАРУЖЕНО 
          оценка блочных артефактов 0,73, коэффициент аномалий квантования 0,81
       -> jpeg_quantization: Качество ~75 (яркость), но остаточные
          паттерны указывают на исходное качество ~92
       -> jpeg_exif_deep: EXIF указывает "iPhone 14 Pro", но поле Software
          содержит "Adobe Photoshop 25.0"
       -> jpeg_thumbnail_compare: Размеры миниатюры НЕ совпадают
          с основным изображением (миниатюра: 4032x3024, основное: 2048x1536)

       "Этот JPEG был изменён. Доказательства:
        1. Обнаружено двойное сжатие — изображение было декодировано и
           перекодировано с пониженным качеством (оригинал ~92, текущее ~75)
        2. EXIF указывает iPhone 14 Pro, но поле software выдаёт
           редактирование в Photoshop
        3. Миниатюра от оригинального снимка 4032x3024, но основное
           изображение изменено до 2048x1536
        Все три находки независимо подтверждают модификацию после съёмки."

Справочник инструментов (128 инструментов)

Обзор категорий

Категория Инструменты Описание
Стеганализ изображений 14 Обнаружение LSB, хи-квадрат, RS-анализ, картирование энтропии, битовые плоскости, гистограмма, метаданные, сигнатуры инструментов
Анализ JPEG 7 Гистограмма DCT, двойное сжатие, таблицы квантования, глубокий EXIF, криминалистика миниатюр, анализ комментариев
Аудиостеганализ 7 Обнаружение WAV LSB, спектральный анализ, анализ тихих участков, обнаружение эхо-стеганографии, извлечение метаданных
Текст и Unicode 10 Символы нулевой ширины, кодирование пробелами, невидимый Unicode, гомоглифы, акростихи, анализ Unicode
Криминалистика файлов 10 Магические байты, обнаружение полиглотов, встроенные файлы, приложенные данные, энтропия, hex-дамп, строки, заголовки
Анализ документов 5 Скрытое содержимое PDF, метаданные PDF, потоки PDF, скрытое содержимое HTML, метаданные XML
Кодирование и криптография 7 Определение кодировки, мультиформатный декодер, частотный анализ, энтропия, брутфорс XOR, определение хешей, паттерны шифров
Продвинутый JPEG 7 F5, JSteg, OutGuess, обнаружение PVD, скользящее окно хи-квадрат, стеганализ crop-рекалибровки, совместимость инструментов
Видеостеганография 8 AVI-кадр LSB, межкадровый анализ, сравнение кадров, метаданные, структура, данные EOF
GIF-стеганография 8 Палитра LSB, энтропия подблоков LZW, расширения комментариев, расширения приложений, анализ кадров
Сетевая стеганография 8 Скрытые каналы PCAP, анализ заголовков IP/TCP, полезные нагрузки ICMP, DNS-туннелирование, HTTP-заголовки, тайминг
MP3-стеганография 7 Скрытые данные ID3, анализ фреймов, манипуляция паддингом, анализ сэмплов, метаданные, структура
Spread Spectrum 5 Спектр амплитуд DFT, автокорреляция, обнаружение водяных знаков, анализ шумового пола, обнаружение patchwork
BPCS-анализ 5 Сегментация сложности битовых плоскостей, картирование сложности, пороговый анализ, извлечение данных, оценка ёмкости
Стеганография архивов 7 Свободные пространства ZIP, дополнительные поля, комментарии, обнаружение полиглотов, анализ структуры, метаданные
Создание и встраивание 7 Инъекция EOF, инъекция метаданных, кодирование пробелами, нулевой шифр, создание полиглотов, инъекция комментариев, встраивание в палитру
Стеганография QR-кодов 6 Обнаружение стего QR, анализ структуры, ёмкость ECC, анализ модулей, извлечение данных, сравнение

Стеганализ изображений (14)

Инструмент Описание
img_detect Автоматическое обнаружение стеганографии в изображении. Выполняет хи-квадрат, RS-анализ, энтропию, метаданные, приложенные данные и проверку сигнатур инструментов. Возвращает подробный JSON-отчёт
img_lsb_detect Статистическое обнаружение LSB-стеганографии. Выполняет хи-квадрат и анализ пар сэмплов на каждом цветовом канале независимо
img_lsb_extract Извлечение скрытых данных из LSB изображения. Извлекает биты из указанных каналов и битовой плоскости, пробует декодирование UTF-8 и показывает hex-дамп
img_lsb_embed Встраивание сообщения в изображение с помощью LSB-стеганографии. Читает PNG-файл, встраивает сообщение в наименее значимые биты и записывает новый PNG-файл
img_bitplane Извлечение и визуализация определённой битовой плоскости канала изображения. Показывает размеры, процент единичных битов и предварительный просмотр в ASCII-арт
img_chi_square Атака хи-квадрат стеганализа на каждом цветовом канале независимо. Обнаруживает замену LSB путём проверки выравнивания смежных пар значений пикселей
img_rs_analysis RS (Regular-Singular) стеганализ методом Фридрих-Гольян-Ду. Анализирует группы пикселей для оценки степени встраивания LSB по каналам
img_histogram Генерация гистограммы значений пикселей с обнаружением аномалий. Обнаруживает аномалии Pairs-of-Values (PoV), указывающие на LSB-стеганографию
img_entropy_map Поблочный анализ энтропии изображения. Разделяет изображение на блоки и вычисляет энтропию Шеннона по каждому блоку, отмечая области с высокой энтропией
img_metadata Глубокое извлечение метаданных из изображения. Для PNG: текстовые чанки, список чанков, информация IHDR. Для JPEG: EXIF, комментарии, таблицы квантования, список маркеров
img_appended_data Обнаружение и извлечение данных, приложенных после маркера EOF изображения. Проверяет скрытые данные после PNG IEND, JPEG EOI или границы размера файла BMP
img_compare Попиксельное сравнение двух изображений. Сообщает количество идентичных/различных пикселей, максимальное отличие и затронутые каналы
img_channel_analysis Статистический анализ по каналам R, G, B и A. Сообщает среднее, стандартное отклонение, энтропию, минимум, максимум и количество уникальных значений
img_known_tools Сканирование байтов файла изображения на известные сигнатуры стеганографических инструментов. Проверка по базе паттернов OpenStego, Steghide, JSteg, F5 и других

Анализ JPEG (7)

Инструмент Описание
jpeg_structure Разбор маркеров/сегментов JPEG с смещениями и размерами. Показывает внутреннюю структуру включая все маркеры, позиции и длины сегментов
jpeg_dct_histogram Анализ распределения DCT-коэффициентов для обнаружения стеганографии. Анализирует распределение значений пикселей Y-канала и данные энтропии SOS для обнаружения аномалий, вызванных JSteg, F5 и OutGuess
jpeg_double_compression Обнаружение артефактов двойного JPEG-сжатия. Определяет характерные блочные артефакты и аномалии таблиц квантования — частый признак манипуляции с изображением или встраивания стего
jpeg_quantization Анализ таблиц квантования с оценкой качества. Отображает все таблицы квантования в формате сетки 8x8 и оценивает фактор качества JPEG
jpeg_exif_deep Глубокий EXIF-анализ включая GPS-координаты, временные метки, информацию о ПО, миниатюры, заметки производителя и все записи IFD. Отмечает криминалистически интересные поля
jpeg_thumbnail_compare Сравнение EXIF-миниатюры с основным JPEG-изображением. Несоответствие размеров или содержимого указывает на модификацию после съёмки — распространённый криминалистический артефакт
jpeg_comment Извлечение и анализ маркеров JPEG COM (комментарий). Проверяет паттерны скрытых данных, необычно большие комментарии и высокоэнтропийное содержимое

Аудиостеганализ (7)

Инструмент Описание
audio_detect Автоматическое обнаружение аудиостеганографии в WAV-файле. Выполняет LSB хи-квадрат, анализ энтропии, проверку метаданных и обнаружение приложенных данных
audio_lsb_detect Статистический анализ LSB PCM-сэмплов. Выполняет хи-квадрат тест на LSB, сгруппированных по парам значений, для обнаружения стеганографии замены LSB
audio_lsb_extract Извлечение LSB-данных из аудиосэмплов. Читает наименее значимый бит каждого PCM-сэмпла и пытается декодировать скрытые данные
audio_spectrum Спектральный анализ скрытых сигналов в WAV-аудио. Анализирует распределение значений сэмплов, частоту пересечения нуля, энергию RMS по блокам и обнаруживает аномальные тихие участки
audio_metadata Извлечение метаданных из WAV-файла включая чанки RIFF INFO, детали формата и информацию обо всех чанках
audio_silence Анализ тихих участков в WAV-аудио на скрытые данные. Находит области сэмплов, близких к нулю, и проверяет их LSB — тихие участки с активными LSB являются сильным признаком стего
audio_echo_detect Обнаружение эхо-стеганографии через автокорреляционный анализ. Вычисляет нормализованную автокорреляцию при типичных задержках эха. Регулярные паттерны эха указывают на стеганографическое сокрытие с помощью эха

Текст & Unicode (10)

Инструмент Описание
text_detect Автоматическое обнаружение текстовой стеганографии. Проверяет символы нулевой ширины, кодирование пробелами, невидимый Unicode, гомоглифы и необычные паттерны
text_zwc_detect Обнаружение символов нулевой ширины (ZWSP, ZWNJ, ZWJ, BOM) в тексте. Сообщает позиции, количество и потенциальную длину закодированного сообщения
text_zwc_extract Декодирование сообщения, закодированного символами нулевой ширины. Извлекает ZWC-символы и декодирует двоичным кодом: ZWSP=0, ZWNJ=1 (пробует обе полярности)
text_zwc_embed Встраивание тайного сообщения в текст-прикрытие с помощью символов нулевой ширины. Кодирует сообщение в двоичный формат и отображает биты на ZWSP(0)/ZWNJ(1)
text_whitespace_detect Обнаружение кодирования пробелами в тексте. Проверяет каждую строку на паттерны завершающих пробелов, где пробел=0 и табуляция=1 могут кодировать двоичные данные
text_whitespace_extract Извлечение сообщения, закодированного пробелами, из текста. Читает завершающие пробелы каждой строки и декодирует двоичное кодирование пробел=0/табуляция=1
text_invisible_scan Сканирование текста на ВСЕ невидимые символы Unicode. Проверяет каждый символ по полной базе невидимых символов и сообщает позиции и названия
text_homoglyph Обнаружение подмены Unicode-гомоглифов в тексте. Определяет не-ASCII символы, визуально похожие на буквы ASCII (кириллическая а vs латинская a и т.д.)
text_unicode_analysis Полный анализ распределения символов Unicode. Категоризирует все символы по блокам письменности, выполняет анализ энтропии и обнаруживает подозрительное смешение письменностей
text_acrostic Обнаружение паттернов первая-буква, первое-слово, последняя-буква, последнее-слово или n-й-символ (акростихи), скрытых в строках текста

Криминалистика файлов (10)

Инструмент Описание
file_identify Определение типа файла по магическим байтам. Читает заголовок файла и сопоставляет с обширной базой известных файловых сигнатур. Проверяет несоответствие расширения
file_polyglot Обнаружение файлов-полиглотов, валидных как два или более формата одновременно. Проверяет множественные валидные файловые сигнатуры по различным смещениям (PDF+ZIP, PNG+PDF и т.д.)
file_embedded Сканирование на встроенные файлы внутри бинарного файла, аналогично binwalk. Ищет известные сигнатуры магических байтов по каждому смещению для обнаружения скрытых или приложенных файлов
file_appended Обнаружение данных, приложенных после форматно-специфического маркера EOF файла. Поддерживает PNG (IEND), JPEG (FFD9), BMP, ZIP (EOCD) и PDF (%%EOF)
file_entropy Посекционный анализ энтропии. Вычисляет энтропию Шеннона по блокам и в целом, отмечая аномальные участки с высокой энтропией
file_entropy_visual ASCII-визуализация энтропии файла. Отрисовывает текстовую столбчатую диаграмму, показывающую уровни энтропии по файлу для визуального обнаружения аномалий
file_strings Извлечение печатных и Unicode-строк из бинарных файлов. Сканирует последовательности печатных символов и сообщает их с файловыми смещениями. Поддерживает ASCII, UTF-8, UTF-16
file_hex Hex-дамп с боковой панелью ASCII. Традиционный формат hex-редактора с адресами смещений, hex-байтами и печатным ASCII-представлением
file_header Глубокий анализ заголовка и структуры для известных форматов. Разбирает PNG IHDR, JPEG SOF, информационный заголовок BMP, локальные заголовки файлов ZIP и версию/метаданные PDF
file_compare Бинарное сравнение двух файлов. Побайтовое сравнение с отчётом о различиях со смещениями, процент идентичных и обнаружение различий только в LSB для стего-анализа

Анализ документов (5)

Инструмент Описание
doc_pdf_hidden Обнаружение скрытого содержимого PDF. Сканирует JavaScript, автодействия, OpenAction, скрытые аннотации, невидимый текст, встроенные файлы и другое скрытое содержимое
doc_pdf_metadata Извлечение метаданных PDF. Разбирает словарь /Info и блоки метаданных XMP для криминалистической атрибуции и анализа происхождения документа
doc_pdf_streams Анализ потоков PDF. Находит все блоки stream/endstream, пробует zlib-декомпрессию и сообщает размеры и энтропию для обнаружения скрытых данных
doc_html_hidden Обнаружение скрытого содержимого HTML. Сканирует комментарии, элементы display:none, атрибуты data-*, скрытые input, содержимое base64, элементы нулевого размера и невидимый текст
doc_xml_metadata Извлечение метаданных XML и документов Office. Разбирает Dublin Core, свойства Microsoft Office, инструкции обработки и другие поля метаданных

Кодирование & Криптография (7)

Инструмент Описание
crypto_detect Автоматическое определение типа кодировки входной строки. Тестирует против всех известных паттернов (Base64, hex, двоичный, морзе, URL-кодирование, HTML-сущности и т.д.) и возвращает совпадения, отсортированные по уверенности
crypto_decode Мультиформатный декодер поддерживающий Base64, hex, двоичный, десятичный, восьмеричный, URL-кодирование, ROT13, Base32, код Морзе и HTML-сущности. Автоматический режим сначала определяет кодировку
crypto_frequency Частотный анализ символов для криптоанализа. Подсчитывает вхождения символов, сравнивает со стандартной английской частотой (ETAOINSHRDLU) и вычисляет Index of Coincidence
crypto_entropy Вычисление и классификация энтропии Шеннона для строк. Вычисляет энтропию на уровне символов и байтов, классифицируя в категории от повторяющихся данных до зашифрованных/случайных
crypto_xor Брутфорс XOR-ключа для однобайтных и многобайтных ключей. Пробует все 256 однобайтных ключей и оценивает по вероятности английского текста. Использует IC для оценки длины многобайтного ключа
crypto_hash_id Определение типа хеша. Сопоставляет вход с известными паттернами хешей по длине и формату (MD5, SHA-1, SHA-256, SHA-512, bcrypt, CRC32, NTLM и т.д.)
crypto_patterns Обнаружение известных паттернов шифров и кодировок. Анализирует текст на шифр Цезаря, подстановочный шифр, Виженера, транспозицию rail fence, Атбаш и перевёрнутый текст

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

# Показать помощь
npx -y steganography-mcp --help

# Список всех 128 инструментов с описаниями
npx -y steganography-mcp --list

# Обнаружить стеганографию в изображении
npx -y steganography-mcp --tool img_detect '{"file_path":"challenge.png"}'

# Извлечь скрытое сообщение из LSB
npx -y steganography-mcp --tool img_lsb_extract '{"file_path":"stego.png"}'

# Хи-квадрат стеганализ
npx -y steganography-mcp --tool img_chi_square '{"file_path":"suspect.png"}'

# RS-анализ (метод Фридрих-Гольян-Ду)
npx -y steganography-mcp --tool img_rs_analysis '{"file_path":"suspect.png"}'

# Обнаружение двойного сжатия JPEG
npx -y steganography-mcp --tool jpeg_double_compression '{"file_path":"photo.jpg"}'

# Глубокий EXIF-анализ
npx -y steganography-mcp --tool jpeg_exif_deep '{"file_path":"photo.jpg"}'

# Обнаружение аудиостеганографии
npx -y steganography-mcp --tool audio_detect '{"file_path":"message.wav"}'

# Обнаружение кодирования символами нулевой ширины
npx -y steganography-mcp --tool text_zwc_detect '{"text":"подозрительный текст"}'

# Встраивание скрытого сообщения символами нулевой ширины
npx -y steganography-mcp --tool text_zwc_embed '{"text":"текст-прикрытие","message":"секрет"}'

# Определение типа файла и обнаружение полиглотов
npx -y steganography-mcp --tool file_polyglot '{"file_path":"suspicious.pdf"}'

# Сканирование на встроенные файлы (стиль binwalk)
npx -y steganography-mcp --tool file_embedded '{"file_path":"mystery.bin"}'

# Визуализация энтропии
npx -y steganography-mcp --tool file_entropy_visual '{"file_path":"data.bin"}'

# Автоматическое определение кодировки
npx -y steganography-mcp --tool crypto_detect '{"input":"aGVsbG8gd29ybGQ="}'

# Брутфорс XOR
npx -y steganography-mcp --tool crypto_xor '{"input":"4f5243484e"}'

# Обнаружение паттернов шифров
npx -y steganography-mcp --tool crypto_patterns '{"input":"Gur dhvpx oebja sbk"}'

# С Bun (более быстрый запуск)
bunx steganography-mcp --tool img_detect '{"file_path":"image.png"}'

Сценарии использования

CTF-соревнования

Решайте стеганографические задания в соревнованиях capture-the-flag. AI-агент может систематически применять все техники обнаружения — LSB-анализ, проверку метаданных, приложенные данные, определение кодировки и идентификацию шифров — для поиска скрытых флагов в изображениях, аудиофайлах, документах и тексте.

Цифровая криминалистика

Обнаруживайте скрытые каналы связи в криминалистических расследованиях. Анализируйте подозрительные файлы на скрытые данные с помощью статистического стеганализа (хи-квадрат, RS-анализ), проверяйте данные, приложенные после маркеров EOF, сканируйте на встроенные файлы и определяйте сигнатуры стеганографических инструментов.

Исследования безопасности

Анализируйте стеганографические инструменты и техники. Сравнивайте оригинальные и стего-изображения попиксельно, изучайте распределения DCT-коэффициентов в JPEG-стего, измеряйте изменения энтропии при встраивании и выполняйте обратный инжиниринг схем кодирования.

Образование

Изучайте принципы работы стеганографических техник. Встраивайте и извлекайте LSB-сообщения, кодируйте текст символами нулевой ширины, визуализируйте битовые плоскости и карты энтропии, анализируйте структуры файлов с помощью hex-дампов и изучайте паттерны шифров с помощью частотного анализа.

Реагирование на инциденты

При реагировании на инциденты проверяйте документы и изображения на скрытые каналы эксфильтрации. Сканируйте PDF на скрытый JavaScript и встроенные файлы, обнаруживайте кодирование символами нулевой ширины в электронных письмах, определяйте файлы-полиглоты и анализируйте подозрительные кодировки.


Архитектура

src/
  index.ts                    # Точка входа CLI (--help, --list, --tool, stdio-сервер)
  protocol/
    mcp-server.ts             # Настройка MCP-сервера (транспорт stdio)
    tools.ts                  # Реестр инструментов — все 128 инструментов собраны здесь
  types/
    index.ts                  # Общие типы (ToolDef, ToolContext, ToolResult)
  utils/
    binary.ts                 # Чтение бинарных файлов, hex-дамп, определение формата
    stats.ts                  # Энтропия Шеннона, хи-квадрат, частота байтов
    cache.ts                  # TTL-кэш
    png-parser.ts             # Чистый TS-парсер PNG (IHDR, чанки, данные пикселей)
    jpeg-parser.ts            # Чистый TS-парсер JPEG (маркеры, EXIF, квантование)
    wav-parser.ts             # Чистый TS-парсер WAV (чанки RIFF, PCM-сэмплы)
    bmp-parser.ts             # Чистый TS-парсер BMP (заголовок, данные пикселей)
    avi-parser.ts             # Чистый TS-парсер AVI (кадры, заголовки)
    gif-parser.ts             # Чистый TS-парсер GIF (палитра, блоки LZW)
    pcap-parser.ts            # Чистый TS-парсер PCAP (пакеты, заголовки)
    mp3-parser.ts             # Чистый TS-парсер MP3 (фреймы, теги ID3)
    zip-parser.ts             # Чистый TS-парсер ZIP (локальные заголовки, central directory)
  image/                      # Инструменты стеганализа изображений (14)
  jpeg/                       # Инструменты анализа JPEG (7)
  jpegadv/                    # Продвинутые инструменты JPEG (7)
  audio/                      # Инструменты аудиостеганализа (7)
  text/                       # Инструменты текста и Unicode (10)
  file/                       # Инструменты криминалистики файлов (10)
  document/                   # Инструменты анализа документов (5)
  crypto/                     # Инструменты кодирования и криптографии (7)
  video/                      # Инструменты видеостеганографии (8)
  gif/                        # Инструменты GIF-стеганографии (8)
  network/                    # Инструменты сетевой стеганографии (8)
  mp3/                        # Инструменты MP3-стеганографии (7)
  spread/                     # Инструменты Spread Spectrum (5)
  bpcs/                       # Инструменты BPCS-анализа (5)
  archive/                    # Инструменты стеганографии архивов (7)
  create/                     # Инструменты создания и встраивания (7)
  qrcode/                     # Инструменты стеганографии QR-кодов (6)
  data/
    encoding-patterns.ts      # Regex-паттерны кодировок + декодеры
    magic-bytes.ts            # База файловых сигнатур (100+ форматов)
    stego-signatures.ts       # Известные сигнатуры стеганографических инструментов
    unicode-invisible.ts      # База невидимых символов Unicode

Проектные решения:

  • 4 зависимости, ничего больше@modelcontextprotocol/sdk для протокола MCP, zod для валидации входных данных, pngjs для доступа к пикселям PNG, jpeg-js для декодирования JPEG. Никакого раздутого дерева зависимостей. Никаких нативных модулей. Никаких C-привязок. Никакого Python. Никакой Java.
  • 100% офлайн — Каждый инструмент работает полностью локально. Никаких HTTP-запросов. Никаких API-вызовов. Никакой телеметрии. Никаких облачных зависимостей. Ваши файлы никогда не покидают вашу машину.
  • Чистый статистический анализ на TypeScript — Тест хи-квадрат, RS-анализ (Фридрих-Гольян-Ду), Sample Pair Analysis, энтропия Шеннона, Index of Coincidence и частотный анализ — всё реализовано на чистом TypeScript. Никаких внешних математических библиотек.
  • Собственные парсеры форматов — PNG-чанки, маркеры JPEG/EXIF/таблицы квантования, чанки WAV RIFF и заголовки BMP парсятся без внешних зависимостей через парсеры utils/. Это обеспечивает глубокий форматно-специфический анализ, который не могут предоставить библиотеки общего назначения.
  • 17 провайдеров, 1 сервер — Каждая категория анализа — это независимый модуль. AI-агент выбирает, какие инструменты использовать, исходя из контекста расследования.
  • Чистый паттерн ToolDef — Каждый инструмент следует одному и тому же паттерну { name, description, schema, execute }. Добавление нового инструмента — это один объект в соответствующем модуле.
  • Zod-валидация каждого поля — Каждое поле схемы имеет .describe() для контекста AI-агента. Некорректные входные данные перехватываются до выполнения с понятными сообщениями об ошибках.

Часть MCP Security Suite

Проект Область Инструменты
hackbrowser-mcp Тестирование безопасности браузера 39 инструментов
cloud-audit-mcp Облачная безопасность (AWS/Azure/GCP) 38 инструментов
github-security-mcp Безопасность GitHub 39 инструментов
cve-mcp Аналитика уязвимостей 23 инструмента
osint-mcp-server OSINT и разведка 37 инструментов
darknet-mcp-server Даркнет и анализ угроз 66 инструментов
dns-security-mcp DNS-безопасность 103 инструмента
steganography-mcp Стеганографический анализ 128 инструментов

Участие

Вклад приветствуется. Ознакомьтесь с CONTRIBUTING.md для получения рекомендаций.


Только для авторизованных исследований безопасности и образовательных целей.
Всегда убедитесь, что у вас есть надлежащее разрешение перед выполнением стеганографического анализа файлов, которые вам не принадлежат.

Лицензия MIT • Создано Orhan Yildirimcontact@orhanyildirim.us