Текущий архив: 2008.03.02;
Скачать: CL | DM;
Вниз
Отловить момент приаттачивания своей dll к процессу Найти похожие ветки
← →
Viktor (2008-02-05 11:28) [0]Здравствуйте! Подскажите как отловить попытку загрузки моей dll в АП процесса и при определенных условиях запретить Windows это делать?
Заранее благодарен!
← →
Сергей М. © (2008-02-05 11:40) [1]Считай что никак.
← →
хам (2008-02-05 11:43) [2]> Подскажите как отловить попытку загрузки моей dll в АП процесса
Begin
// здесь?
end.
← →
Slym © (2008-02-05 11:43) [3]
library ApiHook;
{$WARN SYMBOL_PLATFORM OFF}
uses windows;
procedure DllMain(fdwReason:DWORD);
begin
case fdwReason of
DLL_PROCESS_DETACH:
begin
UninterceptFunctions();
end;
DLL_PROCESS_ATTACH:
begin
InterceptFunctions();
end;
DLL_THREAD_ATTACH: ;
DLL_THREAD_DETACH: ;
end;
end;
begin
DllProc:=@DllMain;
DllMain(DLL_PROCESS_ATTACH);
end.
← →
Сергей М. © (2008-02-05 11:46) [4]
> // здесь?
Здесь она уже загружена
← →
Thrasher © (2008-02-05 14:17) [5]Почему бы не использовать динамическую линковку?
Когда надо
LoadLibrary;
GetProcAddr;
и т.д.
← →
Сергей М. © (2008-02-05 14:18) [6]Удалено модератором
← →
хам (2008-02-05 14:18) [7]> [4] Сергей М. © (05.02.08 11:46)
> Здесь она уже загружена
Собственно, если я не путаю, этот код будет вызван до возвращения управления подключающей функции.
← →
Сергей М. © (2008-02-05 14:19) [8]
> хам (05.02.08 14:18) [7]
А по барабану.
На момент вызова этого кода модуль уже загружен.
← →
Игорь Шевченко © (2008-02-05 14:37) [9]Сергей М. © (05.02.08 14:19) [8]
Собственно, она выгрузится, если DllMain завершится неудачей
← →
Thrasher © (2008-02-05 14:46) [10]Люди! Почитайте про форматы PE-файлов! При загрузке екзешника в память, загрузчик ОС заполняет таблицу импорта и если DLL прописана статически (т.е. в модуле указан способ вызова типа
function DLL_func:integer;export "name.dll" ), то она ПО-ЛЮБОМУ будет загружена в АП процесса. Поэтому если не нужно чтобы DLL загружалась необходимо использовать динамическую линковку.
А вообще лучше всего узнать конкретно какая задача преследуется
← →
Сергей М. © (2008-02-05 15:00) [11]
> Игорь Шевченко © (05.02.08 14:37) [9]
>
> Сергей М. © (05.02.08 14:19) [8]
>
> Собственно, она выгрузится
По барабану.
В АП целевого процесса модуль успел поприсутствовать.
← →
Сергей М. © (2008-02-05 15:04) [12]Удалено модератором
← →
хам (2008-02-05 15:15) [13]> [11] Сергей М. © (05.02.08 15:00)
> В АП целевого процесса модуль успел поприсутствовать.
И наследить там, ага?
← →
Сергей М. © (2008-02-05 15:18) [14]
> хам (05.02.08 15:15) [13]
А кого это волнует, успел он наследить или не успел ?
Автора волнует именно "попытка загрузки", а не "успел/не успел наследить")
← →
хам (2008-02-05 15:25) [15]Удалено модератором
← →
ketmar © (2008-02-05 15:28) [16]Удалено модератором
← →
Сергей М. © (2008-02-05 15:29) [17]Удалено модератором
← →
Сергей М. © (2008-02-05 15:30) [18]Удалено модератором
← →
хам (2008-02-05 15:31) [19]> [17] Сергей М. © (05.02.08 15:29)
> Да ну ?!
> И авторская цитатка найдется ?)
А ты знаешь другой способ выяснения условий и произведение неких действий по этим условиям, кроме как выполнение кода? Я — нет, отсюда и вывод, что «автора волнует».
← →
Сергей М. © (2008-02-05 15:35) [20]Удалено модератором
← →
Сергей М. © (2008-02-05 15:42) [21]Удалено модератором
← →
Сергей М. © (2008-02-05 15:46) [22]Удалено модератором
← →
хам (2008-02-05 15:47) [23]Удалено модератором
← →
Сергей М. © (2008-02-05 15:49) [24]Удалено модератором
← →
ketmar © (2008-02-05 15:50) [25]>[19] хам (05.02.08 15:31)
>А ты знаешь другой способ выяснения условий и произведение неких действий
>по этим условиям, кроме как выполнение кода? Я — нет, отсюда и вывод, что
>«автора волнует».
где сказано, что код должен находиться в той же DLL?
← →
Сергей М. © (2008-02-05 15:52) [26]Во, блин) .. Отмодерасили и не извинились)
← →
хам (2008-02-05 15:54) [27]> [25] ketmar © (05.02.08 15:50)
> где сказано, что код должен находиться в той же DLL?
Нигде не сказано, но признайся, ты тоже считаешь, что для автора в 90% случаев ответ [2] достаточен. К чему спорить то?
← →
Сергей М. © (2008-02-05 15:57) [28]
> хам (05.02.08 15:54) [27]
Что уж тут "признаваться" ?)
Сейчас вновь "отмодерасят") .. Даже не читает кое-кто посты в ветке - сразу кнопки давит) .. Мож не в духе или пьян) ..
А так бы поговорили предметно.
← →
Leonid Troyanovsky © (2008-02-05 20:02) [29]
> хам (05.02.08 15:54) [27]
> Нигде не сказано, но признайся, ты тоже считаешь, что для
> автора в 90% случаев ответ [2] достаточен.
Достаточен [1].
Длл может быть загружена as datafile или иным образом замаплена.
Т.е., до [2] дело может и не дойти.
--
Regards, LVT.
Страницы: 1 вся ветка
Текущий архив: 2008.03.02;
Скачать: CL | DM;
Память: 0.53 MB
Время: 0.018 c