Программы для создания патчей и лоадеров

Msha

ex-Team DUMPz
Свой
Регистрация
12 Окт 2004
Сообщения
7,116
Реакции
2,559
Credits
0
Патчер (модификатор) - программа для создания патчей и/или лоадеров на основе известных данных о том по каким адресам в памяти или файле необходимо заменить байты. Также может (не все) пропатчить программу на основе указанных данных или дописать к оригинальному файлу лоадер.


Патч (patch) - это программа, которая заменяет или дописывает в оригинальный файл некоторое количество байт по определённым адресам.
а) патч толко заменяет определённые байты, при этом размер файла не изменяется
б) патч дописывает в файл свою секцию или наоборот удаляет участок файла

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

Лоадер (loader) - это программа, которая служит для корректного запуска оригинального файла.
а) лоадер заменяет байты по оперделённым адресам в том участке памяти, куда распаковывает себя программа.
б) лоадер удаляет запси из реестра и т.п., после чего запускается оригинальный файл.
в) при помощи спец. патча лоадер записывается непосредственно в оригинальный файл.

Лоадер делается, если известно (например при помощи SoftICE) какие учатки файла загруженного в память нужно заменить, однако нет возможности (или желания) определить как именно запакован файл, чтобы произвести изменения непосредственно в файле.
Как известно большинство (если не все) ехе-файлов запакованы. Делается это в целях защиты от изменения кода. При запуске ехе-файл распаковывает себя в память. Определить какие участки распакованного файла (т.е. того что находится в памяти) подлежат замене возможно, однако чтобы определить эти же участки в запакованном файле (т.е. лежащем на харде) нужно знать чем он запакован и иметь соответствующий распаковщик. В случае если распаковать файл затруднительно, пишется лоадер, который работает как патч, только для памяти.


Программы для создания патчей:

CodeFusion Wizard v3.0 [379 Kb]
_http://reversing.kulichki.net/files/patch/codefs30.rar
_http://kobik.videodot.net/downloads/codefs30.zip
офф.сайт Для просмотра ссылки Войди или Зарегистрируйся

Наверное самый распространенный Wizard для создания патчей. Мне неоднократно попадались патчи созданные этой программой. создаёт патч, который перед внесением изменений в оригинальный файл создаёт его резервную копию.
Может определять какие байты нужно дописать путём сравнения (т.е. сравнивая оригинальный файл с подломаным создаёт патч). Высокая скорость сравнения, поддерживается разный размер файлов, короче даже если Вы сравните word.exe и notepad.exe и на выходе Вы получите патч для notepad.exe, то после патча блокнот превратиться в Word(сам .exe).
Проверка исходного и конечного файла по CRC. Созданные патчи программа может упаковать и зашифровать...

Clickteam Patch Maker v1.2g [413 Kb]
_http://reversing.kulichki.net/files/patch/pm12.rar

Программа создана специально для авторов программ. Позволяет создать маленькие патчи в виде инсталяшки для обновления компонентов программы. (будь то текстовый или исполнимый файл - для этой программы разницы нет)

aPATCH v0.34 [81,3 Kb]
_http://reversing.kulichki.net/files/patch/apatch34.rar
apatch v1.07 [118 Кб]
Для просмотра ссылки Войди или Зарегистрируйся
офф.сайт _http://www.ibsensoftware.com/download.html

Маленькая программа для создания патча, поддерживает создание копий, проверку CRC и LNF. На выходе получается .com файл. В архиве есть исходники и примеры.
Версия 0.34 попроще и в архиве больше конкретных примеров, позволяющих понять как использовать программу. Версия 1.07 более функциональна. Позволяет сделать патч с пошаговым выполнением инструкций (т.е. с выбором что патчить, а что нет)

Программы для создания лоадеров:

DzA Patcher v1.3 [36,6 Кб]
_http://reversing.kulichki.net/files/patch/dza.rar

Патчер, который может непосредственно прикрепить секцию лоадера к файлу, а может создать лоадер в виде отедльного файла.
Также может создавать патч, записывающий лоадер в оригинальный файл.
Для встраивания лоадера в оригинальный файл умеет распознавать следующие упаковщики:
ASPack, Bjfnt, Code Safe, Code Crypt, Krypton The Krypter, NFO, NoodleCrypt, PCShrink, Phrozen Crew PE encryptor, PE Bundle, PE Diminisherm PE Lock NT, PECompact, PEPack, PE-Protect, PeX, Stone's PE packer, tElock, UPX, Visual Protect, VG Crypt, WWPack32, Win Kript
Если используется неизвестный ппрограмме распаковщик, то лоадер лучше создавать в виде отдельного файла. Также лоадер лучше создавать отдельно, если файл при запуске проверяет себя на правильный размер.

Patch On Fly v0.70 [225 Kb]
_http://reversing.kulichki.net/files/patch/pof.rar

Создаёт Loader который может заменять строки, Dword, word и byte по указанным адресам. Запускает программу, а затем заменяет байты.

Predator's Extreme Loader Generator v0.3 [210 Kb]
Создает "умные" loader'ы. В патчи закладывается информация, когда атаковать распакованную прогу - По названию окна, по Class Name или стандартный способ.

PrincessSandy 1.0 [ 231 Kb]
_http://reversing.kulichki.net/files/patch/e_sandy.rar

Имеет настраиваемое число атак на процесс.

COGEN II [358 Kb]
_http://reversing.kulichki.net/files/patch/cogen.rar

Программа написана на ASM. Создает быстрые патчи, а точнее компилирует(Tasm) + автоматически создает .NFO файл. Можно менять внешний вид патча.


Программы, которые могут создавать и то и другое:

Patch Creation Wizard v1.21 [22,4 Kb]
_http://reversing.kulichki.net/files/patch/pc_pcw12.rar

Позволяет создавать несколько видов патчей - Memory Patch, Byte patch и Seek and Destroy.
соответственно Memory Patch - это лоадер; Byte patch - это патч; Seek and Destroy - поиск и замена определённого сочетания байтов.


К большинству программ я домашних страничек уже не нашёл. Однако информации как мне кажется вполне достаточно :).
 
Последнее редактирование модератором:
D

deimos

Мне больше нравится duP,им для пакованных прог крэки можно делать

_http://tejo.yourdotstore.com/~diablo.com/downloads/dup.rar

Страничка автора:
_http://navig8.to/diablo2oo2
 

Msha

ex-Team DUMPz
Свой
Регистрация
12 Окт 2004
Сообщения
7,116
Реакции
2,559
Credits
0
deimos, DzA Patcher тоже может работать с пакованными файлами - он вписывает в них лоадеры.

И собственно, я не очень понимаю смысл фразы
им для пакованных прог крэки можно делать
. А какая разница, пакованая она или нет? изменяются то определённые байты по указанным тобой адресам. Т.е. какой файл разницы-то нет. Это вот когда ты прогу исследуешь на предиет того, что бы в коде поменять - вот тогда с распаковкой иногда приходится повозиться.

Или ты имеешь в виду, нашёл в распакованном, вставил в эту программу и она автоматически определит где патчить запакованый файл? Или она распаковывает, патчит и запаковывает? Поясни, что ты имеешь в виду, честно говоря не очень понял.
 
Последнее редактирование модератором:

Msha

ex-Team DUMPz
Свой
Регистрация
12 Окт 2004
Сообщения
7,116
Реакции
2,559
Credits
0
deimos написал(а):
Мне больше нравится duP,им для пакованных прог крэки можно делать

Дошло! Это аналог Dza Patcher'a , не совсем, но суть примерно таже. Он тоже как и Dza Patcher может встраивать лоадер в файл. Вот тебе и работа с паковаными файлами.
 

BaRb0S

Местный
Регистрация
6 Дек 2003
Сообщения
47
Реакции
3
Credits
58
Кто знае прогу, которая патчит память по горячей клавише?
В принципе можно сделать привязку в системе, может ещё как-то?
 

Msha

ex-Team DUMPz
Свой
Регистрация
12 Окт 2004
Сообщения
7,116
Реакции
2,559
Credits
0
BaRb0S, честно говоря не представляю как это реализовать: лоадер грузит сначала программу (при этом определет по каким адресам в памяти она загрузилась), а затем патчит память. А если ты хочешь отдельно память пропатчить, это ты должен изменить лоадер так, чтобы загрузив программу он отложил изменения памяти до нажатия определённой клавиши.
Если ты напишешь его вручную - нет проблем. А через приведённые здесь программки не выйдет. Если только в уже сгенерированый лоадер внести изменения :). Но это уже изврат по-моему.

Это надо поговорить с теми кто эти программки писал, я то в этом не так хорошо разбираюсь...
 
X

xorax

еще есть прога Sign of Misery - куча возможностей - и кряки и лоадеры и еще много чего..
 

BaRb0S

Местный
Регистрация
6 Дек 2003
Сообщения
47
Реакции
3
Credits
58
Msha написал(а):
BaRb0S, ... лоадер грузит сначала программу, а затем патчит память. отложил изменения памяти до нажатия определённой клавиши.
Если только в уже сгенерированый лоадер внести изменения :). Но это уже изврат по-моему.
Думаю, нужен лоадер с ключами, который могет грузится "в фоне".
И сотвессно hook key прога. Но я такого не нашёл, а ведь должен жеж быть гдет-та!
 

AlMadness

Турист
Регистрация
15 Фев 2004
Сообщения
142
Реакции
1
Credits
0
Ну можно заюзать АртМани, хотя это будет не совсем удобно...
 

KotGamer

Турист
Регистрация
19 Фев 2004
Сообщения
5
Реакции
0
Credits
6
BaRb0S написал(а):
Думаю, нужен лоадер с ключами, который могет грузится "в фоне".
И сотвессно hook key прога. Но я такого не нашёл, а ведь должен жеж быть гдет-та!
Это достаточно просто (под NT системы) : Определяешь хендл процесса, CreateRemoutThreat и вперед ...
 

Dreamcrusher

Турист
Регистрация
12 Фев 2012
Сообщения
2
Реакции
0
Credits
0
Здравствуйте. Я тут новичок. Хочу спросить вашего совета. Очень люблю игру FIFA MANAGER. На данный момент играю в версию 2012 года. Устал искать патчи (делался 1 на версию 2008 года) для русского футбольного союза по схеме 1-1-5-10-16-22.
Т.е. начиная создание футбольного клуба с самых низов, с муниципальных чемпионатов. Как в реальной жизни ( при определенной сумме и условиях любой гражданин России может зарегистрировать свой футбольный клуб). Надеюсь что вы поняли о чем я и что я вас не сильно загрузил информацией.
Так вот. На ваш взгляд какой лучше воспользоваться программой для создания патчей для этой игры. Я готов изучать мануалы как ей пользоваться и создать патч сам (до этого патчестроением не занимался). Спасибо за ранее.