Как найти сигнатуру файла

Содержание · Работа ·
Меню · Сервис


Полное сканирование

Raw-поиск файлов
 

Специальный алгоритм поиска позволяет найти и виртуально
реконструировать структуру директорий и файлов повреждённой файловой системы
либо найти потерянные файлы известных типов по сигнатурам, если невозможно использовать файловую систему.

Если файловая система тома повреждена незначительно, то том может быть открыт до завершения сканирования.
При выборе тома можно ориентироваться на индикаторы качества и другие параметры
(подробности – ниже).

Перед работой со специальными типами хранилищ
(RAID-массивы / тома c чередованием, зашифрованные хранилища, образы дисков)
обратитесь к соответствующим инструкциям
(в разделе Открыть том),
иначе Полное сканирование даст некорректные результаты поиска по ФС,
если запускать его просто на отдельных исходных дисках.

В случае с обычным разделом рекомендуется открывать физический диск
и сканировать на нем всю область, которую мог занимать раздел (включая возможные старые и новые области),
вместо попытки работать с поврежденным логическим диском.
При необходимости сканирование может выходить за пределы выбранной области.

При сканировании могут быть обнаружены различные варианты одного тома,
которые нужны только в наиболее сложных случаях
(прерванное преобразование ФС: перемещение / слияние / разделение / изменение размера раздела / кластера,
или составной том).
В таких случаях одна часть файлов может быть корректно восстанавлена в одном из вариантов тома,
а другая часть – в другом, хотя файлы могут быть видны одновременно в обоих вариантах тома.

Откройте выбранный вариант как том и восстановите файлы.
Если файлы отсутствуют или восстанавливаются некорректно,
следует продолжить поиск или попробовать другой вариант.

Открыть том Открыть том, выделенный в списке.
Сохранить… Сохранить результаты сканирования файл.
Загрузить… Загрузить результаты из файла
(можно продолжить сканирование после остановки или открыть сохранённые результаты).
Старт/Стоп Приостановить/продолжить поиск.
Если настройки сбора данных и область поиска не изменены, сканирование будет продолжено.
Параметры Выбор области поиска, ФС, параметров сбора данных и расчёта томов.
Непоследовательное сканирование
используется при необходимости быстрее найти основные результаты по всему диску,
не дожидаясь завершения сканирования.

Непоследовательное сканирование проводится выборочно сразу по всему диску
с постепенным покрытием всей области сканирования.
В первую очередь обнаруживаются тома с большим количеством файлов.

Лог-файл Опции для автосохранения состояния и результатов поиска в файл
Меню В том числе, позволяет изменить сортировку томов.

Столбцы % и Соответствия позволяют предварительно
оценить качество восстановления данных для найденного варианта тома.

Для NTFS, exFAT, HFS рассчитываются процент и количество правильных
соответствий между структрами ФС и файлами, найденными по сигнатурам,
для остальных ФС рассчитываются соответствия только для структур ФС.

Мин. размер – минимальная оценка объема, занятого файлами тома
(учитываются только наилучшие найденные фрагменты ФС).

Колонка Индикаторы
показывает отсутствие (или повреждение) (““)
или наличие (“+“) соответствующих структур ФС

(B/C – бутсектор/копия; для FAT: F – таблица FAT/копия,
R – корневая директория).

Raw-поиск файлов по сигнатурам

Сигнатуры файлов используются как последнее средство для поиска потерянных файлов,
когда невозможно использовать результаты поиска по ФС (выше).
Кроме того, они используются для улучшения и оценки качества результатов NTFS, exFAT, HFS.
Они также используются для маркировки и фильтрации файлов,
найденных как по файловой системе, так и по сигнатурам,
то есть файлов с высокой вероятностью восстановления
(см. значки на панели файлов).

Результаты Raw доступны внутри директории $Raw в панели файлов
после открытия любого тома.
Чтобы исключить результаты, найденные по файловой системе открытого тома,
используется символическая директория $Raw – фильтровать результаты Raw
(для определения и исключения пространства, занятого файлами,
используются функции карты кластеров).

Обычно нет смысла открывать отдельно результаты Raw-поиска, если есть результаты для файловых систем.
Восстановление Raw возможно только для файлов, которые имеют специальные сигнатуры
(например, в целом не работает для простых текстовых файлов).
Восстановление по сигнатурам не работает корректно с фрагментированными файлами
(правильно восстанавливается только первый фрагмент). При Raw-поиске не восстанавливаются
исходные имена файлов и структура директорий,
также не всегда правильно определяются исходные размеры файлов,
возможно получение лишних результатов, не являющихся файлами нужного типа,
если сигнатура не является достаточно уникальной.
Если файл определенного типа не имеет ни сигнатуры конца, ни встроенную информацию о размере,
то начало следующего файла считается концом предыдущего,
поэтому поиск всех присутствующих на диске типов позволяет точнее определить размеры.

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

Raw: Сигнатуры файлов: выбор типов файлов для поиска, добавление новых сигнатур.

Сигнатуры файлов

Сигнатура файла – фиксированная последовательность байтов в начале файла определённого типа.
Например, при открытии любого PDF-файла в шестнадцатеричном редакторе
можно увидеть одну и ту же последовательность первых 4 байт:

0000:   25 50 44 46 2D 31 2E 33  0A …       %PDF-1.3…

В этом случае в DMDE можно задать сигнатуру строкой %PDF
(или x25x50x44x46 с использованием шестнадцатеричных кодов).
Для указания произвольного байта используется знак вопроса (?).
Код mXY обозначает фиксированную битовую маску предыдущего байта сигнатуры,
где XY – шестнадцатеричное значение маски
(например, код x05m07 указывает, что
маской 7 = 00000111 (bin)
фиксированы только три младших бита значения
5 = 00000101 (bin)).

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

Добавление новых типов файлов

