Сейчас на форуме: hgdagon, asfa, bartolomeo (+4 невидимых)

 eXeL@B —› Программирование —› Учимся программировать!!! Hooks!
Посл.ответ Сообщение

Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 06 декабря 2004 05:13
· Личное сообщение · #1

Всем привет!
Быть может тема не в тему, но все же.
Есть задача, написать перехватчик событий приложений, что он должен делать:
1) перехватывать события функций открытия, сохранения файлов, копирование в буфер;
2) производить некие операция с файлами после перехвата и после возвращать их уже вызывавшим их программам.
Т.е. налету производить коррекцию файла.
Возможно ли это ????
Я новичек и быть может для некоторых выше изложенное покажется смешным, я был бы благодарен всем кто может помочь. Думаю все таки эта тема сможет заинтересовать большой круг посетителей сайта.




Ранг: 260.3 (наставник), 2thx
Активность: 0.120
Статус: Участник
PPC-PROTECT author

Создано: 06 декабря 2004 05:25
· Личное сообщение · #2

LuckyDevil заинтересовать навена всяких троянмейкеров ну а вообще все можно...

-----
Пиво, сиськи, транс




Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 06 декабря 2004 05:33
· Личное сообщение · #3

-= ALEX =-
Может начнем обсуждать ))), если у кого-то есть примеры, было бы не плохо их пощупать и обсудить.




Ранг: 260.3 (наставник), 2thx
Активность: 0.120
Статус: Участник
PPC-PROTECT author

Создано: 06 декабря 2004 07:46
· Личное сообщение · #4

LuckyDevil гугл в руки дофига встречал про api-hooking... ленимся сударь ...

-----
Пиво, сиськи, транс




Ранг: 10.1 (новичок)
Активность: 0.040
Статус: Участник

Создано: 06 декабря 2004 14:22
· Личное сообщение · #5

Попробуй Artmoney, классная штука, только правда, для оперативки.




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 06 декабря 2004 14:31
· Личное сообщение · #6

-= ALEX =- пишет:
LuckyDevil гугл в руки дофига встречал про api-hooking... ленимся сударь ...

Ага, я вот тож ленюсь )
LuckyDevil, ссылки потом запости интересные, плз. Тема интересная.


Sanya
не неси херню...



Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 06 декабря 2004 21:53
· Личное сообщение · #7

LuckyDevil, Возможно все. А накаком языке надо?



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 06 декабря 2004 22:23
· Личное сообщение · #8

v0id на каком?
если честно без разницы, просто нужно понять сам механизм, если ты в состоянии писать С++ это замечательно, если на C# тоже не плохо, ну а если на дельфи, то это вовосе чудненько ))). А если серьезно, на самом деле интересная вещь и может многим пригодиться для последующий разработок. Лично мне это уже нужно, вот почему и возник этот вопрос в форуме.
Может мы все-таки начнем более конкретно рассматривать данный вопрос, а не давать комментарии!!!!
Ещераз о смой теме:
"Есть задача, написать перехватчик событий приложений, что он должен делать:
1) перехватывать события функций открытия, сохранения файлов, копирование в буфер;
2) производить некие операция с файлами после перехвата и после возвращать их уже вызывавшим их программам.
Т.е. налету производить коррекцию файла. "


-= ALEX =- гугла замечательая штука, самого не раз выручала, но не все что нужно можно найти, по большей части это просто рассуждения или комметарии на тему и ничего более.



Ранг: 103.0 (ветеран)
Активность: 0.030
Статус: Участник

Создано: 06 декабря 2004 22:47
· Личное сообщение · #9

Глянь:

Джеффри РИХТЕР - Создание эффективных WIN32-приложений
с учетом специфики 64-разрядной версии Windows

Глава 22 - Внедрение DLL и перехват API-вызовов

может че оттуда пригодится.
Качать тут: alexsoft.home.nov.ru/prog/index.htm



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 06 декабря 2004 22:58
· Личное сообщение · #10

MozgC сэнкс, ща гляним.



Ранг: 3.6 (гость)
Активность: 0.010
Статус: Участник

Создано: 07 декабря 2004 10:05 · Поправил: Gloomy
· Личное сообщение · #11

См. еще тут:
www.rsdn.ru/summary/1383.xml
www.rsdn.ru/summary/292.xml

