C++ /del

Начинающий
Статус
Оффлайн
Регистрация
1 Май 2022
Сообщения
27
Реакции[?]
3
Поинты[?]
0
/del
 
Последнее редактирование:
Эксперт
Статус
Оффлайн
Регистрация
11 Ноя 2020
Сообщения
1,256
Реакции[?]
404
Поинты[?]
72K
процессхакер - EnumDeviceDriver:
Пожалуйста, авторизуйтесь для просмотра ссылки.

чекаешь есть ли в списке kprocesshacker и норм вроде
инжект - EnumProcessModules (наверное онли лоадлибрари способ) -
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Начинающий
Статус
Оффлайн
Регистрация
1 Май 2022
Сообщения
27
Реакции[?]
3
Поинты[?]
0
/del
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
7 Июл 2022
Сообщения
36
Реакции[?]
7
Поинты[?]
1K
процессхакер - EnumDeviceDriver:
Пожалуйста, авторизуйтесь для просмотра ссылки.

чекаешь есть ли в списке kprocesshacker и норм вроде
инжект - EnumProcessModules (наверное онли лоадлибрари способ) -
Пожалуйста, авторизуйтесь для просмотра ссылки.
К сожалению не поможет от пропатченного процесс хакера :(
 
Пользователь
Статус
Оффлайн
Регистрация
8 Апр 2022
Сообщения
558
Реакции[?]
88
Поинты[?]
53K
ну инжект можешь хукнуть loadlibrary(конечно же, только инжект ll`ом детектит)
 
IRQL_APC_LEVEL
Пользователь
Статус
Оффлайн
Регистрация
25 Авг 2018
Сообщения
210
Реакции[?]
88
Поинты[?]
3K
Из первого, что приходит в голову:
1) LdrRegisterDllNotification
2) Энумить все потоки и смотреть адрес старта потока и инфу о нем (из инфы можно понять ремоут это поток или нет)
3) Каким-либо образом установить себе SECURITY_MANDATORY_PROTECTED_PROCESS_RID, а вместе с ним и ACG aka "Dynamic code prohbited" (НО, тут важно учитывать тот факт, что это будет работать только на виндах от 10)

P.s. Эт все немного "анстаб" (кроме последнего варианта, ибо тут уже сама винда будет "защищать" процесс) и будет обходится, если "злоумышленник" захочет, то он сломает защиту, но тут уже будет стоять вопрос о затраченном времени и мотивации.
 
Начинающий
Статус
Оффлайн
Регистрация
1 Май 2022
Сообщения
27
Реакции[?]
3
Поинты[?]
0
/del
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
23 Окт 2020
Сообщения
98
Реакции[?]
46
Поинты[?]
0
C++:
#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;
}
 
Начинающий
Статус
Оффлайн
Регистрация
26 Мар 2023
Сообщения
9
Реакции[?]
5
Поинты[?]
0
Поставь перехват на LdrLoadDll и отлавливай так попытки загрузки левых дллок
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,355
Реакции[?]
493
Поинты[?]
85K
Из первого, что приходит в голову:
1) LdrRegisterDllNotification
2) Энумить все потоки и смотреть адрес старта потока и инфу о нем (из инфы можно понять ремоут это поток или нет)
3) Каким-либо образом установить себе SECURITY_MANDATORY_PROTECTED_PROCESS_RID, а вместе с ним и ACG aka "Dynamic code prohbited" (НО, тут важно учитывать тот факт, что это будет работать только на виндах от 10)

P.s. Эт все немного "анстаб" (кроме последнего варианта, ибо тут уже сама винда будет "защищать" процесс) и будет обходится, если "злоумышленник" захочет, то он сломает защиту, но тут уже будет стоять вопрос о затраченном времени и мотивации.
спасибо за информацию! не подскажете, "энумить все потоки" - мне это в копеечку не выйдет? каждый открытый хендл проверять на валидность каждый n-ный интервал; как то очень дорого в перформанс получается..
 
feel irl
Участник
Статус
Оффлайн
Регистрация
21 Дек 2018
Сообщения
679
Реакции[?]
295
Поинты[?]
16K
спасибо за информацию! не подскажете, "энумить все потоки" - мне это в копеечку не выйдет? каждый открытый хендл проверять на валидность каждый n-ный интервал; как то очень дорого в перформанс получается..
Зачем каждый n-ый интервал?
C++:
while(true)
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,355
Реакции[?]
493
Поинты[?]
85K
Зачем каждый n-ый интервал?
C++:
while(true)
ну конкретно в этом случае я имел ввиду циклы процессора, буквально n-ный интервал, чтоб на уровень денуво не выводить регресс перформанса
 
Похожие темы
Ответы
0
Просмотры
187
Ответы
6
Просмотры
363
Ответы
1
Просмотры
162
Ответы
38
Просмотры
1K
Сверху Снизу