• XSS.stack #1 – первый литературный журнал от юзеров форума

Редактировать PE с помощью Python

tanto403

HDD-drive
Пользователь
Регистрация
26.08.2019
Сообщения
23
Реакции
8
Привет.
Задача: Изменить Иконку и Version Info с помощью Python.
Я уже в курсе, что в этом мне поможет https://github.com/erocarrera/pefile

Но проблема в том, что знания мои PE - довольно поверхностны, так что буду рад любой информации.
Не только примерам использования pefile (которых я в сети не нашел).
А любую инфу которая может просветить меня в PE, если на русском - так вообще здорово будет.
Заранее благодарен.!
 
Последнее редактирование:
Просто нужно автоматизировать процесс, на питоне)
Зачем именно с питоном?
Есть куча тулзов для замены ресурсов в РЕ.
Если знаете, тулзу для замены, которую можно запускать из терминала то подскажите такую плз.
Например терминальный resource hacker
 
Просто нужно автоматизировать процесс, на питоне)

Если знаете, тулзу для замены, которую можно запускать из терминала то подскажите такую плз.
Например терминальный resource hacker
google -> command line PE editor
 
Спасибо.
Только после создания этой темы, я узнал что ResourceHacker можно запускать из командной строки, и он даже поддерживает скрипты.
А это значит, что моя задача решена.
Если кто-нибудь увидит примеры применение либы pefile, смело кидайте в эту тему, я буду вам очень признателен.
Особенно интересно будет увидет код из этой древней статьи: (хttps://xakep.ru/2011/07/04/57584/)
 
А ты уверен
1) что у тебя хватит прав изменить некий файл?
2) что файл после изменения будет работать? (серт не валидный будет) а что там не серваке мы не знаем.
 
Привет.
Задача: Изменить Иконку и Version Info с помощью Python.
Я уже в курсе, что в этом мне поможет https://github.com/erocarrera/pefile

Но проблема в том, что знания мои PE - довольно поверхностны, так что буду рад любой информации.
pefile is a multi-platform Python module to parse and work with Portable Executable (aka PE) files. Most of the information contained in the PE headers is accessible as well as all sections' details and their data.
мог бы попросить и тебе бы здесь это перевели, и объяснили что это значит - здесь штат переводчиков большой :)

этот модуль/либа не поможет тебе, потому что в нем нет такого функционала по добавлению иконки и Version Info
кстати, поэтому ты и не смог нагуглить примеров кода...
добавление иконки, а тем более Version Info не такая уж и простая задача - структура Version Info требует индивидуального подхода для формирования данных пригодных для добавления, да и иконка также требует создания дополнительных отдельных иконок и группы...
но так как твои ЗНАНИЯ ПОВЕРХНОСТНЫ, то и смысла тебе нет объяснять что и как нужно сделать, а тем более код давать - юзай ResourceHacker и это для тебя будет самый лучший варик... :D
хотя я давно этот модуль юзал, возможно, там в последней новой версии и появилась такая возможность по добавлению иконки и Version Info...
 
Биндинги для питона там тоже, кажись, были.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Особенно интересно будет увидет код из этой древней статьи: (хttps://xakep.ru/2011/07/04/57584/)
Как бы там весь код есть в статье, но вот, лови
pass: xss.pro
 

Вложения

  • src.zip
    279.3 КБ · Просмотры: 78
А ты уверен
1) что у тебя хватит прав изменить некий файл?
2) что файл после изменения будет работать? (серт не валидный будет) а что там не серваке мы не знаем.
Про подпись я в курсе. Я пишу скрипт для автоматизации на локальной машине, больше целях любопытства и образования, так что подпись не важна.
этот модуль/либа не поможет тебе, потому что в нем нет такого функционала по добавлению иконки и Version Info
Там же написано, что можно работать с секциями, а насколько я понимаю и иконка и version info, находится в секции .rsrc
Биндинги для питона там тоже, кажись, были.
Как бы там весь код есть в статье, но вот, лови
pass: xss.pro

Вам ребята, огромное спасибо. Особенно тебе Quake3, я этот скрипт ищу уже полгода.
 
Привет.
Задача: Изменить Иконку и Version Info с помощью Python.
Я уже в курсе, что в этом мне поможет https://github.com/erocarrera/pefile

Но проблема в том, что знания мои PE - довольно поверхностны, так что буду рад любой информации.
Не только примерам использования pefile (которых я в сети не нашел).
А любую инфу которая может просветить меня в PE, если на русском - так вообще здорово будет.
Заранее благодарен.!
Да изменения иконки и Version Info можешь спокойно использовать Resource Hacker, он очень удобный и простой для таких вещей. Для изучения формата PE можешь попробовать полазять в гугле или тут на форуме, если объяснить поверхностно то PE состоит из Headers это данные о файле включая ImageBase, AddressOfPoint и прочую инфу, это адресса где лежит это в exe файле, так же PE разбивается на секции ( data, text, bss, rsrc, etc ) секции могут называться по разному ( в том же process hacker секция text называется как CODE, язык потому что Delphi Bordanland ), тут зависит от компилятора и языка программирования. Мне эти секции дают ассоциацию языка ассемблера ( в нём отдельно прописываешь BSS, DATA, TEXT ) так то тут и смысл этих секцию точно такой же как и в Асм. Можешь попробовать погуглить из чего состоит PE, а потом отдельно состовляющие PE для лучшего понимая как устроен этот формат.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх