САБЖ есть драйвер мы знаем только имя файла "NdisFilter.sys" Процедуры DriverUnload в нем не предусмотрено Можно ли как-то извне (тоже р0) выгрузить этот дров? В общем такие вопросы: 1. Как найти базу образа драйвера 2. Как остановить в этом драйвере все потоки 3. Как найти все перехваты, которые ведут в этот драйвер 4. И наконец, как выгрузить этот дров? ЗЫ: плз не флудите. Ответы по типу "это сложный вопрос или сделать можно, но как не знаю" лучше не постить.
я использую вот этот код. Вообще, ищи по форуму, примеры были Код (Text): PVOID FindBase() { ZwQuerySystemInformation(SystemModuleInformation, &n, 0, &n); q = (ULONG *)ExAllocatePool(PagedPool, n); ZwQuerySystemInformation(SystemModuleInformation, q, n * sizeof (*q), 0); p = (PSYSTEM_MODULE_INFORMATION)(q + 1); for (i = 0; i < *q; i++) { if (_stricmp(p[i].ImageName + p[i].ModuleNameOffset, "driver.sys") == 0) { BaseAddress = p[i].Base; break; } } ExFreePool(q); return BaseAddress; }
правильно, фильтры по определению не выгружаемы без перезагрузки системы. Все шаманства приведут в итоге к БСОДу. Для своей машины или вируса конечно можно извратиться, но для продакшн кода решений нет.