Miller — визуальное представление, анализ и обработка бинарных данных

в 5:57, , рубрики: анализ данных, Анализ и проектирование систем, интерфейсы, разработка, метки:

image Miller – приложение, предназначенное для визуального представления, анализа и обработки бинарных данных. Он будет очень полезен тем, кто занимается разработкой или анализом различных протоколов от канального до прикладного уровней.
За время своего существования Miller претерпел значительные изменения и оброс широким набором плагинов. Изначально он писался для себя, но к настоящему времени получился продукт, который можно представить широкой аудитории.

Главное окно программы выглядит так:

MainWindow

Основное преимущество Miller – это представление «сырых» и пакетных данных одновременно в бинарном и графическом виде.

Программа позволяет открывать файлы и сохранять данные в форматах: «сырой», IP_STREAM, CAP, RWS.

Основные возможности:

  • представление данных в бинарном, шестнадцатиричном, десятичном и текстовом видах. image
  • изменение основных параметров представления данных: периода, интервала, смещения
  • навигация по данным с помощью горячих клавиш и «перетаскиваемого» окна;
  • выделение данных в трех режимах:
    • вертикальном
      Miller — визуальное представление, анализ и обработка бинарных данных
    • горизонтальном
      Miller — визуальное представление, анализ и обработка бинарных данных
    • блочном (при нажатии Shift+Alt)
      Miller — визуальное представление, анализ и обработка бинарных данных

  • представление процесса обработки данных в виде простой древовидной структуры, каждый узел (набор узлов) — результат очередной обработки данных.
  • настройка всей графической палитры и горячих клавиш, существует две предустановленных цветовых схемы «черно-белая» и «желто-синяя».

Miller построен по принципу открытой архитектуры и имеет API для подключения плагинов (модулей обработки). Интерфейс модуля обработки спроектирован таким образом, что модуль способен выполнить практически любые операции по обработке данных (получение данных от какого-либо устройства, преобразование данных, оценку их статистических свойств и т.д).

Переходя к описанию модулей обработки, необходимо сказать, что модули писали разные люди для своих конкретных задач, поэтому к настоящему времени в Miller имеется широкий диапазон возможностей от обработки протокола HDLC до декодирования аудио и видео кодеков.

Модули обработки разделены на следующие группы:

ОБРАБОТКА - плагины общего назначения

  • HDLC: обработка биториентированной процедуры HDLC
  • ODLC: обработка процедуры ODLC
  • SDLC: обработка биториентированной процедуры SDLC
  • SYN: cинхронизация в последовательности по заданному битовому шаблону
  • SBL: группировка данных по заданному битовому шаблону
  • CRC16, CRC32: проверка контрольных сумм пакетов

ГРУППИРОВКА - группировка данных по различным шаблонам

  • A, 2A: группировка по одному и двум байтам
  • IPaddr, TCPport: группировка по IP адресам и портам
  • 01h...80h: группировка по одному биту

АНАЛИЗ - плагины для выполнения технических операций с данными

  • INV: битовая инверсия
  • DeSkr: определение полинома самосинхронизирующегося скремлера и дескремблирование.
  • RWT: разворот групп
  • считывание групп в обратном порядке
  • перестановка пар групп местами
  • RWT-SBL: разворот данных по битовому шаблону
  • поиск битовых строк
  • xor строк
  • принудительное дескремблирование
  • поиск периода
  • инвертирование данных по шаблону
  • транспонирование битовых матриц любой ширины и высоты
  • VOC: декодирование, визуализация и прослушивание вокодерных сигналов

АТМ - плагины для работы с потоками АТМ

  • АТМ: синхронизация в потоке АТМ424
  • АТMgr: группировка по составному адресу VPI-VCI
  • AAL: определение уровня адаптации
  • ATMDMX: демультиплексор потоков ATM424

СНИФЕР

  • Снифер данных с сетевой карты

ОБЩИЕ - плагины общего назначения

  • разбиение входного файла на части
  • вырезание байт из пакетов
  • вставка нулевой группы

СЖАТИЕ - плагины для декомпресси данных

  • RFC3544: декомпрессия заголовков IP/TCP (по Якобсону), IP/UDP, IP/UDP/RTP по рекомендации RFC3544 в потоках PPP

ПАКЕТЫ - плагины для проведения различных преобразований с пакетами

  • выполнение дефрагментации по заданному закону
  • обработка паровоза пакетов
  • C-Check: проверка последовательности пакетов по счетчику
  • C-Correct: восстановление последовательности пакетов по счетчику
  • IP-Check: проверка контрольных сумм IP-TCP-UDP

STM - плагины для работы с данными потоков SDH

  • SТМ: модуль предназначен для анализа и идентификации потоков SDH
  • GPF: обработка служебных и информационных пакетов протокола GFP
  • BHDLC: обработка байториентированного потока HDLC

СИНХРОНИЗАЦИЯ

  • EOL: Синхронизация по EOL

СТАТИСТИКА - плагины для оценки статистических характеристик цифрового потока

  • статистика групп бит
  • CSG: статистика групп символов
  • построение полиномиального спектра
  • ScanVoIP: сбор статистики о сигнализации VoIP

IPTV - плагины для для обработки потоков видео

  • VIDEO-DEC: декодирование видеофремов с помощью системных VFW видео-кодеков
  • VIDEO-DS: декодирование видеофремов с помощью видео-фильтров DirectShow

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

Дистрибутив программы можно взять здесь.

Хотелось бы услышать отзывы или предложения по дальнейшей работе над Miller-ом.

P.S.: В Total Commander можно настроить открытие файла сразу в Miller, при нажатии на значок программы в панели инструментов.
Miller — визуальное представление, анализ и обработка бинарных данных

Автор: lerom

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js