Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.09;
Скачать: CL | DM;

Вниз

Процесс запуска EXE-файла   Найти похожие ветки 

 
fester   (2004-11-17 14:42) [0]

Есть файл 1.exe. Как отловить его запуск и перед запуском 1.exe выполнить какой-либо код.


 
TUser ©   (2004-11-17 14:44) [1]

поставить хук на вызов апи функций
подменить сам 1.exe

ps. не пиши вирусов


 
Игорь Шевченко ©   (2004-11-17 14:49) [2]

Через реестр


 
fester   (2004-11-17 16:21) [3]

это не вирус, хук на какое сообщение, я не могу найти wm_...


 
Digitman ©   (2004-11-17 17:03) [4]


> fester   (17.11.04 16:21) [3]
> это не вирус, хук на какое сообщение, я не могу найти wm_...


какое нафих сообщение, если стартуемый процесс не является GUI-процессом ?

в общем случае решение единственное - kernel-mode driver
примеры - на wasm.ru


 
fester   (2004-11-17 17:26) [5]

Digitman. тогда подскажи как делать? я наверно не догоняю.....


 
Digitman ©   (2004-11-17 17:37) [6]


> fester   (17.11.04 17:26) [5]


упомянутый wasm.ru тебе ни о чем не говорит ?
жми туда и ищи пример !


 
Anatoly Podgoretsky ©   (2004-11-17 17:39) [7]

Зачем его отлавливать, можно можно обойтись командным файлом?


 
Digitman ©   (2004-11-17 17:45) [8]


> Anatoly Podgoretsky ©   (17.11.04 17:39) [7]


"ловцов"-то тут разных - по пояс и выше) ... проблемы в том, что как правило мало кто из них в состоянии вразумительно пояснить хотя бы что значит "процесс", что значит "отловить"..


 
fester   (2004-11-17 18:13) [9]

Такие люди отвечают :)) Ничего плохого замутить не хочу :)) Рихтера читали, и чем отличается процесс от потока знаем :))Вот возможно ли "отловить"запуск процесса мы не знаем :(( Надо не допустить запуск определенной программы.....выполнить действия до запуска


 
Digitman ©   (2004-11-17 18:18) [10]


> fester   (17.11.04 18:13) [9]


так..

прекращай клоунаду.

истина лежит вблизи ф-ции

PsSetCreateProcessNotifyRoutine()


 
fester   (2004-11-17 18:48) [11]

Спасибо....это для друга :)) wasm - любимый ресурс, особннно нравится "дао программизма" :)) Жаль с асмом разбираться лень :))


 
DelphiN! ©   (2004-11-19 08:29) [12]

HKEY_CLASSES_ROOT\EXEFILE
                ...


 
vovchik   (2004-11-19 08:48) [13]

Digitman
истина лежит вблизи ф-ции

PsSetCreateProcessNotifyRoutine()

Эта функция работает только для запуска драйверов.
----------------------------------------------------

DelphiN!
HKEY_CLASSES_ROOT\EXEFILE

если делать проверку этой ветки, то надо каждую долю времени проверять, а это нагрузка на память. Или может я не то думаю???


 
Alekc   (2004-11-19 17:28) [14]


> HKEY_CLASSES_ROOT\EXEFILE
>
> если делать проверку этой ветки, то надо каждую долю времени
> проверять, а это нагрузка на память. Или может я не то думаю???

Там можно указать обработчик файлов типа "exe", т.е. твоя прога будет вызываться перед перед запуском любого exe-файла... Но если ты потом свой exe нечаянно удалишь, или он будет работать неправильно, то случится *опа...


 
Ihor Osov'yak ©   (2004-11-19 18:47) [15]

Первый вариант - PsSetCreateProcessNotifyRoutine - уже упоминали - см. [10].

Есть еще один способ, не совсем очевидный  - драйвер-фильтр файловой системы и отслеживание IRP_MJ_CREATE с последующим анализом
currentIrpStack->Parameters.Create.SecurityContext->DesiredAccess на предмет наличия флажка FILE_EXECUTE. Преимущество этого способа по сравнению с вариантом из [10] - то, что мы получаем нотификацию "до того" и есть возможность отменить запуск процесса, а также то, что мы получаем нотификацию не только об "откритии" основного файла, а и нотификацию об отображении всех подгружаемых длл для соотв. процесса.


 
Ihor Osov'yak ©   (2004-11-19 18:51) [16]

ах, да, сори в 15 речь вообще об контроле запуска любого процесса. Если нужно отслеживать запуск конкретного процесса (1.exe)- то есть возможность зарегистрировать свою программу как отладчик этого процесса.. Ньюансов не помню, в документацию лень смотреть - поищите что-то вокруг отладки сервисов - этот прием один из возможных вариантов отладки сервисов - как правило, в faq о написании сервисов конкретно указывается, что нужно прописать в реестри, чтобы стать отладчиком для соотв. исполнительного файла..



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

Текущий архив: 2005.01.09;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.051 c
1-1103827386
Alexander666
2004-12-23 21:43
2005.01.09
New против GetMem и Dispose против FreeMem


14-1103530570
MVVD
2004-12-20 11:16
2005.01.09
Почему не выключается компьютер


9-1095718471
Ктото
2004-09-21 02:14
2005.01.09
Как создавать 3ds объекты с прозрачными/полупрорачными текстурами


1-1103741667
Senjer
2004-12-22 21:54
2005.01.09
Курсор над формой


8-1096868803
sashuly
2004-10-04 09:46
2005.01.09
Рисование на TPaintBox