Помимо уже встроенных типов файлов и соответствующих сигнатур
возможно добавление новых типов пользователем
(только если данные типы имеют уникальные сигнатуры):
Полное сканирование (Параметры) – Raw: Сигнатуры файлов –
Добавить.

В несложных случаях можно автоматически определить сигнатуру нового типа на основе файлов-образцов.
Для этого следует нажать на кнопку “” и указать
допустимые расширения файлов (через запятую) и место, где расположены исправные файлы требуемого типа.
Если восстановление производится с камеры, для получения образцов можно снять на новый носитель
различные фото/видео той же камерой в том же формате.

Кнопка Тест позволяет проверить наличие и правильность сигнатуры на конкретном файле.

Опция использовать для расчета ФС
включает проверку соответствий между структурами ФС и файлами, наденными по сигнатуре.
Кроме того, файлы внутри ФС будут отмечены в Файловой панели
как найденные также по сигнатуре (или не найденные).

Могут быть заданы несколько разделённых запятыми Расширений для расчёта FS.
Можно пометить тип как надёжный, если сигнатура содержит по крайней мере
4 различных байта с фиксированным смещением
(в ином случае помечать не следует, чтобы из-за ложных срабатываний не были обрезаны другие файлы).
Файл-контейнер может содержать другие типы файлов внутри себя
(следует пометить, чтобы файл не был обрезан при обнаружении файлов другого типа).
Сигнатура EOF – необязательная сигнатура конца файла.

Содержание

  1. HackWare.ru
  2. Этичный хакинг и тестирование на проникновение, информационная безопасность
  3. Как узнать тип файла без расширения (в Windows и Linux)
  4. Как определить тип данных, если у файла нет расширения
  5. Команда file — мгновенное определение типа любого файла
  6. Аналог команды file для Windows
  7. 1. Утилита file в Cygwin
  8. 2. file в WSL
  9. 3. Скомпилированный file для Windows
  10. 4. TrID — кроссплатформенная альтернатива file для Windows и Linux
  11. 5. fil — ещё одна кроссплатформенная альтернатива file
  12. Альтернативы file
  13. Detect It Easy
  14. Binwalk
  15. Как проверить цифровую подпись (её наличие, валидность) у файла
  16. Содержание:
  17. Что собой представляет цифровая подпись, зачем ей подписываются файлы
  18. Как проверить корректность цифровой подписи у файла
  19. Заключение

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Как узнать тип файла без расширения (в Windows и Linux)

Если вы попали сюда из поиска и вам нужно просто быстро узнать расширение файла, то к ваших услугам онлайн сервис «Определение типа файла без расширения»: https://suip.biz/ru/?act=file-type. Благодаря ему вам не понадобится устанавливать какие-либо программы, онлайн сервис за секунду определит тип файла, который вы прислали, причём покажет результаты сканирования сразу четырьмя программами, рассмотренными в этой статье. Заодно выведет найденную в файле метаинформацию — часто там есть что-то интересное.

Если вы из тех, кто хочет узнать как работают инструменты указанного сервиса, а также как ими пользоваться на своём компьютере, то продолжайте читать.

Если вам кажется, что проблема с определением типов файлов без расширений надуманная, то это далеко не так! Во-первых, если подумать, это не такая уж простая задача. А с файлом без расширения вы можете столкнуть, например, при декодировании строки из Base64 кодировки.

Во-вторых, у этой статьи будет продолжение, в которой эти же самые инструменты, которые вы изучите на этой странице, будут использоваться для:

1) разбора прошивок (например, роутеров, IP камер) на составные части (первый этап обратной инженерии либо анализа работы устройств для поиска уязвимостей и бэкдоров)

2) поиска файловых систем на дисках и их образах (первый этап криминалистической IT экспертизы)

3) поиска удалённых файлов

Как определить тип данных, если у файла нет расширения

Если у файла нет расширения, то единственным вариантом определения его типа остаётся содержимое этого файла. Можно попробовать добавлять различные расширения к имени файла и пытаться открыть соответствующими для этого расширения программами — этот вариант медленные и неэффективный.

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

Такие паттерны на английском часто называют magic — это пошло от «magic number» в исполнимых файлах. Эти файлы имеют «магическое число», хранящееся в определённом месте рядом с началом файла, которое сообщает операционной системе UNIX, что файл является двоичным исполняемым файлом и каким именно из нескольких типов. Концепция «магического числа» была применена к другим бинарным файлам. То есть файлы одинакового типа имеют одинаковую последовательность байтов в определённом месте от начала файлов.

Файл с сигнатурами, описывающими какие именно байты, на каком расстоянии от начала файла характерны для файлов того или иного типа, обычно называют magic file.

Чтобы понять количество проделанного труда при поиске уникальных байтов, обязательно присутствующих в тех или иных файлах, посмотрите на магический файл для определения файловых систем https://github.com/file/file/blob/master/magic/Magdir/filesystems

Это только один файл из перечня различных типов файлов: https://github.com/file/file/tree/master/magic/Magdir

Кроме магических чисел могут применяться и другие техники, например, программа file для проведения тестов файловых систем также может использовать системный вызов stat. Тип текстовых файлов определяется по содержащимся в них строкам (например, это может быть PHP код, файл в XML или HTML разметке, JSON и так далее).

Команда file — мгновенное определение типа любого файла

В Linux есть команда file с огромной базой сигнатур, которая очень быстро определяет тип файла:

Чтобы узнать, что за файл без расширения, выполните команду вида:

То есть это текстовый файл офисного пакета Microsoft Office.

Можно указать сразу несколько файлов для проверки или использовать подстановочные символы. Например, следующая команда проверит типы всех файлов в текущей папке:

У программы file имеются опции, подробности о них смотрите в отдельной статье «Инструкция по использованию команды file».

Аналог команды file для Windows

file — это утилита командной строки для Linux, поэтому пользователям Windows нужна какая-то альтернатива. Рассмотрим несколько способов использования file в Windows.

1. Утилита file в Cygwin

Данный способ, на мой взгляд, самый простой. Достаточно скачать Cygwin и вы можете пользоваться большинством утилит Linux. Подробности, в том числе как указывать пути в файловой системе, смотрите в ветке «Как начать знакомство с командами Linux: Cygwin».

2. file в WSL

Подсистема Windows для Linux (WSL) это ещё один способ использовать утилиты Linux в Windows. Подробности о работе с WSL смотрите в справочном материале «WSL (подсистема Windows для Linux): подсказки, инструкции, решения проблем».

3. Скомпилированный file для Windows

На странице https://github.com/julian-r/file-windows/releases вы можете скачать скомпилированные файлы утилиты file (ещё один источник https://github.com/nscaife/file-windows/releases, но там более старая версия).

Файлы различаются архитектурой (64- и 32-битные), а также компилятором.

Скачайте файл, например, file_5.38-build49-vs2019-x64.zip.

Распакуйте скаченный архив. Например, я поместил скаченные файлы в папку C:UsersMiAlDownloadsfile.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейдите в папку с программой:

Для определения расширения файла используйте команду вида:

Вы можете проверить сразу много файлов, для этого перейдите в папку с утилитой file и выполните команду вида:

Например, я хочу проверить все файлы в папке Z:testfiles, тогда команда следующая:

4. TrID — кроссплатформенная альтернатива file для Windows и Linux

В утилите TrID довольно много сигнатур и база данных постоянно пополняется новыми образцами. Программа является кроссплатформенной, подробную инструкцию по установке и использованию в Windows и Linux вы найдёте на этой странице: https://kali.tools/?p=2887

Пример анализа файла — обратите внимание, что выведено несколько вариантов с указанием процентной вероятности каждого из них:

Если указать несколько файлов для идентификации, то будет выведен только самый вероятный вариант типа файла:

Установка TrID в Windows

Перейдите на официальный сайт, скачайте архив с исполнимым файлом (mark0.net/download/trid_w32.zip) для Windows, а также архив с базой данных сигнатур (mark0.net/download/triddefs.zip).

Распакуйте оба файла в одну папку.

Распакуйте скаченный архив. Например, я поместил скаченные файлы в папку C:UsersMiAlDownloadstrid.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейдите в папку с программой:

Для определения расширения файла используйте команду вида:

Подстановочные знаки могут использоваться для сканирования групп файлов, целых папок и так далее.

Кроме того, использование ключа -ae даст команду TrID добавить предполагаемые расширения к именам файлов. Это удобно, например, при работе с файлами, восстановленными программами для восстановления данных. Например:

На этом этапе файлы в папке c:temp будут выглядеть так:

  • FILE0001.CHK.bav
  • FILE0002.CHK.ogg
  • FILE0003.CHK.doc
  • FILE0004.CHK.exe

Вместо предыдущей опции можно использовать -ce, которая изменит расширение файла на новое; если у файла нет расширения, будет добавлено новыъое. Например:

  • IAmASoundFile.dat -> IAmASoundFile.wav
  • IAmABitmap -> IAmABitmap.bmp

TrID может получить список файлов со стандартного ввода с помощью переключателя -@.

Таким образом, можно работать со всем деревом папок или определенным подмножеством файлов, просто используя вывод какой-либо другой команды через конвейер. Что-то вроде:

Можно указать TrID показывать дополнительную информацию о каждом совпадении (например, тип mime, кто создал эту сигнатуру, сколько файлов было просканировано и так далее); а также можно ограничить количество отображаемых результатов.

Ключ -v активирует подробный режим, а -r:nn указывает максимальное количество совпадений, которое будет отображать TrID. По умолчанию 5 для обычного режима, 2 для подробного, 1 для многофайлового анализа.

Программа TrID обновляется нечасто, но база данных регулярно получает новые сигнатуры, поэтому время от времени обновляйте базу данных.

5. fil — ещё одна кроссплатформенная альтернатива file

Программа fil написана на Go и является кроссплатформенной. Но в программе настолько мало сигнатур, что, на мой взгляд, утилита fil практически бесполезна.

Альтернативы file

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

Detect It Easy

Detect It Easy — это кроссплатформенная программа для определения типов файлов. Имеется вариант с графическим интерфейсом, а также интерфейсом командной строки.

Инструкцию по установке программы вы найдёте на её странице https://kali.tools/?p=6788.

Анализ файла /mnt/disk_d/Share/testfiles/file1 с показом результатов в графическом интерфейсе:

Анализ файла без расширения, расположенного по пути /mnt/disk_d/Share/testfiles/file1 для определения типа файла:

Detect It Easy в первую очередь нацелена на анализ исполнимых файлов, поэтому её функции в большей степени относятся к файлам программ, например, определение архитектуры. Но также имеется поддержка других бинарных файлов.

Binwalk

Binwalk это программа для анализа прошивок, но в ней собрано много сигнатур бинарных файлов, поэтому она подходит для определения типа файла. Особенность Binwalk в том, что она нацелена на работу с составными файлами (которыми обычно и являются прошивки), поэтому она может определять тип файла даже если файл находится не в начале.

Использование такое же, как и file, достаточно указать путь до одного или нескольких файлов:

Detect It Easy и Binwalk не столько конкуренты утилиты file, сколько «последний шанс» определить тип данных, если команда file не помогла.

Источник

Как проверить цифровую подпись (её наличие, валидность) у файла

Приветствую!

В этом материале мы подробно рассмотрим, что такое электронная цифровая подпись у файла, зачем ей подписываются сами файлы и как проверить на валидность (корректность) имеющуюся цифровую подпись у интересующего вас файла.

Содержание:

Что собой представляет цифровая подпись, зачем ей подписываются файлы

Цифровая подпись – криптографическая (зашифрованная стойким алгоритмом) сигнатура, которая является гарантом отсутствия каких-либо модификаций в файле, который был ей подписан. Если говорить более простым языком, то цифровая подпись является гарантом оригинальности файла, отсутствия в нём изменений третьими лицами.

