Извлечение сериализованных данных из неизвестных файлов - PullRequest
1 голос
/ 15 октября 2011

Мои дорогие цветы,

Я хочу получить доступ к сериализованным данным, содержащимся в файлах со странными для меня расширениями. Большая часть данных, похоже, находится в .st и .idt файле.

Программа предназначена для запуска в Windows, а команда unix file дает мне только ложные срабатывания. Любые идеи о том, что означают эти расширения или о том, как исследовать и извлечь их содержимое?

Ниже я приведу все расширения в длинном списке в надежде, что кто-нибудь их узнает. Поиск в Google также дает мне ложные срабатывания. Например: .st обычно используется для файлов эмуляции ATARI.

Заранее спасибо!

  • .cix
  • .cmp
  • .cnt
  • .dam
  • .das
  • .drf
  • .idt
  • 1031 * расширение .lrc *
  • .lxp
  • .mp
  • .mbr
  • .str
  • .vlf
  • .rpf
  • .st
  • .st

1 Ответ

2 голосов
/ 21 октября 2011

Несколько общих советов о том, как подойти к этому:

  1. Один из способов подойти к этому - использовать сайт типа http://filext.com/, чтобы попытаться выяснить, откуда пришли файлы.Это может быть сложно, потому что это не значит, что где-то есть стандарт расширения файлов - любой может использовать любое расширение, так что вам придется решать множество конфликтов / проблем неоднозначности.
  2. Иногда вам может повезтии если вы откроете файлы в текстовом редакторе, вы можете иногда видеть простые строковые данные, которые можно прочитать, что может помочь идентифицировать общий вид данных, содержащихся в файле, и, следовательно, поможет сократить возможное количество источников дляфайл.Например, я часто помогал людям, которые получили файл в виде вложения электронной почты с расширением no , выяснить, к какому типу файлов относится этот метод, добавив расширение файла, а затем открыв его в соответствующей программе..
  3. Существуют также сайты, подобные http://www.oldversion.com/, на которых хранятся старые версии программ, которые вы (как правило) можете загрузить бесплатно.Это особенно полезно, если данные, с которыми вы работаете, были созданы 5+ лет назад в рамках проприетарной программы, и эта программа больше не доступна / не покупается у поставщика, который ее создал.
  4. Как только у вас естьХорошая идея о том, какие файлы принадлежат каким программам, тогда вы, вероятно, будете тратить много времени, пытаясь найти онлайн-ресурсы для определения структуры файлов.Если это недоступно, вы можете получить копию исходной программы, но либо программа не откроет интересующие вас файлы, либо вам все еще нужен необработанный доступ к данным, а затем попробуйте сгенерировать некоторые примеры выходных файлов с помощьюданные, которые вы вводите, и отправляете Rosetta Stone на него, сравнивая ваш известный файл с исходным файлом.
  5. Оттуда, дополнительные знания, которые вы, вероятно, захотитеЭто попытка выяснить, на каком языке / компиляторе было написано программное обеспечение, что может дать вам представление о том, какие библиотеки кода использовались для сериализации данных.Как только вы все это знаете, вам нужно прочитать любую доступную документацию по процессу сериализации, а затем написать десериализатор.

Единственное, что эта техника не решит, - это если выИмея дело с поврежденными / усеченными файлами данных, может быть очень трудно определить разницу между этим и правильностью структуры файла.Техника «Розеттский камень» может быть полезна в этом случае.

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

...