И самая крайняя мера - хук NativeAPI:
wasm.ru/article.php?article=tracknapi



Ранг: 16.8 (новичок)
Активность: 0.030
Статус: Участник

Создано: 08 декабря 2004 06:03
· Личное сообщение · #12

Что то смахивает сильно на задания по лабам?



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 09 декабря 2004 04:31
· Личное сообщение · #13

TOR писал подобные лабы? Если да то поделись, а вообще эта тема была создана с целью понять как осуществляються перехваты, причем не на уровне мышки и клавиатуры (это уже никого не интересует), а на уровне конкретных функций API.
Что, есть что ответить? Буду рад это увидеть, да и всем я так думаю будет интересно.



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 09 декабря 2004 04:34
· Личное сообщение · #14

Gloomy еще не читал, но уже просто посмотрел и мне нравиться, спасибо я думаю тут очень много ценной информации.
Всем советую туда заглянуть.



Ранг: 60.4 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 06 марта 2006 19:06
· Личное сообщение · #15

MSDN->hooks [win32]



Ранг: 42.4 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 07 марта 2006 05:19
· Личное сообщение · #16

Это очень доступно описано в книге М. Флёнова "Делфи глазами хакера". В сети я её точно видел, где не помню. Ща исходники гляну...

Вот, собственно, открытие паролей со звёздочкой с помощью HOOK:

HHOOK SysHook;
HWND Wnd=0;
LRESULT CALLBACK SysMsgProc(
int code,
WPARAM wParam,
LPARAM lParam)
{
//Передаём сообщение другим ловушкам в системе
CallNextHookEx(SysHook,code,wParam,lParam);
if(code == HC_ACTION)
{
//Получаем идентификатор окна, сгенерировавшего сообщение
Wnd=TMsg(*((TMsg*)lParam)).hwnd;
if(TMsg(*((TMsg*)lParam)).message == WM_LBUTTONDOWN)
if((TMsg(*((TMsg*)lParam)).wParam & MK_CONTROL)== MK_CONTROL)
{
SendMessage(Wnd, EM_SETPASSWORDCHAR,0,0); //Показать пароль
InvalidateRect(Wnd,NULL,true);
}
}
}
extern LRESULT CALLBACK RunStopHook(bool State)
{
if(State)
{//Установка
SysHook=SetWindowsHookEx(WH_CALLWNDPROC,(HOOKPROC)SysMsgProc,(HINSTANC E) NULL,0);
}
else
{
UnhookWindowsHookEx(SysHook);

}//Снятие

}


Установка соответственно - RunStopHook(true), а снятие - RunStopHook(false).
По карйней мере частично это работало.



Ранг: 133.0 (ветеран)
Активность: 0.060
Статус: Участник

Создано: 07 марта 2006 06:05
· Личное сообщение · #17

Ara пишет:
Ага, я вот тож ленюсь )
LuckyDevil, ссылки потом запости интересные, плз. Тема интересная.

Полностью согласен Тема интересная. Все ссылки кидайте сюда.
LuckyDevil
Я дома гляну, где-то пример был, найду - скину сюда.



Ранг: 25.9 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 07 марта 2006 09:42
· Личное сообщение · #18

а то, что этой теме уже 2+ года вам ничего неговорит?
откуда только такие раритеты достаёте...



Ранг: 60.4 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 07 марта 2006 14:32
· Личное сообщение · #19

Зачем сделано не скажу, но посмотреть можете...

247d_Hooker.zip.zip



Ранг: 45.5 (посетитель)
Активность: 0.050
Статус: Участник

Создано: 07 марта 2006 18:12
· Личное сообщение · #20

www.noil.pri.ee/ - там когда-то было много статей по этой теме



Ранг: 13.0 (новичок)
Активность: 0.020
Статус: Участник

Создано: 16 сентября 2006 07:57
· Личное сообщение · #21

у Калашникова в рассылке есть пример резидента с перехватом API-функций (может поможет)!




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 16 сентября 2006 08:26
· Личное сообщение · #22

вам что делать нечего? тот кто создал тему в 2004 г уже давно разобрался во всем ;)
тема закрыта..

-----
Тут не могла быть ваша реклама



 eXeL@B —› Программирование —› Учимся программировать!!! Hooks!
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати