Перевірка того, чи контролюється API (підключено?)

Моє додаток використовує деякі API, такі як GetProcAddress і CreateProcess , які іноді викликають антивіруси, щоб позначити його як зловмисне, навіть якщо це не так.

Що я намагаюся зробити, це перевірити, чи контролюється певний API чи підключено його, і якщо це тоді, я не називаю цю частину коду.

Як перевірити, чи підключено певний API?

Це додаток Windows, написаний на C.

Дякую.

0
Немає ін'єкцій dll і немає дистанційного створення ниток. Ці 2 API перебувають у різних частинах програм, що роблять різні речі. Чи знаєте ви, як перевірити наявність API-гачка?
додано Автор Mr Aleph, джерело
@ Алі будь-який Вибрати один.
додано Автор Mr Aleph, джерело
GetProcAddress і CreateProcess не повинні піднімати жодного прапорця для AV. Ви робите дистанційне ін'єкційне копіювання за допомогою CreateRemoteThread ? Якщо це так, підпис вашої функції може збігатись із шкідливим програмним забезпеченням.
додано Автор JosephH, джерело
"... перевірте, чи існує конкретний API ...", до яких API (ів) ви говорите?
додано Автор alk, джерело
І як перевірити, чи не було підключено детектора монітора API?
додано Автор Raymond Chen, джерело
Не існує надійного способу перевірити, чи API було підключено, оскільки людина, яка підключила API, може також підключити свій детектор API.
додано Автор Raymond Chen, джерело

1 Відповіді

У win32 немає офіційних методів виявлення та/або розміщення гачок (крім SetWindowsHookEx() ( http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990 ) та інші функції, які охоплюють лише дуже малий набір функціональних можливостей) .

Виявлення гачка залежить від того, як було застосовано гачок.

Існує два популярних способи розміщення гачка:

  1. Імпорт/експорт виправлення таблиці
  2. Перезаписування коду

Для деталей (плюсів/мінусів) про різні методи розміщення гачки, будь ласка, розгляньте тут читання тут http: //help.madshi .net/ApiHookingMethods.htm .

Кожен метод підключення вимагає іншого підходу до його виявлення.

Для методів виявлення гаків, розміщених, як вказано вище, будь ласка, перегляньте розділ "Алгоритм ApiHookCheck" тут http://www.security.org.sg/code/apihookcheck.html . На цій сторінці є джерела зразків, які я зробив тестом не .

1
додано
Це інформація, яка мені потрібна. Дякую!
додано Автор Mr Aleph, джерело
Посилання на алгоритм ApiHookCheck більше не працює. Чи може хтось, будь ласка, надайте гарну посилання на це?
додано Автор Benny, джерело
@ @ спасибо, я теж знайшов це питання. Якщо він відповідає використанню алгоритму APIHookChecking у вашому відповіді?
додано Автор Benny, джерело
@ Бенні: Це може бути точкою для початку: security.stackexchange.com/q/17904/36769
додано Автор alk, джерело