Где применяется цифровая подпись, какие обычно файлы подписываются? Чаще всего подписываются электронной цифровой подписью исполняемые файлы программ и приложений, инсталляторов (установочных дистрибутивов). Также довольно часто цифровую подпись можно встретить у динамических библиотек (файлы с расширением dll) , а также драйверов.

Многие системные файлы операционной системы Windows, и практически все драйвера имеют цифровую подпись (неподписанные драйвера операционная система Windows блокирует к установке). Это позволяет операционной системе проводить диагностику, защищать ключевые системные файлы от модификаций, восстанавливая оригинальные файлы при обнаружении оных.

Ровно тоже касается и драйверов. Они работают на уровне ядра, что даёт им поистине безграничные возможности, но в тоже время сбой в драйвере зачастую приводит к полной остановке работы операционной системы (синий экран смерти – BSOD). В связи с чем драйвера проходят обязательную сертификацию, тестирование, и если всё работает без сбоев – они подписываются цифровой подписью и становятся доступны для использования.

Как проверить корректность цифровой подписи у файла

Выяснив, что собой представляет электронная цифровая подпись, какие и зачем файлы ей традиционно подписываются, мы переходит к тому, как проверить её наличие и корректность.

В операционной системе семейства Windows это делается довольно просто:

    Наведите курсор и кликните правой клавишей по файлу. Будет продемонстрировано контекстное меню, в котором необходимо будет выбрать пункт – Свойства.


Будет открыто окно свойств файла, в котором несколько вкладок. Если цифровая подпись у файла есть, то в этом окне будет вкладка с Именем Цифровые подписи, в противном случае эта вкладка будет отсутствовать вовсе.


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

Цифровая подпись может быть у файла как одна, так и сразу несколько – все они будут перечислены в этом окне.

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

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

В ситуации, когда цифровая подпись не в порядке, картина иная.

В каких случаях цифровая подпись может быть не действительна:

  • вышел срок действия сертификата цифровой подписи
  • сертификат, что использовался для формирования цифровой подписи, был отозван
  • некорректно установлено время на компьютере
  • файл был модифицирован или повреждён

Если вы имеете в своём распоряжении исполняемый файл программы (дистрибутива, драйвера и т.п.) с недействительной цифровой подписью, то следует внимательно отнестись к его запуску (установке) в операционной системе.

Заключение

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

В свою очередь, Вы тоже можете нам очень помочь.

Просто поделитесь статьей в социальных сетях и мессенджерах с друзьями.

Поделившись результатами труда автора, вы окажете неоценимую помощь как ему самому, так и сайту в целом. Спасибо!

Источник

Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 27 июля 2018 года; проверки требуют 15 правок.

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

Многие форматы файлов не предназначены для чтения как текст. Однако, сигнатура файла может быть интерпретирована и показана как текст. В столбце ISO 8859-1 указано, как расшифровывается сигнатура файла стандартной для UNIX-подобных операционных систем утилитой file при языковой кодировке ISO 8859-1.

Расширение файла Описание Смещение ISO 8859-1 Шестнадцатеричная сигнатура
rpm RedHat Package Manager (RPM) package[1] 0
....
ed ab ee db
bin Amazon Kindle Update Package[2] 0
SP01
53 50 30 31
PIC

PIF
SEA
YTR

IBM Storyboard bitmap file

Windows Program Information File
Mac Stuffit Self-Extracting Archive
IRIS OCR data file

0
.
00
PDB PalmPilot Database/Document File 11
........
........
........
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
DBA Palm Desktop Calendar Archive 0
...
BE BA FE CA
DBA Palm Desktop To Do Archive 0
..BD
00 01 42 44
TDA Palm Desktop Calendar Archive 0
..DT
00 01 44 54
Palm Desktop Data File (Access format) 0
...
00 01 00 00
ico Computer icon encoded in ICO file format[3] 0
....
00 00 01 00
3gp

3g2

3rd Generation Partnership Project 3GPP and 3GPP2 multimedia files 4
ftyp 3g
66 74 79 70 33 67
z

tar.z

compressed file (often tar zip)

using Lempel-Ziv-Welch algorithm

0
..
1F 9D
z

tar.z

Compressed file (often tar zip)

using LZH algorithm

0
..
1F A0
bac File or tape containing a backup done with AmiBack on an Amiga.

It typically is paired with an index file (idx) with the table of contents.

0
BACKMIKE
DISK
42 41 43 4B 4D 49 4B 45
44 49 53 4B
bz2 Compressed file using Bzip2 algorithm 0
BZh
42 5A 68
gif Image file encoded in the Graphics Interchange Format (GIF)[4] 0
GIF87a
GIF89a
47 49 46 38 37 61
47 49 46 38 39 61
tif

tiff

Tagged Image File Format 0
II*.
MM.*
49 49 2A 00

(little endian format)

4D 4D 00 2A

(big endian format)

cr2 Canon RAW Format Version 2[5]

Canon’s RAW format is based on the TIFF file format[6]

0
II*.....
CR
49 49 2A 00 10 00 00 00
43 52
cin Kodak Cineon image 0
.*_.
80 2A 5F D7
Compressed file using Rob Northen Compression (version 1 and 2) algorithm 0
RNC.
52 4E 43 01
52 4E 43 02
dpx SMPTE DPX image 0
SDPX
XPDS
53 44 50 58

(big endian format)

58 50 44 53

(little endian format)

exr OpenEXR image 0
v/1.
76 2F 31 01
bpg Better Portable Graphics format[7] 0
BPGû
42 50 47 FB
jpg

jpeg

JPEG raw or in the JFIF or Exif file format 0
ÿØÿÛ

ÿØÿà ..J
F IF..
ÿØÿá ..E
x if..
FF D8 FF DB

FF D8 FF E0 ?? ?? 4A 46 49 46 00 01
FF D8 FF E1 ?? ?? 45 78 69 66 00 00
ilbm

lbm
ibm
iff

IFF Interleaved Bitmap Image 0

any

FORM....
ILBM
46 4F 52 4D ?? ?? ?? ?? 49 4C 42 4D
8svx

8sv
svx
snd
iff

IFF 8-Bit Sampled Voice 0

any

FORM....
8SVX
46 4F 52 4D ?? ?? ?? ?? 38 53 56 58
acbm

iff

Amiga Contiguous Bitmap 0

any

FORM....
ACBM
46 4F 52 4D ?? ?? ?? ?? 41 43 42 4D
anbm

iff

IFF Animated Bitmap 0

any

FORM....
ANBM
46 4F 52 4D ?? ?? ?? ?? 41 4E 42 4D
anim

iff

IFF CEL Animation 0

any

FORM....
ANIM
46 4F 52 4D ?? ?? ?? ?? 
41 4E 49 4D
faxx

fax
iff

IFF Facsimile Image 0

any

FORM....
FAXX
46 4F 52 4D ?? ?? ?? ?? 46 41 58 58
ftxt

txt
iff

IFF Formatted Text 0

any

FORM....
FTXT
46 4F 52 4D ?? ?? ?? ?? 46 54 58 54
smus

smu
mus
iff

IFF Simple Musical Score 0

any

FORM....
SMUS
46 4F 52 4D ?? ?? ?? ?? 53 4D 55 53
cmus

mus
iff

IFF Musical Score 0

any

FORM....
CMUS
46 4F 52 4D ?? ?? ?? ?? 43 4D 55 53
yuvn

yuv
iff

IFF YUV Image 0

any

FORM....
YUVN
46 4F 52 4D ?? ?? ?? ?? 59 55 56 4E
iff Amiga Fantavision Movie 0

any

FORM....
FANT
46 4F 52 4D ?? ?? ?? ?? 46 41 4E 54
aiff

aif
aifc
snd
iff

Audio Interchange File Format 0

any

FORM....
AIFF
46 4F 52 4D ?? ?? ?? ?? 41 49 46 46
idx Index file to a file or tape containing a backup done with AmiBack on an Amiga. 0
INDX
49 4E 44 58
lz lzip compressed file 0
LZIP
4C 5A 49 50
exe DOS MZ executable file format and its descendants (including NE and PE) 0
MZ
4D 5A
zip

jar
odt
ods
odp
docx
xlsx
pptx
vsdx
apk
aar

zip file format and formats based on it, such as JAR, ODF, OOXML 0
PK..
50 4B 03 04

50 4B 05 06

(empty archive)

50 4B 07 08

(spanned archive)

rar RAR archive version 1.50 onwards[8] 0
Rar!...

52 61 72 21 1A 07 00
rar RAR archive version 5.0 onwards[9] 0
Rar!....
52 61 72 21 1A 07 01 00
elf Executable and Linkable Format 0
.ELF
7F 45 4C 46
png Image encoded in the Portable Network Graphics format[10] 0
.PNG....
89 50 4E 47 0D 0A 1A 0A
class Java class file, Mach-O Fat Binary 0
Êþº¾
CA FE BA BE
UTF-8 encoded Unicode byte order mark, commonly seen in text files. 0

EF BB BF
Mach-O binary (32-bit) 0

0x1000

........
FE ED FA CE
Mach-O binary (64-bit) 0

0x1000

........
FE ED FA CF
Mach-O binary (reverse byte ordering scheme, 32-bit)[11] 0
........
CE FA ED FE
Mach-O binary (reverse byte ordering scheme, 64-bit) 0
........
CF FA ED FE
Byte-order mark for text file encoded in little-endian 16-bit Unicode Transfer Format 0
..
FF FE
Byte-order mark for text file encoded in little-endian 32-bit Unicode Transfer Format 0
....
FF FE 00 00
ps PostScript document 0
%!PS
25 21 50 53
pdf PDF document 0
%PDF-
25 50 44 46 2D
asf

wma
wmv

Advanced Systems Format[12] 0
0&²u.fÏ
.¦Ù.ª.bÎl
30 26 B2 75 8E 66 CF 11
A6 D9 00 AA 00 62 CE 6C
System Deployment Image, a disk image format used by Microsoft 0
$SDI0001
24 53 44 49 30 30 30 31
ogg

oga
ogv

Ogg, an open source media container format 0
OggS
4F 67 67 53
psd Photoshop Document file, Adobe Photoshop’s native file format 0
8BPS
38 42 50 53
wav Waveform Audio File Format 0
RIFF....
WAVE
52 49 46 46 ?? ?? ?? ?? 57 41 56 45
avi Audio Video Interleave video format 0
RIFF....
AVI.
52 49 46 46 ?? ?? ?? ?? 41 56 49 20
mp3 MPEG-1 Layer 3 file without an ID3 tag or with an ID3v1 tag (which’s appended at the end of the file) 0
ÿû

ÿó

ÿò

FF FB

FF F3

FF F2

mp3 MP3 file with an ID3v2 container 0
ID3
49 44 33
bmp

dib

BMP file, a bitmap format used mostly in the Windows world 0
BM
42 4D
iso ISO9660 CD/DVD image file[13] 0x8001

0x8801
0x9001

CD001
43 44 30 30 31
fits Flexible Image Transport System (FITS)[14] 0
SIMPLE  
=       
        
     T
53 49 4D 50 4C 45 20 20
3D 20 20 20 20 20 20 20
20 20 20 20 20 20 20 20
20 20 20 20 20 54
flac Free Lossless Audio Codec[15] 0
fLaC
66 4C 61 43
mid

midi

MIDI sound file[16] 0
MThd
4D 54 68 64
doc

xls
ppt
msg

