Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: WinAPI и системное программирование > Глобальные хуки, Win32API и DLL |
Автор: Pathfider 28.12.2004, 15:52 | ||
Нашел на форуме вот такую DLL:
А можно ли получить параметры перехваченного сообщения, ну скажем ReadFile(hFile, lpBuffer, dwNumberOfBytesToRead, lpdwNumberOfBytesRead, lpOverlapped)? Я имею в виду то, что в скобках. Буду очень благодарен за пример. |
Автор: p0s0l 29.12.2004, 00:31 |
Можно Ищи что-нибудь типа "Перехват API", "Перехват функций" и т.д... |
Автор: Pathfider 29.12.2004, 17:21 |
p0s0l Ты не поверишь, но кроме своих собственных топиков ничего путевого не нашел... ![]() ![]() ![]() ![]() Добавлено @ 17:22 p0s0l Ты не поверишь, но кроме своих собственных топиков ничего путевого не нашел... ![]() ![]() ![]() ![]() |
Автор: xAnejl 29.12.2004, 22:05 |
если пишеш не троян, то тогда madCodeHook |
Автор: S.A.P. 29.12.2004, 23:16 |
http://forum.vingrad.ru/index.php?act=Search&CODE=show&searchid=fa810a8a8ac3f7884e900fe8efa75f6f&search_in=posts&result_type=topics&highlite=%CF%E5%F0%E5%F5%E2%E0%F2+api |
Автор: Pathfider 30.12.2004, 00:10 | ||
Как раз НЕ троян, а что-то вроде FolderGuard'a |
Автор: RA 5.1.2005, 20:06 | ||
Всё это реализованно по старой системе как в примере из арсенала. тоесть, есть dll она перехватывает нужные api (с параметрами) и выдаёт мессагу с названием функции и предложением разрешить или запретить исполнение данной функции. тоесть тебе нужно сделать примерно следущее:
Думаю тут тебе и без меня всё ясно. Про внедрение. Так как dll перехватывает вызовы только тех процессов к каторым она приоттачена, то нужно внедрить её в каждый процесс, пример внедрения есть в кладовке. Далее можно расслабиться тк. начнётся массовая эпидемия самовнедрений, т.е. в длл'ке стоит ловушка на запуск новых процессов => следовательно в каждый новый процесс она сама внедрица. Вообщем проверь всё это, мож я где лажу выдал ![]() |
Автор: Pathfider 6.1.2005, 10:32 |
RAdmin - ОФИГЕННОЕ СПАСИБО! Теперь буду разбираться пробовать написать что-то подобное. |
Автор: Guest 7.1.2005, 14:21 |
Pathfider то, что ты просил по телефону: procedure TForm1.Button1Click(Sender: TObject); var s: string; begin if OpenDialog1.Execute then begin s:=OpenDialog1.FileName; Label1.Caption:=s; SetFileAccess(ReadWrite,DenyAll); FileOpen(s,FileMode); end; end; то, что регистрирует Silence 1- Нормальный вход 2- Попытка обхода 3- Завершение программы 4- Не найдены БД 5- Завершение администратором 6- Удаление из реестра 7- Подбор пароля 8 - Вход администратора 91-БД сохранены удачно 92- Неудачное сохранение БД 10- Добавлено задание на печать 11-Обнаружен отладчик 12-Изменение системного времени есть ещё, но лень лезть в исходник... |
Автор: Albinos_x 7.1.2005, 14:27 |
Выше - это я |
Автор: p0s0l 8.1.2005, 15:27 | ||
В следующий раз публично-личные переписки будут удаляться... |
Автор: Bog d`An 3.11.2005, 14:58 |
Perchilla почему-то ничего не находит ![]() |
Автор: _hunter 3.11.2005, 15:38 |
это ты к чему?.. |
Автор: S.A.P. 3.11.2005, 15:43 | ||
![]() |
Автор: Pathfider 22.11.2006, 19:14 |
Я тут нарыл еще вариант перехвата на уровне NativeAPI. И опять же одно "НО": секунды 3 работает нормалоьно, а потом при попытке внедриться в другой процесс - "память по адресу ... не может быть "written"". Уперся пока только в это. Вот собственно исходник: http://www.pathfinder.nm.ru/files/1%20DLL.zip Собрано по материалам товарища MsRem'а с сайта http://www.wasm.ru |
Автор: bems 23.11.2006, 01:53 |
архив MsRemа с wasm.ru каспер при расширеных базах детектит как троян. |
Автор: Pathfider 29.11.2006, 17:29 | ||
Совершенно верно, но я на это забил. |
Автор: Pathfider 16.1.2007, 22:05 |
bems, так что с ошибкой-то делать? Как исправить? |