Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.08.19;
Скачать: [xml.tar.bz2];

Вниз

Обман программы   Найти похожие ветки 

 
Ricks ©   (2007-07-17 19:50) [0]

Можно ли так:
полазив ResourceHacker"ом в DFM ресурсе чужой программы заменяем напирмер btnOk:TButton на btnOk:TMyButton. После этого, открывая эту программу мы видим сообщение "Class TMyButton not found".
Так вот, можно ли как-то "внедриться" в чужую программу и зарегестрировать в ней свой класс.

Ожидая вопрос "А НАФИГА" – отвечаю - ПРОСТО ТАК! :)


 
Anatoly Podgoretsky ©   (2007-07-17 19:54) [1]

> Ricks  (17.07.2007 19:50:00)  [0]

А ты не лазь, плохо кончишь.


 
Ricks ©   (2007-07-17 19:57) [2]

Та ладно!


 
Dib@zol ©   (2007-07-17 20:02) [3]

Декомпилируем ресурсы, шурудим в них как следовает, а затем запихиваем обратно! Что мож быть проще?


 
TUser ©   (2007-07-17 20:02) [4]

DeDe попробуй, но лучше не надо. :)


 
Ricks ©   (2007-07-17 20:03) [5]


> Dib@zol ©

И что?

> DeDe

что это?


 
TUser ©   (2007-07-17 20:07) [6]

В ресурсах код не хранится, там только dfm.

DeDe - это программа, которая умеет (якобы) из exe-файла получить Delphi- проект. Разумеется, там исходного кода не будет, только асм, но класс можно найти и заменить на свой. Если ты старательный. :)


 
Dib@zol ©   (2007-07-17 20:11) [7]

Запускаем чужой процесс, получаем его HINST, прописываем EnumResourceNames для типа RCDATA, если имя не DVLCALL и не PACKAGEINFO, то добавляем в какойнить список. Затем последовательно читаем ресурсы, имена к-рых в списке, находим в каждом некий тип (тот же TButton), и заменяем. Прописать всю эту хренотень в файл если не ошибаюсь можно с помощью UpdateResource. Что неясно?


 
vpbar ©   (2007-07-17 20:16) [8]

>>Ricks ©   (17.07.07 19:50)
Можно. Например,примерно так: выясняем как регистрируется класс. Добавляем секцию к проге. Делаем переход с OEP в нашу секцию в которой инициализируется класс и сожержится код методов.
Но это НЕ ТАК ПРОСТО


 
vpbar ©   (2007-07-17 20:17) [9]

>>Dib@zol ©   (17.07.07 20:11) [7]
А не тоже самое ли делает ResourceHacker? Следовательно см тему


 
Dib@zol ©   (2007-07-17 20:18) [10]


> vpbar ©   (17.07.07 20:16) [8]

Да нафига? В ресурсах храницца ДФМ-форма, так? Если подменить какой угодно класс в ней на несуществующий, прога и так будет завалена, что видимо и требуется.


 
Dib@zol ©   (2007-07-17 20:20) [11]


> vpbar ©   (17.07.07 20:17) [9]

> Так вот, можно ли как-то "внедриться" в чужую программу
> и зарегестрировать в ней свой класс.

Я так понимаю, что из самописной проги, а не из РесурсХакера.


 
Dib@zol ©   (2007-07-17 20:23) [12]

А ваще, занятная идея! Наглядно доказывает несостоятельность ВЦЛ! Щас может чё и напишу. Следим за веткой! =D


 
vpbar ©   (2007-07-17 20:23) [13]

полазив ResourceHacker"ом в DFM ресурсе чужой программы заменяем напирмер btnOk:TButton на btnOk:TMyButton. После этого, открывая эту программу мы видим сообщение "Class TMyButton not found".
Так вот, можно ли как-то "внедриться" в чужую программу и зарегестрировать в ней свой класс.

Просто поменяв или добавив имя класса в dfm ресурс его не зарегистрируешь, о чем и написал Ricks ©


 
Dib@zol ©   (2007-07-17 20:25) [14]

Удалено модератором
Примечание: Флудить завязываем


 
oxffff ©   (2007-07-17 20:28) [15]


> Так вот, можно ли как-то "внедриться" в чужую программу
> и зарегестрировать в ней свой класс.


Все можно.


 
Panel   (2007-07-17 21:56) [16]

Наглядно доказывает несостоятельность ВЦЛ!

Если тебе мозги вынуть и на их место вшить собачьи, ты, видимо, будешь продолжать функционировать так же, как и раньше. Возможно, даже лучше. Что наглядно доказывает твою состоятельность.


 
Ricks ©   (2007-07-18 22:59) [17]


> Можно. Например,примерно так: выясняем как регистрируется
> класс. Добавляем секцию к проге. Делаем переход с OEP в
> нашу секцию в которой инициализируется класс и сожержится
> код методов.
> Но это НЕ ТАК ПРОСТО


Короче говоря, это надо в asm"е программы лазить, а так просто "внедриться" не получиться?


> Panel  

Зачем же так грубо?


 
oxffff ©   (2007-07-18 23:14) [18]


>  а так просто "внедриться" не получиться?


Конечно нет. Тебе тут предлагают изменить точку входа, но не все так
просто, для начала нужно все дать отработать initExe из Sysinit.
Вообщем без знания некоторых тонкостей и достаточного знания ассемблера никак.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.08.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.041 c
15-1184565893
vasIZmax
2007-07-16 10:04
2007.08.19
Проблема с трафиком


2-1185005129
apic
2007-07-21 12:05
2007.08.19
Вид курсора


2-1185130508
copron
2007-07-22 22:55
2007.08.19
GetNextItem


1-1181524266
Yus
2007-06-11 05:11
2007.08.19
Помогите с RichEdit


15-1184790249
Труп Васи Доброго
2007-07-19 00:24
2007.08.19
Как сделать VPN?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский