Не инжектит :<

Забаненный
Статус
Оффлайн
Регистрация
9 Янв 2019
Сообщения
701
Реакции[?]
295
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
привет, сегодня появилось свободное время, и я решил написать чит для minecraft (на с++ естественно, интернал).
сделал простой инжектор, который ищет игру по айди процесса:
C++:
int main() {
    
    LPCSTR DllPath = "D:\\projects\\mc\\shitcheat\\Debug\\cheatos.dll";

    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, 6772);

    LPVOID pDllPath = VirtualAllocEx(hProcess, 0, strlen(DllPath) + 1,
        MEM_COMMIT, PAGE_READWRITE);

    WriteProcessMemory(hProcess, pDllPath, (LPVOID)DllPath,
        strlen(DllPath) + 1, 0);

    HANDLE hLoadThread = CreateRemoteThread(hProcess, 0, 0,
        (LPTHREAD_START_ROUTINE)GetProcAddress(GetModuleHandleA("Kernel32.dll"),
            "LoadLibraryA"), pDllPath, 0, 0);

    WaitForSingleObject(hLoadThread, INFINITE);

    std::cout << "location: " << std::hex << pDllPath << std::endl;
    std::cin.get();

    VirtualFreeEx(hProcess, pDllPath, strlen(DllPath) + 1, MEM_RELEASE);
    return 0;
}
самое интересное, что инжектор находит процесс и показывает его расположение, но вот dll не срабатывает. сейчас длл содержит только прикрепление консоли:
C++:
BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        AllocConsole();
        freopen("CONIN$", "r", stdin);
        freopen("CONOUT$", "w", stdout);
        std::cout << "ffff" << std::endl;
    }
    return TRUE;
}
 
Забаненный
Статус
Оффлайн
Регистрация
9 Янв 2019
Сообщения
701
Реакции[?]
295
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а.PNG
как оказалось, dll все-таки крепится к процессу, но почему не открывается консоль?
 
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Привилегии забыл задать, как минимум.
 
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
TOKEN_PRIVILEGES tp;
if (OpenProcessToken((HANDLE)-1, /*TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY|*/TOKEN_ALL_ACCESS_P, &hToken))
{
tp.PrivilegeCount = 1;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

tp.Privileges[0].Luid.LowPart = 20;
tp.Privileges[0].Luid.HighPart = 0;

AdjustTokenPrivileges(hToken, FALSE, &tp, 0, NULL, NULL);
CloseHandle(hToken);
}
 
Сверху Снизу