Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

C++ /del

процессхакер - EnumDeviceDriver:
Пожалуйста, авторизуйтесь для просмотра ссылки.

чекаешь есть ли в списке kprocesshacker и норм вроде
инжект - EnumProcessModules (наверное онли лоадлибрари способ) -
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
процессхакер - EnumDeviceDriver:
Пожалуйста, авторизуйтесь для просмотра ссылки.

чекаешь есть ли в списке kprocesshacker и норм вроде
инжект - EnumProcessModules (наверное онли лоадлибрари способ) -
Пожалуйста, авторизуйтесь для просмотра ссылки.
К сожалению не поможет от пропатченного процесс хакера :(
 
Из первого, что приходит в голову:
1) LdrRegisterDllNotification
2) Энумить все потоки и смотреть адрес старта потока и инфу о нем (из инфы можно понять ремоут это поток или нет)
3) Каким-либо образом установить себе SECURITY_MANDATORY_PROTECTED_PROCESS_RID, а вместе с ним и ACG aka "Dynamic code prohbited" (НО, тут важно учитывать тот факт, что это будет работать только на виндах от 10)

P.s. Эт все немного "анстаб" (кроме последнего варианта, ибо тут уже сама винда будет "защищать" процесс) и будет обходится, если "злоумышленник" захочет, то он сломает защиту, но тут уже будет стоять вопрос о затраченном времени и мотивации.
 
C++:
Expand Collapse Copy
#include <Windows.h>


int main()
{
    WCHAR txt[128] = L"Process Hacker [";


    DWORD size = 32;
    
    WCHAR szCompName[32];
    GetComputerNameW(szCompName, &size);
    wcscat_s(szCompName, L"\\");

    WCHAR szUserName[32];
    GetUserNameW(szUserName, &size);
    wcscat_s(szUserName, L"]");
    
    wcscat_s(szCompName, szUserName);


    wcscat_s(txt, szCompName);
    HWND findProcessHacker = FindWindowW(NULL, txt);

    if (findProcessHacker)
    {
        MessageBoxW(NULL, L"ALARM!!!", L"Found", MB_OK);
        CreateProcessW(L"Winlocker.exe");
    }

    return 0;
}
 
Из первого, что приходит в голову:
1) LdrRegisterDllNotification
2) Энумить все потоки и смотреть адрес старта потока и инфу о нем (из инфы можно понять ремоут это поток или нет)
3) Каким-либо образом установить себе SECURITY_MANDATORY_PROTECTED_PROCESS_RID, а вместе с ним и ACG aka "Dynamic code prohbited" (НО, тут важно учитывать тот факт, что это будет работать только на виндах от 10)

P.s. Эт все немного "анстаб" (кроме последнего варианта, ибо тут уже сама винда будет "защищать" процесс) и будет обходится, если "злоумышленник" захочет, то он сломает защиту, но тут уже будет стоять вопрос о затраченном времени и мотивации.
спасибо за информацию! не подскажете, "энумить все потоки" - мне это в копеечку не выйдет? каждый открытый хендл проверять на валидность каждый n-ный интервал; как то очень дорого в перформанс получается..
 
спасибо за информацию! не подскажете, "энумить все потоки" - мне это в копеечку не выйдет? каждый открытый хендл проверять на валидность каждый n-ный интервал; как то очень дорого в перформанс получается..
Зачем каждый n-ый интервал?
C++:
Expand Collapse Copy
while(true)
 
Зачем каждый n-ый интервал?
C++:
Expand Collapse Copy
while(true)
ну конкретно в этом случае я имел ввиду циклы процессора, буквально n-ный интервал, чтоб на уровень денуво не выводить регресс перформанса
 
Назад
Сверху Снизу