Для защиты в режиме реального времени(проактивки) Bitdefender использует юзермодную библиотеку. Называется эта либа avcufX где X=32 и 64 соответственно и загружается коллбеком из ядра при старте процесса. После этого как и в GData используется механизм юзермодных хуков и большинство "опасных" с точки зрения АВ функций выполняется после того как они пройдут через обработчик АВ.
Да, можно снять хуки восстановлением образа. Но сегодня не об этом!
Я признаться был немало удивлен, когда после выполнения след вызова мой код был назван вредоносным.
Нет, не название окна его так разозлило
Оказывается, если создать окно без флага WS_VISIBLE, тоесть невидимое окно, то ваша программа будет признана потенциально опасной! Не знаю сколько ложных срабатываний на этом построено, но факт остается фактом.
А теперь об обходе. Самый смешной и нелепый:
Разумеется прокатит, ведь главное чтобы в CreateWindow флажок стоял, а что там делается неважно
Подозреваю также что можно просто вывести видимое окно за пределы экрана и тоже всё будет хорошо. Такие нынче онтевирусы...
Да, можно снять хуки восстановлением образа. Но сегодня не об этом!
Я признаться был немало удивлен, когда после выполнения след вызова мой код был назван вредоносным.
Код:
hWnd = CreateWindowA("MyClass", TEXT("pidor_bitdefender"),WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
Нет, не название окна его так разозлило
А теперь об обходе. Самый смешной и нелепый:
Код:
hWnd = CreateWindowA("MyClass", TEXT("pidor_bitdefender"),WS_OVERLAPPEDWINDOW | WS_VISIBLE, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
ShowWindow(hWnd,SW_SPOILER);