Вернуться   CoderX :: Forums > Основные форумы > Полезности
Войти через OpenID

Полезности Исключительно для полезных тем из других разделов.
Темы тут не создаются!
Темы сюда перемещаются из других разделов, и на их старых местах остаются постоянные перенаправления.

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 11.05.2010, 20:08   #1
Пользователь
 
Регистрация: 03.11.2008
Сообщений: 60
Сказал Спасибо: 3
Имеет 107 спасибок в 21 сообщенях
GoldFinch пока неопределено
По умолчанию

Yegor, напиши в длл код который позволит выгрузить себя и загрузить новую версию длл, если надо
GoldFinch вне форума   Ответить с цитированием
Старый 11.05.2010, 21:34   #2
Новичок
 
Регистрация: 11.05.2010
Сообщений: 19
Сказал Спасибо: 0
Имеет 10 спасибок в 6 сообщенях
Эдвадко пока неопределено
По умолчанию

Цитата:
Сообщение от GoldFinch Посмотреть сообщение
Yegor, напиши в длл код который позволит выгрузить себя и загрузить новую версию длл, если надо
Это как-то мудрено очень. К тожу-же, чуть напортачишь в
подгружаемой dll и клиент вылетает с ошибкой.
Я инжектируемую dll пишу, чтоб была возможно более простая.
Только перехват команд от клиента и от сервера и отсылка в основной
модуль программы. Связь между dll и модулем делал раньше через
mapped file а сейчас по IP(UDP).
На будущее, это позволит собирать инфу с нескольких клиентов запущеных на разных компах в один коммандный центр.
Эдвадко вне форума   Ответить с цитированием
За это сообщение Эдвадко нажился спасибкой от:
Старый 12.05.2010, 00:09   #3
Местный
 
Аватар для Yegor
 
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
Yegor пока неопределено
По умолчанию

GoldFinch, это то я напишу, но вот Delphi для отладки dll хочет сама запускать процесс в который её будет загружать.


Эдвадко, в l2ext от Alexteamа похоже сделано так же, начну сначала с общения через message а потом и tcp\ip задействую.
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)
Yegor вне форума   Ответить с цитированием
Старый 12.05.2010, 07:44   #4
Новичок
 
Регистрация: 11.05.2010
Сообщений: 19
Сказал Спасибо: 0
Имеет 10 спасибок в 6 сообщенях
Эдвадко пока неопределено
По умолчанию

[quote=Yegor;88284]GoldFinch, это то я напишу, но вот Delphi для отладки dll хочет сама запускать процесс в который её будет загружать.

Я например отладчик не пользую - ну так получилось.
В качестве отладчика использую ту-же внедряемую dll

Удалось перехватить какую функцию - хук начинает логировать
адреса вызова этой функции и параметры вызова.

Потом ползаю по дизассемблированой engine.dll по соотв. адресам и смотрю че и как.

static DWORD HookProcAdr;

void __declspec(naked) __stdcall HookProcE9()
{
static DWORD SavedRetAddr,SavedArg0,SavedArg4,SavedArg8;
__asm push ebp
__asm mov ebp,esp
__asm pushad

__asm mov eax,[ebp+4] //RetAddr
__asm mov SavedRetAddr,eax
__asm mov eax,[ebp+8] //Arg0
__asm mov SavedArg0,eax
__asm mov eax,[ebp+12] //Arg4
__asm mov SavedArg4,eax
__asm mov eax,[ebp+16] //Arg8
__asm mov SavedArg8,eax

static char str[100];
_snprintf(str,100,"%u",*(PBYTE)SavedArg0);
MappedText(str,0xFFFFFF00);

fprintf(LogFile,"HookE9 %x %x %x %x %02x\n",SavedRetAddr,SavedArg0,SavedArg4,SavedArg8 ,*(PBYTE)SavedArg0);

__asm popad
__asm pop ebp
__asm push HookProcAdr
__asm retn
}

Последний раз редактировалось Эдвадко, 12.05.2010 в 07:46.
Эдвадко вне форума   Ответить с цитированием
За это сообщение Эдвадко нажился 2 спасибками от:
Старый 14.05.2010, 20:18   #5
Местный
 
Аватар для Yegor
 
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
Yegor пока неопределено
По умолчанию

GoldFinch, ты ранее писал переходник для вызова с++ функций с соглашением ThisCall из делфи. А можно сделать переодник дял того чтобы функция делфи вызывалась как ThisCall?

Добавлено через 2 часа 51 минуту
Вопрос снят, получилось
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)

Последний раз редактировалось Yegor, 14.05.2010 в 20:18. Причина: Добавлено сообщение
Yegor вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Полезности



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 00:46.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!