Как извлечь код из exe файла. Как открыть.DLL или.EXE файл в редакторе ресурсов

Уясните процесс. 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).

  • Запустите установленную программу (если вы использовали 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.
  • Исходный код раскрыть невозможно если для этого постарались обеспечить безопасность (особенно если это фирменная вещь).

    Но есть способы полностью или частично раскрыть код.

    • IDA Pro - самый лучший из безплатных взломщиков, некоторые макросы возможно позволяют преобразовать код назад. Но не всегда. Особо хорошо раскрываются borland-продукты.
    • Hiew.Exe бесплатная утилита, очень маленькая, позволяет править код на языке ассемблера. Можно править текстовые и целые константы. Можно ею даже сделать "перевод" программы на другой язык, затереть имя фирмы и т.п.
    • Если есть PDB-файл, или подшита debug-info к файлу то код можно получить в среде разработки (если debug-info полная) редко можно использовать. Исходный код получить нельзя, но можно получить "номера строк и имена исходников", а так же имена/значения всех констант, локальных переменных, избежать "раздроблености функций" а так же получить классы с начинкой класса (почти все структуры кроме текста программы) что значительно упростит понимание работы программы. Для некоторых библиотек (dll) pdb-файлы можно скачать отдельно. Врядли уважающая себя фирма допустит утечку pdb своего стоящего продукта.
    • Debug info, существует DebugInfo-информация встроеная в exe. Если есть такая информация, и соответствующая утилита (Например на Borland Delphi собран, и он есть в наличии), то можно сделать аналогичное предыдущему пункту. Но врядли уважающая себя фирма допустит такую "глупую" ошибку (аналогично pdb).
    • Если файл написан на с# его можно почти полностью просмотреть в кодах с помощью disSharp (такие программы "подключают" в таблице импорта лишь mscorlib и всё). DisSharp плохо дизассемблирует некоторые части программы, но возможно его платная версия или платная версия подобных утилит раскрывает код лучше.
    • Если файл написан на FoхPro, clipper и других подобный байт-кодовых языках - он раскрывается спец-утилитами (Refox например).
    • Утилита exescope.exe ResourceHacker.exe и её-подобные утилиты позволяют смотреть шапку, подключенные библиотеки (по ним можно понять на чём писана программа) и редактировать ресурсы программы (ресурс-формы в.т.ч. delphi, иконки, картинки, таблицы ресурсо-строк).
    • Если извесно чем создан код - думаю есть специальные утилиты способные его раскрыть (они платные и малодоступные).

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

    P.S. Лично моё мнение - раскрывается-взламывается всё, но на это нужно потратить много-много времени. Возможно год и более (зависит от опыта и инструментов, в свободном доступе хороших инструментов нету).

    EXE - это расширение для программ в ОС DOS и Windows. Формат Exe относится к группе исполняемых файлов, которые содержат все данные для установки приложения. Чтобы компактно распространить установочный файл используются алгоритмы сжатия.

    Содержимое файла

    Объект с расширением EXE встречается в ОС Windows. Программа exe содержит сценарии и скомпилированный программный код, запускающий установку приложений. Содержимое объекта EXE включает:

    • Программные ресурсы - графика и другие медиа-элементы, а также сжатые пакеты (.package) классов программного кода;
    • Формы объектов (битмапы, листы, иконки приложений);
    • Информация для загрузчика файла;
    • Модуль запуска инсталляции.

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

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

    Программы для открытия EXE

    В Windows Exe объект открыть можно с помощью стандартного установщика или утилиты 7Zip . Для запуска файла достаточно дважды кликнуть по нему мышкой или запустить объект через меню архиватора. Для запуска в MacOS следует установить эмулятор ОС Windows и в нем открыть файл Exe.

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

    Чтобы посмотреть содержимое файла EXE без его запуска, следует воспользоваться инструментами для разработчика, а именно программным пакетом Visual Studio . С его помощью можно редактировать программные ресурсы, изменять интерфейс и функции программного модуля. Внесение изменений возможно только для приложений с отрытым исходным кодом (в которых не используется шифрование).

    Редакторы ресурсов - это специализированные программы для просмотра, создания и изменения ресурсов 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 я не вижу.

    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: