как узнать настоящее расширение файла
Как узнать расширение файла
Зачем знать расширение файла?
Иногда на компьютер пользователя теми или иными путями попадают файлы, с которыми ранее его операционной системе работать не приходилось. Скорее всего, программа, необходимая для взаимодействия с такого рода файлами, установлена тоже не будет. Об этом система уведомляет сообщением следующего вида:
В нем приводится информация о названии файла, а также стандартное сообщение, уведомляющее, что операционной системе неизвестно, какие программы поддерживают работу с таким расширением. Пользователю доступно 2 варианта дальнейших действий:
Практика показывает, что первый вариант бесполезен – ничего толкового обычно найти не удается. А вот второе решение весьма эффективное. Зная расширение файла, вы сможете безо всяких проблем найти подходящую программу, воспользовавшись для этого возможностями своей любимой поисковой системы.
Как включить отображение расширений
По умолчанию отображение расширений в операционной системе Windows отключено. Опытные пользователи при необходимости могут активировать эту функцию самостоятельно, а неопытным она и не нужна – можно случайно изменить расширение важного системного файла, что приведет к различным нарушениям работы Windows.
Если вам понадобилось включить отображение расширений, вы наверняка знаете, зачем это делаете. В такой ситуации следуйте нижеизложенной инструкции.
Как узнать формат файла без расширения
Даже после включения отображения расширения, некоторые файлы будут показываться без такового. Пример можете увидеть на следующем скриншоте.
Аналогичные ситуации могут происходить при загрузке файлов из интернета или сохранении их на компьютер из других источников. Выход есть и из такой ситуации. Вы можете узнать формат файла без расширения с помощью специального сервиса.
Целевая страница имеет следующий вид:
Работа с сервисом осуществляется в следующем порядке.
В случае успешного завершения операции, сразу под формой отправки файла на проверку вы увидите всю необходимую информацию об анализируемом объекте.
Теперь вы знаете, зачем нужно знать расширение файла, как включить отображение этой информации в операционной системе Windows, а также владеете инструментом для определения формата файлов, не имеющих собственного видимого расширения.
Как узнать настоящее расширение файла
Почти любому пользователю, не зависимо от его опыта, приходится задаться вопросом — как узнать расширение файла?
Иногда нужно сделать его видимым для всех файлов.
Расширение файла это добавление к имени файла нескольких букв, которые определяют принадлежность файла к тому или иному приложению, программе, с помощью которой его можно открыть или запустить.
Например текстовые файлы имеют расширение txt,
документы Maicrosoft World имеют расширение doc,
расширение exe присваивается исполняемым файлам, программе.
Из википедии:
Расширение имени файла — последовательность символов, добавляемых к имени файла и предназначенных для идентификации типа (формата) файла. Это один из распространённых способов, с помощью которых пользователь или программное обеспечение компьютера может определить тип данных, хранящихся в файле.
Расширение обычно отделяется от основной части имени файла точкой. В операционных системах CP/M и MS-DOS длина расширения была ограничена тремя символами, в современных операционных системах это ограничение отсутствует. Иногда могут использоваться несколько расширений, следующих друг за другом, например, «.tar.gz».
Более подробно можно почитать в Википедии.
Итак чтобы узнать расширение файла можно просто нажать правой кнопкой мыши на файле и нажать свойства, на вкладке общие мы увидим расширение этого файла и приложение которым можно его открыть.
Если вы хотите всегда видеть расширение всех файлов то необходимо сделать следующее:
Для Windows 10
Выбираем вкладку «Вид»
Выбираем параметры, изменить параметры папок и поиска
В открывшемся меню выбираем вкладку «Вид»
В конце списка убираем галочку «Скрывать расширения…»
Применяем ко всем папкам, нажимаем внизу еще раз применить,
и последнее нажимаем «ОК»
Для Windows 8, 8.1
Выбираем вкладку «Вид»
Ставим галочку рядом с надписью «Расширение имен файлов»
Для Windows 7
Заходим в панель управления, выбираем просмотр «Мелкие значки» и выбираем параметры папок. На картинке ниже показано наглядно.
В открывшемся окне параметров папок во вкладке «Вид», прокручиваем список параметров вниз и убираем галочку «Скрывать расширения …»
Затем нажимаем «Применить» и «ОК»
Для Windows XP
Выбираем вкладку «Сервис», «свойства папки…»
В открывшемся окне выбираем вкладку»Вид», в дополнительных параметрах убираем галочку напротив строки «Скрывать расширения для …».
Нажимаем «Применить», «Сброс для всех папок», «Применить ко всем папкам» и последнее «ОК».
Как определить тип файла без расширения
Представьте, что вы получаете почту от своих друзей или коллег, а во вложении они отправили вам какой-то документ в виде прикреплённого к письму файла, в котором есть нужная вам информация. Вы сохраняете этот файл на свой компьютер, но видите, что вместо привычных значков какой-либо программы (Word, Excel, PDF и т.д.) никакого значка нет, а Windows считает, что это какой-то файл с неизвестным форматом. Зачастую это происходит из-за того, что файл в процессе прикрепления к письму отправителем (или при сохранении файла на компьютер получателем) теряет своё расширение, и операционная система Windows перестаёт понимать, что за тип файла перед ней, и соответственно не знает, какой программой нужно открывать такой файл. Что такое расширение файла, и как их отображать и скрывать в различных версиях Windows, вы можете прочитать в этой статье.
Второй наиболее частой причиной потери расширения файла является неаккуратное переименование файла, когда у вас в Windows задан режим отображения расширений всех известных типов файлов, и вы при попытке переименовать файл случайно стираете расширение файла и получаете в итоге документ неизвестного происхождения, который уже не сможете открыть двойным щелчком мышки. Например, файл у вас назывался «Письмо.doc», который раньше легко открывался с помощью программы Word, а после переименования он стал называться «Письмо по работе». Обратите внимание, что у файла теперь нет расширения «.doc», которое было случайно стёрто при изменении имени файла, и теперь этот файл не будет открываться двойным щелчком мышки, а попытается спросить у вас, какой именно программой нужно открывать этот файл.
Хорошо, если вы точно знаете, какой тип файла перед вами, и можете просто добавить ему нужное расширение, например, doc или xls, чтобы он автоматически открывался с помощью двойного щелчка мышки по нему. В отдельной статье вы можете прочитать о наиболее популярных форматах файлов Windows и их расширениях. Но что делать, если перед вами файл, тип которого вы не знаете? Есть как минимум два способа узнать, какой перед вами тип файла, и задать ему правильное расширение.
В этой статье мы с вами проведём эксперимент — возьмём несколько готовых файлов разных форматов, которые рассматривали в вышеуказанной статье, сотрём им расширения, как будто они были утеряны или случайно удалены, и попытаемся узнать, какой тип имеет каждый файл, и какое ему нужно добавить расширение, чтобы легко открыть его.
В нашем эксперименте будут участвовать несколько файлов:
На картинке ниже у всех файлов стоят свои расширения (выделены рамочками с красными краями):
Удаляем все расширения файлов, и после этого пропадают все значки программ, с помощью которых можно открывать эти файлы. В Windows XP это выглядит так:
В Windows 7 это выглядит немного по-другому, но смысл тот же — операционная система не знает, какой программой открывать эти файлы.
Теперь при попытке открыть любой файл Windows предложит нам сначала выбрать программу, которой нужно открывать этот файл:
И здесь надо быть аккуратным, поскольку неправильный выбор программы для данного типа файла приведёт к тому, что файл не откроется, и программа выдаст ошибку, а за данным файлом закрепится неправильная ассоциация программы его открытия.
Иногда о том, какой перед нами тип файла и какое расширение у должно быть, можно догадаться и по названию файла. Но мы возьмём тот случай, когда это сделать невозможно.
Итак, перед нами куча файлов с неизвестными форматами и расширениями, и нам надо понять, что это за файлы.
Первый способ узнать, что за тип файла перед нами — это посмотреть содержимое этих файлов с помощью простых текстовых редакторов, например, Блокнота, а лучше — либо с помощью встроенных программ просмотра различных файловых менеджеров, таких, как Total Commander или Far, либо с помощью бесплатного усовершенствованного текстового редактора Notepad++. Рекомендую вам скачать и установить его, поскольку у него есть множество преимуществ перед обычным блокнотом.
Берём первый файл «Bonnie Tyler — Turn around», в списке программ для открытия выбираем Notepad++ (если не установили его — используйте обычный Блокнот, но лучше всё-таки Notepad++, поскольку при открытии больших файлов Блокнот просто зависает), и видим какие-то кракозябры:
Смущать это не должно, поскольку для определения типа файла достаточно посмотреть первую строчку содержимого файла. Здесь видно, что файл начинается с букв «ID3″.
Итак, запоминаем, что если внутри файла его содержимое начинается на «ID3«, то это музыкальный файл формата mp3, и именно это расширение необходимо ему прописать. После указания расширения файл будет распознан системой как музыкальный, и вы сможете его прослушать.
Открываем второй файл «bonus» той же программой Notepad++ и смотрим его содержимое:
Как видим в первой строчке содержимого файла, в ней неоднократно упоминается, что это видеофайл формата mp4 (выделил красным на скриншоте выше). Да и в целом, если вы видите внутри файла текст вроде «ftypmp42«, то, как правило, это видеофайл формата mp4.
Проделывая ту же самую операцию по просмотру содержимого со всеми остальными файлами, получаем следующую информацию:
Второй способ определения типа файла требует наличия интернет-соединения, а также желательно, чтобы размер файла был небольшим, поскольку мы будем использовать интернет-сервис для определения формата файла.
Переходим по ссылке выше и видим в центре меню, в котором нам предлагается выбрать файл для анализа:
Нажимаем мышкой на кнопку «выберите файл», указываем наш файл для анализа (я попробую проанализировать один из сложных файлов «Материалы к совещанию», чтобы увидеть, сможет ли этот анализатор справиться и понять, что этот файл был создан в MS PowerPoint 2007 (у него было расширение pptx, и мы его удалили при нашем эксперименте). После выбора файла нажимаем кнопку «Analize» и получаем следующий результат:
Как видим, сервис с 97%-ой вероятностью определил, что это файл PowerPoint с расширением pptx. И поскольку этот файл также является архивом-контейнером, содержащим внутри себя другие файлы, анализатор также указал трёхпроцентную вероятность, что это может быть архив zip.
Попробуем также проверить, сможет ли этот сервис определить тип нашего файла «резолюция», у которого мы стёрли расширение pdf. Загружаем файл на сервис, нажимаем кнопку «Analize» и видим, что сервис отлично справился с поставленной задачей:
Как я уже говорил, недостатком данного сервиса может быть то, что для анализа файла ему необходимо его полностью загрузить, и если у вас файл большого размера, то этот процесс может затянуться надолго, а то и вовсе не дойти до конца. Поэтому при больших размерах неопознанных файлов попробуйте сначала воспользоваться первым способом определения его типа, а именно — просмотр содержимого файла через файловый менеджер или редактор Notepad++.
Можно конечно воспользоваться специальными программами для определения типа файла, например, File Type Verificator, но на мой взгляд, гораздо проще и быстрее будет воспользоваться одним из двух предложенных выше способов.
Итак, уважаемые посетители сайта, сегодня мы с вами разобрали, как можно определить формат (тип) файла, если было утеряно его расширение. Если у вас появятся какие-либо вопросы, прошу задавать их в комментариях к этой статье.
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:\Users\MiAl\Downloads\file\.
Откройте командную строку, для этого нажмите 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:\Users\MiAl\Downloads\trid\.
Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».
Перейдите в папку с программой:
Для определения расширения файла используйте команду вида:
Подстановочные знаки могут использоваться для сканирования групп файлов, целых папок и так далее.
Кроме того, использование ключа -ae даст команду TrID добавить предполагаемые расширения к именам файлов. Это удобно, например, при работе с файлами, восстановленными программами для восстановления данных. Например:
На этом этапе файлы в папке c:\temp будут выглядеть так:
Вместо предыдущей опции можно использовать -ce, которая изменит расширение файла на новое; если у файла нет расширения, будет добавлено новыъое. Например:
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 не помогла.
Связанные статьи:
Рекомендуется Вам:
2 комментария to Как узнать тип файла без расширения (в Windows и Linux)
Иногда бывают полезны такие утилиты, как Scalpel и Foremost, которые позволяют анализировать «сырые» двоичные файлы или неразмеченное простаранство дисков (в т.ч. восстанавливать данные после форматирования).
https://trailofbits.github.io/ctf/forensics/
Приветствую! Да, согласен. Для меня открытием стала Binwalk — отличный помощник в анализе прошивок, образов и просто непонятных данных.