Mhook

Mhook

  1
Бесплатное ПО Открытый код
Категории: Безопасность Разработка
Платформы: Windows
Особенности:
api-management c-plus-plus extender api-analytics development delphi api c-sharp com development-tool analysis-tool интеграция api debugger api-monitoring hacking instrumentation win32 disassembler visual-basic developers dll инъекция python api-hooking



Если вы будете заниматься этой областью, то вы уже будете знать, что обход
Microsoft Research в значительной степени устанавливает эталон, когда дело
доходит до перехвата API. Почему бы нам тогда быстро не провести сравнение?

DETOURS VS. MHOOK

Detours доступен бесплатно с некоммерческой лицензией, но поддерживает только
платформу x86. Detours также можно лицензировать для коммерческого
использования, что также дает вам полную поддержку x64, но вы можете увидеть
условия лицензирования только после подписания NDA.

Mhook свободно распространяется под лицензией MIT с поддержкой x86 и x64.

Обходы уклоняются от официальной поддержки прикрепления хуков к работающему
приложению. Конечно, вы можете это сделать, но если вы в конечном итоге
вызвали случайный сбой здесь или там, вы можете винить только себя.

Mhook предназначался для того, чтобы иметь возможность устанавливать и удалять
хуки в запущенных приложениях - в конце концов, это то, что вам нужно в
реальном мире. Он делает все возможное, чтобы избежать перезаписи кода,
который может выполняться другим потоком.

Detours поддерживает транзакционный перехват и отцепку; то есть, устанавливая
кучу хуков одновременно с подходом «все или ничего». Хуки будут
устанавливаться только в том случае, если все они могут быть установлены, в
противном случае библиотека откатит любые сделанные изменения. Mhook не делает
этого.

Наконец, Mhook довольно ленив, когда дело доходит до управления памятью для
используемых батутов. Detours распределяет блоки памяти по мере необходимости
и использует результирующую область данных для хранения столько батутов,
сколько потребуется. Mhook, с другой стороны, использует один вызов
VirtualAlloc для каждой устанавливаемой ловушки. Каждому хуку требуется менее
100 байт памяти, так что это очень расточительно, поскольку VirtualAlloc в
конечном итоге получает 64 КБ из виртуального адресного пространства процесса
каждый раз, когда Mhook вызывает его. (Фактически выделенная память будет
одной страницей, что также довольно расточительно.) В конце концов, это,
вероятно, не имеет большого значения, если вы не устанавливаете очень большое
количество хуков в приложении. Кроме того, это очень легко исправить.

Аналоги (4):

  • WinAPIOverride

    Это программное обеспечение позволяет вам контролировать и / или изменять любую функцию процесса для любого вызова ...
      2
    Бесплатное ПО
    Windows
    process-monitoring
  • Deviare In-Process

    Deviare In-Process is a code interception engine for Microsoft Windows®.
      1
    Бесплатное ПО Открытый код
    Windows
    api-management c-plus-plus extender api-analytics development delphi api c-sharp com development-tool analysis-tool интеграция api debugger api-monitoring hacking instrumentation win32 visual-basic developers dll инъекция python api-hooking
  • HookInjEx

    Демонстрационное приложение, демонстрирующее, как внедрить код в адресное пространство других процессов, а затем ...
      1
    Бесплатное ПО Открытый код
    Windows
    debugger developers extender development api hacking instrumentation dll инъекция win32 development-tool api-hooking
  • Microsoft Research Detours

    Microsoft Research Detours v3 Professional - это библиотека для настройки произвольных функций Win32 ...
      1
    Платное ПО
    Windows
    analysis-tool debugger api-management microsoft-research api-monitoring developers extender development com hacking api instrumentation api-analytics win32 development-tool dll инъекция api-hooking интеграция api