![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Ну есть такая программа, сам не пробывал, возможно там есть вирус. Конвертит exe в Си и Asm: http://www.bbs.motion-bg.com/dl.php?file=19
Добавлено через 1 минуту и 34 секунды
Верно, как вариант может быть и такое. В зависимости от степени оптимизации ![]() |
|||
|
||||
KaraKum |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
А, чёрт! ![]() В дизассемблерном файле даже не понятно где кончается стандартный набор Windows функций и начинается текст самой программы ![]() |
||||
|
|||||
SABROG |
|
||||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
![]() |
||||||
|
|||||||
KaraKum |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
То есть всё? Пиши пропало?
У меня есть такой пример: давным давно (ну поехали...) когда мне нравилась игра WarCraft3 и я в неё играл (и сейчас нравится) я встречал программу AMAI, сделанную поклонниками игры (как я слышал), которую нужно было устанавливать поверх игры и представляла она из себя противника который был гораздо сильнее компьютера от самого разроботчика игры "Blizzard". Так вот, это правда фанаты дизассемблировали игру и создали к ней приложение AMAI (ужас! игра весит около гигабайта!) или вероятнее это продукт от "Blizzard"? Это сообщение отредактировал(а) KaraKum - 3.12.2007, 18:21 |
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Зависит от твоих задач. "Поклонники" и алгоритм запаковки определят и структуру файла и библиотеку напишут для распаковки и хуки расставят в нужных местах, чтобы найти адрес где вызывается искусственный интеллект и напишут свой интеллект, и напишут патчер памяти, чтобы приаттачиться к процессу и заменить 4 байта адреса оригинального AI на свой.
Мало кто дизассемблирует программу, чтобы понять какой алгоритм защиты стоит и попробывать найти в нем уязвимости. Обычно все идут по пути меньшего сопротивления, ищут слабые места, такие как поиск условий при которых программа думает, что она зарегистрирована. Это сообщение отредактировал(а) SABROG - 3.12.2007, 18:37 |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
нет конечно тут важны 3 составляющие: время, голова, желание ![]() -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
KaraKum |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
В принципе моя задача по принципу как у "поклонников": создать приложение к уже существующей программе и получить возможность получать данные о некоторых внутренних для программы объектах.
Получается мне остаётся до конца освоить ассемблер (немножко уже знаю! ![]() ![]() ![]() |
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
На современных технологиях, в автоматическом режиме, это невозможно.
Дело в том, что когда компьютер переводит с языка Си++ на машинный язык (это называется "компилированием") он выполняет операцию, которую можно было бы называть "аналитической". Он берёт конструкции на языке высокого уровня (например, Си++) и разбивает их на элементарные составляющие (машинные команды). Такие задачи с самого своего рождения компьютеры решали хорошо. А вот обратную операцию, которую можно было бы назвать "синтетической", компьютеры решают плохо. Сюда относится и обратный перевод с машинного языка, и распознавание образов и речи. Многие из этих задач традиционно относятся к сфере так называемого "искусственного интеллекта". Эти задачи состоят в том, чтобы агрегировать множество частностей (например, машинных команд или пикселей) и распознать в них целостный образ (например, конструкцию языка Си++ или напечатанную букву). Интересно заметить, что люди характеризуются обратным свойством: даже самые бестолковые из нас легко распознают образы (например, узнают знакомые лица, картины, символы и другое), и с большим трудом раскладывают образ на составляющие (например, способны узнаваемо нарисовать своего приятеля или выразить в словах какое-то переживание или впечатление). |
|||
|
||||
KaraKum |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Мда. Не обнадёживающий прогноз.
Можете посоветовать какую-нибудь литературу, что поможет в данном вопросе? Я вроде освоил ассемблер по учебнику В Юров. Assembler, но слова библиотека распаковки, жуки, приаттачиваться и патчер памяти для меня новые ![]() |
|||
|
||||
bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Если бы все было именно так, то давно бы были написаны декомпиляторы для всех компиляторов (конечно, шаблоны они бы не восстанавливали). Компиляторы не просто раскладывают на "элементарные составляющие", но еще и оптимизируют. Так вот иногда после оптимизации код становится совершенно непохожим на оригинал. Кому интересно, соберите какой-нибудь проект на C++ с помощью GCC указав опции -O2 -g3 (оптимизация + отладка) и попробуйте пройтись отладчиком. Будете сильно удивлены поведению отладчика. Я, например, как-то пол дня потратил на то, чтобы понять, почему у меня не входит в тело оператора if, хотя судя по переменным должно было. Добавлено через 2 минуты и 16 секунд
не "жуки", а "хуки". Читай "перехватчики". "Патчер памяти" - это программа, способная изменять память любого процесса. |
||||
|
|||||
KaraKum |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Вот-вот. Я имею в виду где об этом можно узнать не понаслышке Есть какая-нибудь подходящая для такого дела литература?
|
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
||||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Подумай лишний раз надо это тебе или нет. Многим геймерам хватает ArtMoney. Я как-то в эти дебри лазил, использовал SoftIce, IDA Pro, программы для снятия дампа памяти процесса, чтобы на винт сбросить ту же программу в exe файл, но уже полностью распакованную. Писал патчеры/тренеры на fasme, изучал алгоритмы шифрования, чтобы редактировать save файлы и т.п. Просто занимался кряком программ, кейгенами. Но, чтобы серьезно этим заниматься жизни не хватит и надо иметь математический склад ума. Разработчики защит тоже на месте не стоят, один gameguard чего стоит, пока драйвер клавиатуры и мышки не напишешь ничего не сделать, они ведь ко всему прочему еще под каждую игру свою версию выпускают, поэтому универсальных патчей нету. Неблагодарное это дело ковырять чужие программы, если за это не планируется получать хороший доход. |
|||
|
||||
KaraKum |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
С помощью какой программы можно дизассемблировать .exe файлы?
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |