C++ Function Dumplama Koruması

frezzyterror

Efsane Üye
Katılım
15 Haz 2020
Mesajlar
1,223
Beğeniler
307
Verdiğim kod basit bir temel koddur.
Bunun yanı sıra obfuscator kullanmanız yararınıza olacaktır.


C++:
LPVOID Valloc()
{
    LPVOID lpvResult;

    lpvResult = VirtualAlloc(NULL, 320, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);

    if (lpvResult == NULL)
    {
        MessageBoxA(NULL, "VirtualAlloc failed!", "SHC", MB_OK);
        return 0;
    }
    VirtualFree(lpvResult, 0, MEM_RELEASE);
    MessageBoxA(NULL, "VirtualAlloc success!", "SHC", MB_OK);
 
    return lpvResult;
}

320 byte bir uygulama olarak kabül ettim ben bunu,

Ardından ana fonksiyona bu kodları ekliyoruz:


C++:
#pragma optimize( "", off )

typedef LPVOID(*pAlloc)();
LPVOID Valloc();

VOID WINAPI Entry(VOID)
{
    
    LPVOID Done = Valloc();
 
    DWORD oldProtect;
    size_t functionSize = 97;
        VirtualProtect(Valloc, functionSize, PAGE_EXECUTE_READWRITE, &oldProtect);

      
    for (size_t i = 0; i < functionSize; ++i) {
        *((char*)Valloc + i) = 0x61;
    }
    VirtualProtect(Valloc, functionSize, oldProtect, &oldProtect);

    pAlloc functionPointer = Valloc;
    MessageBoxA(NULL, "Hersey Tamam!", "SHC", MB_OK);
}


sonuç:


216293787-fbf36c09-8e1b-45a9-a0dd-3920e461a00d.png.2a52500d8a58c849ab46d9ab4fb731f9.png
 

  Şuanda konuyu görüntüleyen kullanıcılar


Üst Alt