転載取得kernel 32.dllベースアドレス

660 ワード

kernel 32を取得する.dllイメージベース
技術に関することは久しぶりに書きましたが、最近組み込みアセンブリとマシンコードの注入を研究しているので、次のコードを列挙します.このうちC/C++の部分とinline asmの最後の文は私が書いたものです.自評:オリジナル精神が極めて欠けている.HMODULE GetKernel32( void )
{
    HMODULE hRet = NULL;
    __asm
    {
        mov eax, fs:30h
        mov eax, [eax + 0ch]
        mov esi, [eax + 1ch]
        lodsd
        mov eax, [eax + 08h]
        mov hRet, eax
    }
    return hRet;
}

このコードの機能は、GetModuleHandle APIを用いるkernel 32を取得しないことである.dllのモジュールハンドル(イメージベース)は、Win 32 NTカーネルにのみ適しています.