• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            elva

            利用NtUnmapViewOfSection強(qiáng)制卸載模塊

            確實(shí)可以卸載指定進(jìn)程指定位置的模塊,但有幾個(gè)問題:
            [1]  PEB的模塊列表中還存在該模塊的記錄,大部分模塊枚舉函數(shù)都是枚舉這個(gè)列表
            [2]  可能會(huì)出現(xiàn)訪問異常

            看來RING3下是不可能做到強(qiáng)制卸載模塊的完美實(shí)現(xiàn),要進(jìn)ring0才行。下面是測試代碼
            typedef ULONG (WINAPI *PFNNtUnmapViewOfSection)( IN HANDLE ProcessHandle,IN PVOID BaseAddress );

            BOOL UnmapViewOfModule ( DWORD dwProcessId, LPVOID lpBaseAddr )
            {
                HMODULE hModule 
            = GetModuleHandle ( L"ntdll.dll" ) ;
                
            if ( hModule == NULL )
                    hModule 
            = LoadLibrary ( L"ntdll.dll" ) ;

                PFNNtUnmapViewOfSection pfnNtUnmapViewOfSection 
            = (PFNNtUnmapViewOfSection)GetProcAddress ( hModule, "NtUnmapViewOfSection" ) ;
                
                HANDLE hProcess 
            = OpenProcess ( PROCESS_ALL_ACCESS, TRUE, dwProcessId ) ;
                ULONG    ret 
            = pfnNtUnmapViewOfSection ( hProcess, lpBaseAddr ) ;
                CloseHandle ( hProcess ) ;
                
            return ret ? false : true ;
            }

            posted on 2007-09-24 15:08 葉子 閱讀(4801) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 技術(shù)研究

            Feedback

            # re: 利用NtUnmapViewOfSection強(qiáng)制卸載模塊 2009-09-05 03:05 mszjk

            這是ring0的代碼么?  回復(fù)  更多評(píng)論   

            # re: 利用NtUnmapViewOfSection強(qiáng)制卸載模塊 [未登錄] 2014-07-28 18:19 小學(xué)畢業(yè)生

            NtUnmapViewOfSection可以再Ring3下使用。
            我用VB做給你看
            Private Declare Function NtUnmapViewOfSection Lib "ntdll.dll" (ByVal ProcessHandle As Long ,ByVal BaseAddress As Long)As Long
            Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long ,ByVal bInheritHandle As Boolean, ByVal dwProcessId As Long)As Long
            Private Declare Function GetModuleHandleA Lib "kernel32" (ByVal lpModuleFileName As String) As Long
            Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
            Private Sub UnloadNtdll(ByVal PID As Long)
            Dim hProc As Long
            hProc = OpenProcess(&h8 Or &H400, False, PID)
            If hProc = 0 Then Exit Sub
            NtUnmapViewOfSection hProc, GetModuleHandleA("ntdll.dll")
            CloseHandle hProc
            End Sub  回復(fù)  更多評(píng)論   

            97超级碰碰碰碰久久久久| 久久久久这里只有精品| 亚洲狠狠综合久久| 免费一级欧美大片久久网| 99久久精品国产一区二区| 99久久99这里只有免费的精品| 久久狠狠一本精品综合网| 久久精品国产亚洲AV香蕉| 久久亚洲精品无码播放| 99999久久久久久亚洲| 久久青青色综合| 九九久久精品无码专区| 无码国内精品久久人妻| 日本欧美国产精品第一页久久| 九九久久自然熟的香蕉图片| 伊人久久一区二区三区无码| 91精品国产高清久久久久久国产嫩草| 久久成人国产精品免费软件| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 国产欧美久久久精品影院| 国产日产久久高清欧美一区| 中文字幕久久波多野结衣av| 亚洲国产成人久久综合一区77| 97久久久精品综合88久久| 亚洲精品美女久久777777| 无码任你躁久久久久久久| 久久黄色视频| 久久天天躁狠狠躁夜夜2020老熟妇 | 色婷婷久久久SWAG精品| 2020最新久久久视精品爱| 色综合久久88色综合天天| 日本精品久久久中文字幕| 久久久久亚洲AV无码永不| 日本WV一本一道久久香蕉| 少妇人妻综合久久中文字幕| 久久久久青草线蕉综合超碰 | 一本久久a久久精品vr综合| 亚洲综合伊人久久大杳蕉| 久久精品中文无码资源站| 伊人久久大香线蕉综合Av| 久久综合噜噜激激的五月天|