#windows #serialization #encryption #file-extension
#Windows #сериализация #шифрование #расширение файла
Вопрос:
Мои дорогие stackoverflowers,
Я хочу получить доступ к сериализованным данным, содержащимся в файлах со странными для меня расширениями. Основная часть данных, похоже, находится в файлах .st и .idt.
Программа предназначена для запуска в Windows, и команда unix file
дает мне только ложные срабатывания. Есть идеи о том, что означают эти расширения, или о том, как исследовать и извлекать их содержимое?
Ниже я предоставляю полный список расширений в длинном списке в надежде, что кто-нибудь их узнает. Поиск в Google также дает мне ложные срабатывания. Например: .st обычно используется для файлов эмуляции ATARI.
Заранее спасибо!
- .cix
- .cmp
- .cnt
- .dam
- .das
- .drf
- .idt
- .irc
- .lxp
- .mp
- .mbr
- .str
- .vlf
- .rpf
- .st
- .st
Комментарии:
1. Дополнительная информация о том, откуда взялись эти файлы, поможет.
2. .idt может быть экспортированной таблицей базы данных установщика Windows. Будет ли это иметь смысл? Я проверил многие из них здесь ( file-extensions.org/search/?searchstring=idtamp;searchtype=2 ), после тестирования сайта с несколькими расширениями файлов я уже заранее знал тип.
Ответ №1:
Несколько общих советов о том, как подойти к этому:
- Один из способов приблизиться к этому — использовать сайт, подобный http://filext.com / чтобы попытаться выяснить, откуда взялись файлы. Это может быть непросто, потому что нигде не существует стандарта расширения файла — любой может использовать любое расширение, поэтому у вас будет много проблем с конфликтами / устранением неоднозначности.
- Иногда вам может повезти, и если вы откроете файлы в обычном текстовом редакторе, вы можете иногда видеть простые строковые данные, которые можно прочитать, что может помочь определить общий вид данных, содержащихся в файле, и, следовательно, сократить возможное количество источников для файла. Например, я часто помогал людям, которые получали файл в виде вложения электронной почты без расширения, выяснить, какой это был тип файла, используя эту технику, добавив расширение файла, а затем открыв его в соответствующей программе.
- Существуют также такие сайты, как http://www.oldversion.com / которые хранят старые версии программ, которые вы (как правило) можете скачать бесплатно. Это особенно полезно, если данные, с которыми вы работаете, были созданы более 5 лет назад в собственной программе, и эта программа больше не доступна / не может быть приобретена у создавшего ее поставщика.
- Как только у вас появится хорошее представление о том, какие файлы принадлежат каким программам, вы, вероятно, потратите много времени, пытаясь найти онлайн-ресурсы о структуре файлов. Если это недоступно, вы можете получить копию исходной программы, но либо программа не откроет интересующие вас файлы, либо вам все еще нужен необработанный доступ к данным, затем попробуйте сгенерировать несколько примеров выходных файлов с введенными вами данными и перейдите к ним в Rosetta Stone, сравниваяваш известный файл в исходный файл.
- Оттуда дополнительные знания, которые вам, вероятно, понадобятся, — это попытаться выяснить, на каком языке / компиляторе было написано программное обеспечение, что может дать вам представление о том, какие библиотеки кода использовались для сериализации данных в первую очередь. Как только вы все это узнаете, вам нужно прочитать любую доступную документацию по процессу сериализации, а затем написать десериализатор.
Единственное, что этот метод не решит, это то, что если вы имеете дело с поврежденными / усеченными файлами данных, может быть очень сложно определить разницу между этим и тем, правильна ли у вас структура файла. В этом случае может быть полезен метод «Розеттского камня».
В зависимости от того, о каком количестве различных частей исходного программного обеспечения вы говорите, звучит как довольно большой проект. Удачи!