Как открыть содержимое exe файла. Как открыть EXE файл
Редакторы ресурсов - это специализированные программы для просмотра, создания и изменения ресурсов PE-файлов. С их помощью можно, например, разблокировать пункты меню в шароварной программе, поменять иконку приложения, изменить внешний вид диалоговых окон, выполнить перевод интерфейса и т.п. У каждого специалиста по реверсу есть свой любимый редактор ресурсов, поэтому нельзя сказать, что какой-то из них лучше или хуже. Очень часто для решения разных задач требуются функции какого-нибудь конкретного инструмента, и в этой статье я попробую вкратце рассказать о самых популярных редакторах ресурсов исполняемых файлов.
Restorator - пожалуй, самый известный редактор ресурсов исполняемых файлов в формате exe, dll, ocx, scr, res и других. Позволяет создавать и редактировать стандартные файлы ресурсов.RES, извлекать и добавлять в файл свои ресурсы. Но главное преимущество Restorator в том, что результаты ваших трудов можно несколькими кликами мышки оформить в виде небольшого патча. Таким способом, например, создано огромное количество русификаторов для различных программ. Из замеченных недостатков первый косяк - это необходимость заплатить за использование программы (в прилагаемых вариантах эта проблема уже решена), а второй - дурацкая привычка гадить строчкой "Bome" в служебных полях иконок отредактированного файла.
eXeScope - мой любимый редактор. Очень шустро работает с ресурсами, можно быстро посмотреть диалоговые окна, вытащить или поменять иконки и картинки, но особенно меня радует работа с ресурсами файлов, написанных на Delphi. Иногда возникают проблемы с ресурсами распакованных файлов, в этом случае обычно помогает пересборка секции ресурсов файла перед отправкой его в редактор. eXeScope тоже платный, но эта проблема тоже давно решена. Если предпочитаете английский интерфейс, то удалите файл eXeScope.RUS из каталога программы.
PE Explorer предназначен для просмотра и редактирования внутренней структуры исполняемых файлов, таких как EXE, DLL, ActiveX и другие. В состав PE Explorer входят редактор ресурсов, редактор секций, дизассемблер, сканер зависимостей, анализатор цифровых подписей и другие незаменимые в работе исследователей программ инструменты. С помощью PE Explorer очень просто анализировать, редактировать или оптимизировать проблемные файлы, переводить интерфейсы на другие языки. Авторы этого поделия те же, что и предыдущего, со всеми вытекающими последствиями. Но заграница снова нам поможет .
Resource Builder - еще одна коммерческая разработка в арсенале редакторов ресурсов. Используя Resource Builder, редактирование ресурсов становится простейшей задачей. В этом редакторе представлен полный набор очень удобных и понятных инструментов для всех типов ресурсов. Встроенный линковщик обновит ресурсы прямо в исполняемых модулях без перекомпиляции, а создание библиотек ресурсов (Resource Only DLLs), используемых для локализации приложений, займет всего пару щелчков мыши. Взять бесплатно этот полезный инструмент можно на сторонних ресурсах: и два .
- бесплатный просмотрщик и редактор ресурсов исполняемых файлов. Скачать можно , а для разработчиков в открытый доступ там же выложены исходные тексты редактора. Вот, учитесь, шароварщики, как надо работать.
ResEdit.1.5.9.zip (527,389 bytes)
RCE - редактор ресурсов для визуального создания и редактирования RC-файлов, может быть использован совместно с IDE или применяться с другими редакторами ресурсов в качестве вспомогательного инструмента. Напрямую с исполняемыми файлами не работает, поэтому особой пользы от RCE я не вижу.
В состав PE Explorer входит один из самых удобных и мощных редакторов ресурсов исполняемых файлов для Windows. Широкие возможности для открытия и редактирования проблемных файлов, большой список поддерживаемых ресурсов, продуманный интерфейс, совместимость с последними версиями Windows и соответствие всем современным требованиям - всё это делает PE Explorer стандартом де факто при выборе средств редактирования ресурсов.
Однако, если вам не нужна расширенная функциональность PE Explorer, попробуйте - это редактор ресурсов из PE Explorer, специально выделенный в отдельный продукт.
Открыв файл в PE Explorer и выбрав кнопку Редактора ресурсов на панели инструментов, вы увидите список ресурсов в виде дерева с папками. Каждая из папок содержит определённый тип ресурса, хранящийся в изучаемом файле (графика, меню, диалоги, иконы и так далее). Раскрыв папку, вы увидите список ресурсных файлов.
В правой панели PE Explorer показывает выбранный из списка ресурс, в зависимости от его типа, в виде графического изображения, текста или бинарного кода (в этом случае клавишей F4 можно переключать режим просмотра (текст/hex), а клавишей F8 - кодовую страницу). Визуальные элементы отображаются в том виде, в каком бы они присутствовали в запущенном приложении: навигация, поиск и редактирование структуры меню и элементов диалога при таком подходе значительно упрощается.
Каждый элемент пользовательского интерфеса, обнаруженный в изучаемой программе, можно сохранить на диск, изменить или заменить. Поддерживаются операции практически с , включая PNG, XML, Image Lists и Type Library.
На панели инструментов находятся кнопки для извлечения и сохранения на диск отдельно выделенного ресурса или всех ресурсов файла одновременно, кнопка вызова редактора ресурсов, кнопки удаления и восстановления выбранного ресурса, копирования в буфер обмена и вызова мастера создания ресурса манифест, кнопка поиска в дереве ресурсов, кнопки свойств ресурса и навигации по дереву. Редактирование, сохранение или удаление так же может производится путём щелчка правой кнопкой на выбранном ресурсе и выбора необходимого действия из контекстного меню:
Стандартные , которые поддерживает PE Explorer, включают bitmap , icon , menu , dialog , cursor , font, stringtable , message table , toolbar , accelerator и version info . Все другие типы ресурсов не являются стандартными. Их название определяется разработчиком файла и может быть каким угодно. В дереве ресурсов названия папок с нестандартныи ресурсами отображается в верхнем регистре, например: AVI , TYPELIB , GIF , PNG , HTML , XML .
В ресурсах программ, созданных при помощи таких средств разработки, как Delphi или C++ Builder, вы не найдёте привычных диалогов, меню или акселераторов. Вместо них зато есть такой тип ресурса, как RCData, в котором и хранятся все эти данные в виде DFM (Delphi Form Module).
Если ресурс RCData содержит формы Delphi, то все найденные объекты и связанные с ними свойства и события отображаются в виде иерархического дерева. Лёгкость навигации и поиск по дереву объектов превращает работу с такими ресурсами в приятное занятие.
Содержимое форм и объектов (имидж листы, битмапы, глифы, стринг-листы) можно просматривать и сохранять на диск, как при работе с обычными стандартными ресурсами.
В результате изменения или замены ресурсов вы можете поменять вид у икон, курсоров, диалогов, кнопок, строчек, анимационных вставок, заменить звуки и другие элементы стандартного пользовательского интерфейса приложений, работающих под любой 32-битной операционной системой из семейства Windows.
Все изменения, произведённые в ресурсах, моментально отображаются на экране в режиме WYSIWYG, и если вас не устраивает полученный результат, всегда можно вернуться к предыдущему состоянию. Любые сделанные изменения могут быть отменены до тех пор, пока вы не нажали ОК и не закрыли редактор.
В зависимости от типа и формата ресурса, PE Explorer автоматически запускает редактор ресурсов в одном из соответствующих режимов - графическом, текстовом или специальном (для редактирования меню, диалогов, версии или форм Дельфи).
Уясните процесс. EXE файлы не поддерживают OS X, поэтому вам понадобится специальное программное обеспечение, чтобы заставить их работать. Для этого установите бесплатную утилиту Wine, в которой можно работать с файлами Windows. Помните, что не все EXE файлы можно открыть в этой утилите, а некоторые программы будут работать лучше, чем другие. Вам не нужен установочный диск Windows, чтобы установить Wine.
Скачайте и установить Xcode из Mac App Store. Это бесплатный инструмент разработчиков, необходимый для того, чтобы скомпилировать программный код. Вы не будете пользоваться этим инструментом, но он необходим для работы с другими утилитами, которые открывают EXE файлы.
- Запустите Xcode и откройте его меню. Выберите «Настройки» – «Загрузки». Нажмите «Установить» (рядом с «Инструменты командной строки»).
Скачайте и установите MacPorts. Это бесплатная утилита, которая упрощает процесс компиляции и которую вы будете использовать, чтобы установить Wine. Вы можете скачать MacPorts с сайта macports.org/install.php . Щелкните по ссылке для версии OS X, которую вы используете, а затем дважды щелкните по скачанному файлу с расширением.pkg, чтобы установить MacPorts.
Откройте терминал, чтобы настроить некоторые параметры MacPorts. Вы можете открыть терминал из папки «Утилиты».
Скопируйте и вставьте в окно терминала следующую команду, а затем нажмите Return:
echo export PATH=/opt/local/bin:/opt/local/sbin:\$PATH$"\n"export MANPATH=/opt/local/man:\$MANPATH | sudo tee -a /etc/profile
Введите пароль администратора, чтобы разрешить исполнение команды. При вводе пароля никакие символы отображаться не будут. Введя пароль, нажмите Return. Если у вас нет пароля администратора, процесс не запустится.
Скопируйте и вставьте следующую команду. Эта команда уведомит MacPorts, пользуетесь ли вы 64-битной системой. Вставьте следующую команду и нажмите Return:
if [ `sysctl -n hw.cpu64bit_capable` -eq 1 ] ; then echo "+universal" | sudo tee -a /opt/local/etc/macports/variants.conf; else echo "n/a"; fi
Введите команду принять условия лицензии Xcode, чтобы получить возможность скомпилировать код. После выполнения этой команды закройте и снова откройте терминал:
- sudo xcodebuild -license
Введите команду, чтобы установить Wine. Вам может быть предложено еще раз ввести пароль администратора. Процесс установки может занять некоторое время.
- sudo port install wine
Перейдите в папку с EXE файлом. Для этого в терминале используйте команду cd .
Использование Wine для запуска EXE файла. Введите следующую команду для запуска EXE файла, который находится в текущем каталоге. Замените имя_файла на имя выбранного ЕХЕ файла.
- wine имя_файла.exe
Используйте программу как обычно. Если EXE файл запустил программу, вы сможете начать работать с ней. Если это установочный файл, следуйте инструкциям на экране, чтобы установить программу (как вы это делаете в Windows).
- Не каждая программа будет работать в Wine. Для получения полного списка совместимых программ откройте сайт appdb.winehq.org .
Запустите установленную программу (если вы использовали EXE файл для ее установки). Для этого воспользуйтесь Wine.
- Введите cd ~/.wine/drive_c/Program\ Files/ , чтобы открыть каталог «Program Files», в котором установлены программы в Wine.
- Введите ls , чтобы просмотреть список всех установленных программ. Введите cd имя_программы, чтобы открыть каталог программы. Если в имени программы присутствует пробел, до пробела введите \ . Например, для Microsoft Office введите cd Microsoft\ Office .
- Введите ls , чтобы найти EXE файл.
- Введите wine имя_программы.exe , чтобы запустить программу
Установите библиотеки Mono, если программа требует наличия.NET. Это библиотека программного обеспечения, требуемая многими программами Windows, а Mono – это бесплатный аналог такой библиотеки, который поддерживается Wine. Установите Mono только в том случае, если ваши программы требуют наличия.NET.
- Введите sudo port install winetricks и нажмите Return.
- Введите winetricks mono210 и нажмите Return, чтобы установить Mono.
Назначение программ для распаковки инсталляторов понятно. В настоящее время инсталляторы сами представляют собой достаточно сложные программы, вносящие изменения в систему или реестр, создающие ярлыки, записывающие файлы в различные папки. Но иногда инсталляторы выполняют нежелательные действия, например, пытаются без ведома пользователя установить различные тулбары или рекламные модули, отправляют разработчику информацию о факте установки, не дают выполнить установку без ввода пароля или серийного номера, и прочие гадости. В этом случае нам требуется извлечь из дистрибутива все содержащиеся в нем файлы, не запуская сам инсталлятор. Кроме файлов из некоторых инсталляторов можно извлечь так называемые скрипты установки, в которых прописывается последовательность действий, из них можно узнать какие ключи реестра меняются, какие файлы и куда записываются и т.п. Также извлеченные из инсталляторов скрипты можно в дальнейшем использовать для создания перепакованных вариантов программ, например, уже включающие в себя файлы с отломанной регистрацией. Еще некоторые особо одаренные аффтары проверяют целостность ранее установленной программы и не дают устанавливать обновления на модифицированные инсталляции, в основном такие милые приколы встречаются на играх. Так что умение бороться с инсталляторами всегда пригодится.
Самым мощным и удобным инструментом для автоматической распаковки инсталляторов является программа Universal Extractor . Она представляет собой оболочку для других распаковщиков, всего поддерживается несколько десятков различных форматов , в том числе таких популярных, как распаковка Inno Setup, InstallShield, Wise Installer и других. Поддерживается русский язык, интеграция в контекстное меню Проводника Windows, продвинутые пользователи могут сохранить и посмотреть лог работы внешних модулей распаковки. На момент написания статьи хостинг с дистрибутивами и исходниками Universal Extractor недоступен, поэтому выложу Universal Extractor здесь.
Теперь переходим к специализированным распаковщиками, ориентированным на конкретный тип инсталляторов. Наиболее мощный и популярный инструмент для создания инсталляторов - бесплатный Inno Setup , он обладает скриптовым языком, позволяющим делать практически неограниченные по опциям дистрибутивы.
, распаковщик инсталляторов Inno Setup версий от 2.0.8 до 5.3.11. Inno Setup Unpacker - консольная утилита, поэтому для удобства работы сделано несколько графических оболочек, например, (русскую версию можно найти на сайте MSILab) или InnoSetup And NSIS Unpacker Shell (требует 7zip и innounp).
InnoSetup.And.NSIS.Unpacker.Shell.1.4.zip (660,484 bytes)
Вспомогательная утилита InnoCry предназначена для обхода паролей на инсталляторах, созданных Inno Setup. Запускаете сперва инсталлятор, в котором требуется ввод пароля, параллельно запускаете InnoCry. Затем InnoCry несколькими способами пытается пропатчить в памяти исполняемый код инсталлятора, чтобы он не требовал ввода пароля. В последней версии также появилась опция активации заблокированных кнопок.
InnoCry.1.2.7.zip (238,909 bytes)
InnoExtractor сделан на базе архиватора 7zip. Позволяет просматривать и извлекать содержимое инсталляторов Inno Setup. Большой плюс в том, что InnoExtractor постоянно совершенствуется и поддерживает как старые, так и новейшие версии этого инсталлятора.
InnoExtractor.4.8.0.156.zip (1,693,514 bytes)
Для распаковки инсталляторов, созданных при помощи или сокращенно NSIS , удобнее всего пользоваться бесплатным архиватором 7zip . Он без труда открывает такие инсталляторы для просмотра и позволяет извлекать из них нужные файлы.
Консольная утилита для извлечения файлов из WISE-инсталляторов . Поддерживаются практически все версии Wise-инсталляторов, в комплекте есть версии распаковщика для DOS, Windows и Linux, а также документация на английском и немецком языках.
E_WISE.2002.03.29.zip (102,968 bytes)
E_WISE.2002.07.01.zip (24,686 bytes)
HWUN (Heuristic Wise UNpacker) также предназначен для распаковки инсталляторов WISE, но в отличие от предыдущей программы использует эвристические алгоритмы для поиска необходимых сигнатур и данных, так что есть большая вероятность, что он будет работать и с более новыми версиями инсталляторов.
HWUN.v0.50a.zip (22,912 bytes)
HWUN.v0.50b.zip (40,509 bytes)
- консольный распаковщик инсталляторов Setup Factory версии 5 и 6. Как признается сам автор, имеют место быть глюки и баги, так что пригодится больше для коллекции.
Setup.Factory.Unpacker.zip (27,161 bytes)
InstallShield (by one exe-file) Unpacker - автоматический консольный распаковщик двух из трех известных типов инсталляторов, созданных программой InstallShield . Это одиночный cab-файл, упакованный в msi-контейнер, а также набор из установочных файлов и cab-архива, также помещенный внутрь msi-файла (Microsoft Installer). Третий тип, использующий шифрование, этим распаковщиком не поддерживается.
InstallShield.Unpacker.0.99.zip (57,056 bytes)