Compound File Binary Format, a container format used for document by older versions of Microsoft Office.[17] It is however an open format used by other programs as well. 0
D0 CF 11 E0 A1 B1 1A E1
dex Dalvik Executable 0
dex.035.
64 65 78 0A 30 33 35 00
vmdk VMDK files[18][19] 0
KDM
4B 44 4D
crx Google Chrome extension[20] or packaged app[21] 0
Cr24
43 72 32 34
fh8 FreeHand 8 document[22][23][24] 0
AGD3
41 47 44 33
cwk AppleWorks 5 document 0
....BOBO
........
....
05 07 00 00 42 4F 42 4F
05 07 00 00 00 00 00 00
00 00 00 00 00 01
cwk AppleWorks 6 document 0
....BOBO
........
....
06 07 E1 00 42 4F 42 4F
06 07 E1 00 00 00 00 00
00 00 00 00 00 01
toast Roxio Toast disc image file, also some .dmg-files begin with same bytes 0
ER....
ãER....
45 52 02 00 00 00
8B 45 52 02 00 00 00
dmg Apple Disk Image file 0
x.s.bb`
78 01 73 0D 62 62 60
xar eXtensible ARchive format[25] 0
xar!
78 61 72 21
dat Windows Files And Settings Transfer Repository[26]

See also USMT 3.0 (Win XP)[27] and USMT 4.0 (Win 7)[28] User Guides

0
PMOCCMOC
50 4D 4F 43 43 4D 4F 43
nes Nintendo Entertainment System ROM file[29] 0
NES
4E 45 53 1A
tar tar archive[30] 0x101
ustar.00
ustar  .
75 73 74 61 72 00 30 30
75 73 74 61 72 20 20 00
tox Open source portable voxel file[31] 0
TOX
74 6F 78 33
MLV Magic Lantern Video file[32] 0
MLVI
4D 4C 56 49
Windows Update Binary Delta Compression[33] 0
DCM PA30
44 43 4D 01 50 41 33 30
7z 7-Zip File Format 0
7z¼¯'
37 7A BC AF 27 1C
gz

tar.gz

[rfc:1952 GZIP] 0
..
1F 8B
lz4 LZ4 Frame Format[34]

Remark: LZ4 block format does not offer any magic bytes.[35]

0
."M.
04 22 4D 18
cab Microsoft Cabinet file 0
MSCF
4D 53 43 46
Various. (Replacing the last character of the original file extension with an underscore, e.g. setup.exe becomes setup.ex_) Microsoft compressed file in Quantum format, used prior to Windows XP. File can be decompressed using Extract.exe or Expand.exe distributed with earlier versions of Windows. 0
SZDD....
53 5A 44 44 88 F0 27 33
flif Free Lossless Image Format 0
FLIF
46 4C 49 46
mkv

mka
mks
mk3d
webm

Matroska media container, including WebM 0
.Eߣ
1A 45 DF A3
stg «SEAN : Session Analysis» Training file. Also used in compatible software «Rpw : Rowperfect for Windows» and «RP3W : ROWPERFECT3 for Windows». 0
MIL 
4D 49 4C 20
djvu

djv

DjVu document
Байт, следующий за DJV будет 55 (U) для одностраничного файла и 4D (M) для многостраничного: AT&TFORM….DJVU и AT&TFORM….DJVM соответственно.
0
AT&TFORM....DJV
41 54 26 54 46 4F 52 4D ?? ?? ?? ?? 44 4A 56
der DER encoded X.509 certificate 0
0.
30 82
dcm DICOM Medical File Format 0x80
DICM
44 49 43 4D
woff WOFF File Format 1.0 0
wOFF
77 4F 46 46
woff2 WOFF File Format 2.0 0
wOF2
77 4F 46 32
XML eXtensible Markup Language when using the ASCII character encoding 0
<?xml 
3c 3f 78 6d 6c 20
wasm WebAssembly binary format[36] 0
asm
6d 73 61 00
lep Lepton compressed JPEG image[37] 0
cf 84 01
swf flash .swf 0 .CWS

EWS

43 57 53
46 57 53
deb linux deb file 0 !<arch>.
21 3C 61 72 63 68 3E
webp Google WebP image file 0 RIFF….

WEBP

52 49 46 46 ?? ?? ?? ?? 57 45 42 50
U-Boot / uImage. Das U-Boot Universal Boot Loader.[38] 0
'..V
27 05 19 56
rtf Rich Text Format 0
{rtf1
7B 5C 72 74 66 31
Microsoft Tape Format 0
TAPE
54 41 50 45
ts

tsv

tsa

MPEG Transport Stream (MPEG-2 Part 1) 0

0xBC

0x178

(every 188th byte)

G
47
m2p

vob

MPEG Program Stream (MPEG-1 Part 1 (essentially identical) and MPEG-2 Part 1) 0
....
00 00 01 BA
mpg

mpeg

MPEG Program Stream

MPEG Transport Stream

MPEG-1 video and MPEG-2 video (MPEG-1 Part 2 and MPEG-2 Part 2)

0
....
G
....
00 00 01 BA
47
00 00 01 B3
zlib

No Compression (no preset dictionary)

Best speed (no preset dictionary)

Default Compression (no preset dictionary)

Best Compression (no preset dictionary)

No Compression (with preset dictionary)

Best speed (with preset dictionary)

Default Compression (with preset dictionary)

Best Compression (with preset dictionary)

0
....
78 01

78 5E

78 9C

78 DA

78 20

78 7D

78 BB

78 F9

dat Minecraft Level Data File 1 ‹�
1F 8B 08 00
lzfse LZFSE — Lempel-Ziv style data compression algorithm using Finite State Entropy coding. (bvx2)

https://github.com/lzfse/lzfse

0
62 76 78 32
orc Apache ORC (Optimized Row Columnar) file format 0
ORC
4F 52 43
avro Apache Avro binary file format 0
Obj.
4F 62 6A 01
rc RCFile columnar file format 0
SEQ6
53 45 51 36
Apache Parquet columnar file format 0
PAR1
50 41 52 31

См. также[править | править код]

  • Проект:Информационные технологии/Списки/Список форматов файлов 2

Примечания[править | править код]

  1. A. Format of the RPM file. Дата обращения: 15 февраля 2017. (недоступная ссылка)
  2. GitHub – NiLuJe/KindleTool: Tool for creating/extracting Kindle updates and more. Дата обращения: 15 февраля 2017. Архивировано 21 апреля 2017 года.
  3. Icons Архивная копия от 2 января 2018 на Wayback Machine (at MSDN)
  4. GRAPHICS INTERCHANGE FORMAT(sm) Version 89a. Дата обращения: 14 декабря 2017. Архивировано 25 декабря 2018 года.
  5. Computer Knowledge File Extension .CR2 Details. filext.com. Дата обращения: 14 декабря 2017. Архивировано 12 декабря 2017 года.
  6. Inside the Canon RAW format version 2, understanding .CR2 file format and files produced by Canon EOS Digital Camera. free.fr. Дата обращения: 14 декабря 2017. Архивировано 4 декабря 2017 года.
  7. Bellard, Fabrice BPG Image format (2015). Дата обращения: 14 декабря 2017. Архивировано 20 января 2017 года.
  8. TechNote.txt: RAR version 4.00 — Technical information. 2010-12-01. «The marker block is actually considered as a fixed byte sequence: 0x52 0x61 0x72 0x21 0x1a 0x07 0x00»
  9. RAR 5.0 archive format. Дата обращения: 1 мая 2013. Архивировано 21 декабря 2020 года.
  10. RFC 2083 – PNG (Portable Network Graphics) Specification Version 1.0. ietf.org. Дата обращения: 14 декабря 2017. Архивировано 28 июня 2017 года.
  11. Mac Developer Library. apple.com. Дата обращения: 14 декабря 2017. Архивировано 9 июня 2012 года.
  12. ASF (Advanced Systems Format). Дата обращения: 14 декабря 2017. Архивировано 4 февраля 2009 года.
  13. Gary C. Kessler File Signatures Table (21 октября 2012). Дата обращения: 28 декабря 2012. Архивировано 21 марта 2021 года.
  14. Flexible Image Transport System (FITS), Version 3.0 – File type signifiers (26 сентября 2012). Дата обращения: 2013-1-24.05.2023. Архивировано 27 февраля 2017 года.
  15. Josh Coalson FLAC — format. — «”fLaC”, the FLAC stream marker in ASCII, meaning byte 0 of the stream is 0x66, followed by 0x4C 0x61 0x43». Дата обращения: 4 апреля 2013. Архивировано 29 декабря 2010 года.
  16. File Signature Database: mid File Signatures. filesignatures.net. Дата обращения: 14 декабря 2017. Архивировано 11 марта 2016 года.
  17. Developing a tool to recognise MS Office file types ( .doc, .xls, .mdb, .ppt ). social.msdn.microsoft.com. Дата обращения: 14 декабря 2017. Архивировано из оригинала 9 августа 2014 года.
  18. What Files Make Up a Virtual Machine? vmware.com. Дата обращения: 14 декабря 2017. Архивировано 27 декабря 2016 года.
  19. Источник. Дата обращения: 14 декабря 2017. Архивировано 15 октября 2011 года.
  20. CRX Package Format. chrome.com. Дата обращения: 14 декабря 2017. Архивировано 16 декабря 2013 года.
  21. CRX Package Format. chrome.com. Дата обращения: 14 декабря 2017. Архивировано 16 декабря 2013 года.
  22. [Pythonmac-SIG] Discovering file type. python.org. Дата обращения: 14 декабря 2017. Архивировано 16 июля 2018 года.
  23. Tim Fisher FH8 File – What It Is & How To Open One. About.com Tech. Дата обращения: 14 декабря 2017. Архивировано 4 марта 2016 года.
  24. Google Groups. google.com.
  25. xar – xarformat.wiki. code.google.com. Дата обращения: 14 декабря 2017. Архивировано 3 апреля 2016 года.
  26. Easily Restore Your Computer With File and Settings Transfer Wizard XP (Part 1). howtogeek.com. Дата обращения: 14 декабря 2017. Архивировано 1 августа 2016 года.
  27. User State Migration Tool 3.0. microsoft.com. Microsoft. Дата обращения: 27 июля 2018. Архивировано 2 сентября 2017 года.
  28. User State Migration Tool 4.0 User’s Guide. microsoft.com. Microsoft. Дата обращения: 14 декабря 2017. Архивировано 26 августа 2017 года.
  29. NESRomTool::NES ROM Quickstart. sadistech.com. Дата обращения: 14 декабря 2017. Архивировано 30 августа 2016 года.
  30. GNU tar 1.28: Basic Tar Format. gnu.org. Дата обращения: 14 декабря 2017. Архивировано 7 декабря 2017 года.
  31. UVOX Universal Voxel Translator – Man Page. tox.land. Дата обращения: 14 декабря 2017. Архивировано из оригинала 8 мая 2016 года.
  32. RAW Format v2.0 – Google Sheets. google.com.
  33. Using Binary Delta Compression (BDC) Technology to Update Windows Operating Systems. Microsoft (10 июня 2005). Дата обращения: 15 марта 2015. Архивировано из оригинала 1 августа 2015 года.
  34. Collet, Yann LZ4 Frame format. github.com. Дата обращения: 14 декабря 2017. Архивировано 4 июля 2019 года.
  35. Collet, Yann LZ4 Block Format. github.com. Дата обращения: 14 декабря 2017. Архивировано 4 июля 2019 года.
  36. WebAssembly/design. GitHub. Дата обращения: 1 ноября 2016. Архивировано 8 апреля 2017 года.
  37. Lepton image compression: saving 22% losslessly from images at 15MB/s. Dropbox. Дата обращения: 14 декабря 2017. Архивировано 15 июля 2016 года.
  38. How to Extract an uImage. Дата обращения: 24 февраля 2017. Архивировано из оригинала 25 февраля 2017 года.

Ссылки[править | править код]

  • Список сигнатур файлов Гэри Кесслера
  • Онлайновые базы данных сигнатур файлов для судебно-медицинской практики, частное собрание, свободное для правоохранительных органов
  • Страница руководства утилит compress, uncompress, и zcat SCO Open Server
  • Публичные базы данных сигнатур файла
  • Полный список магических чисел с примерами файлов

9 Июня 2015


1 311



В избр.
Сохранено

Алгоритм восстановления данных
по файловым «сигнатурам»

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

b_5576a25a8aae4.jpg

Прочитавшие ранее опубликованную статью «Как Windows удаляет файлы и почему их можно восстановить» (http://hetmanrecovery.com/ru/recovery_news/why-del…) справедливо зададутся вопросом, как именно функционируют данные программы при повреждении или отсутствии файловой системы. В самом деле, классические инструменты по восстановлению данных работают с информацией о файлах, полученной из файловой системы. Соответственно, если записи о файле в файловой системе не обнаружено, классические инструменты (такие, как команда «undelete» из ранних версий операционных систем) не смогут даже обнаружить удалённую информацию.

Сигнатурный поиск

Поиск по сигнатурам позволяет восстановить файлы после форматирования диска или удаления логических разделов. Для технологии существует множество коммерческих названий. «Power Search», «Content-Aware Analysis», «Smart Scan» – все эти технологии от разных производителей работают по одному и тому же принципу.

Как работает поиск по сигнатурам

Определение файлов

Основной принцип работы алгоритмов сигнатурного поиска такой же, как у самых первых антивирусов. Как антивирус сканирует файл в поисках участков данных, совпадающих с известными фрагментами кода вирусов, так и алгоритмы сигнатурного поиска, использующиеся в программах для восстановления данных, считывают информацию с поверхности диска в надежде встретить знакомые участки данных. Заголовки многих типов файлов содержат характерные последовательности символов. К примеру, файлы в формате *.jpeg содержат последовательность символов «JFIF», *.bmp изображения начинаются с «BM», архивы *.zip начинаются с символов «PK», *.dbf базы данных содержат сигнатуру «OPLDatab», а документы PDF начинаются с символов «%PDF-».

Некоторые файлы (к примеру, текстовые и HTML файлы) не обладают характерными сигнатурами, но могут быть определены по косвенным признакам, т.к. содержат только символы из таблицы ASCII.

Определение размера файла

Для восстановления файла мало найти его начало, нужно также определить его конец. Конец файла можно найти, зная размер и адрес начала файла. Размер файла определяется либо анализом заголовка (*.zip, *.jpeg, *.avi, *.psd, *.pst, *.rar, *.tiff и т.п.), либо считыванием и анализом секторов диска, идущих сразу за заголовком. К примеру, концом текстового или HTML файла алгоритм будет считать первый же сектор, который будет содержать символы, не входящие в таблицу ASCII.

Ограничения

Сигнатурный поиск – не панацея. Перезапись содержимого файла и фрагментирование дисков (особенно – файлов большого размера) оказывают негативное влияние на возможность восстановления информации.

Гибридные алгоритмы

Современные программы для восстановления данных используют гибридный подход к анализу диска, стараясь по возможности считать максимум информации из файловой системы и прибегая к сигнатурному анализу содержимого диска только в случаях крайней необходимости – при повреждении или отсутствии файловой системы, а также для поиска файлов, удалённых длительное время назад.

Статья взята с сайта hetmanrecovery.com

2 / 2 / 0

Регистрация: 13.12.2011

Сообщений: 30

1

Узнать сигнатуру файла

20.12.2011, 00:00. Показов 10375. Ответов 5


Студворк — интернет-сервис помощи студентам

Привет. Увлекся немного работой с файлами и в ходе изучения столкнулся с понятием сигнатура файла. Инфы, которая бы внятно объяснила как эта сигнатура выглядит и как ее достать не нашел. Может не так искал. Так вот, прошу Вас мне помочь это понять). Например есть файл C:primer.exe. Как програмно узнать его сигнатуру в C#? Можно ли ее вывести в ричтекстбокс?



0



2 / 2 / 0

Регистрация: 13.12.2011

Сообщений: 30

21.12.2011, 12:37

 [ТС]

2

так что, никто не знает?



0



Эксперт .NET

17167 / 12628 / 3314

Регистрация: 17.09.2011

Сообщений: 20,900

21.12.2011, 12:44

3

Сигнатура бывает двух типов:
1. определенный ряд байт в заголовке файла, указывающий ОС на тип этого файла (с какой прогой открывать).
2. Контрольная сумма, используемая для проверки файла на повреждения.

В первом случае можно просто открыть файл и считать из потока первые (10 или 20, не помню) байт. Во втором случае нужно знать алгоритм, используемый файловой системой для вычисления контрольной суммы и высчитывать самому.



1



486 / 298 / 37

Регистрация: 22.06.2011

Сообщений: 929

21.12.2011, 12:44

4

Сигнатура это первые байты, указывающие на тип файла.Например:
MZP -это exe, dll;
BM – bmp
GIF89 – gif
…..



1



2 / 2 / 0

Регистрация: 13.12.2011

Сообщений: 30

21.12.2011, 19:28

 [ТС]

5

Цитата
Сообщение от kolorotur
Посмотреть сообщение

Сигнатура бывает двух типов:
1. определенный ряд байт в заголовке файла, указывающий ОС на тип этого файла (с какой прогой открывать).
2. Контрольная сумма, используемая для проверки файла на повреждения.

В первом случае можно просто открыть файл и считать из потока первые (10 или 20, не помню) байт. Во втором случае нужно знать алгоритм, используемый файловой системой для вычисления контрольной суммы и высчитывать самому.

А вот например когда антивирус проверяет файл, и ищет в нем сигнатуру вируса(сигнатурный анализ). Так это что за сигнатура?



0



486 / 298 / 37

Регистрация: 22.06.2011

Сообщений: 929

22.12.2011, 09:01

6

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



0



Добавить комментарий