• <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>
            隨筆-60  評(píng)論-262  文章-1  trackbacks-0
            今天終于完成了往 vista 內(nèi)所有 ring 3 進(jìn)程的注入. 包括 csrss.exe 進(jìn)程.

            主要的中心思想就是,
                1. 提升本進(jìn)程訪問令牌, 使其有調(diào)試權(quán)限.
                2. 獲得本進(jìn)程的當(dāng)前線程的內(nèi)核對(duì)象的安全描述符, 將其復(fù)制出來備用.
                3. 準(zhǔn)備遠(yuǎn)程線程的執(zhí)行代碼以及執(zhí)行參數(shù). 其中包括 loadlibrarya 和 RtlExitUserThread 調(diào)用, 例子嘛, 本來前一篇文章里有, 再次貼在這里方便各位看官.
            #define LoadLibraryA_ADDR       0xDDDDDDDD 
            #define RtlExitUserThread_ADDR  0xEEEEEEEE 

            static __declspec(naked) DWORD WINAPI ThreadDummy(LPVOID lpParam) 
            {
                __asm { 
                    push    dword ptr [esp
            +4]           ; // 將傳進(jìn)來的線程函數(shù)的參數(shù)壓棧 
                    mov     eax, LoadLibraryA_ADDR      ; // LoadLibraryA 或 FreeLibrary 函數(shù)的地址 
                    call    eax                         ; // 調(diào)用 LoadLibraryA 函數(shù)
                    push    eax                         ; // 將 RtlExitUserThread 函數(shù)的參數(shù)壓棧
                    mov     eax, RtlExitUserThread_ADDR ; // RtlExitUserThread 函數(shù)的地址 
                    call    eax                         ; // 調(diào)用 RtlExitUserThread 函數(shù)
                    ret     4                           ; // 返回 
                } 
            }

                4. 以第 2 步獲取的安全描述符以及第 3 步準(zhǔn)備的代碼和數(shù)據(jù)作為參數(shù)調(diào)用 RtlCreateUserThread 函數(shù), 在目標(biāo)進(jìn)程創(chuàng)建遠(yuǎn)線程. 等待執(zhí)行完畢.
                5. 清理第 2 步和第 3 步分配的內(nèi)存. 整個(gè)過程完畢.

            總結(jié): 整個(gè) dll injection 的探索開發(fā)歷時(shí)月余, 開始看似順利, 后期艱難困苦. 特別是那個(gè)超級(jí)變態(tài)要求: 必須注入到 csrss.exe 進(jìn)程里去. 從普通的 SetWindowHookEx 和 known dll, 到 CreateRemoteThread, 最后到 NtCreateThread 以及 NtCreateThreadEx, 最后回歸到 RtlCreateUserThread 函數(shù). 中間夾雜了 DPC, APC, 以及在內(nèi)核修改 knowndlls\\kernel32.dll 可執(zhí)行映像 inline hook CreateThread 函數(shù)等等等等. 從應(yīng)用層到內(nèi)核, 再回歸應(yīng)用層, 搞了個(gè)遍.

            現(xiàn)在我可以牛逼哄哄的說一句了, Injection DLL? Just so so!!!

            順便 BS 一下 Rising, 這個(gè)寶貝殺軟竟然直接 kill 掉了所有遠(yuǎn)程線程函數(shù), 不對(duì)用戶做任何通知和給用戶選擇的機(jī)會(huì). 但我在內(nèi)核修改任何可執(zhí)行映像時(shí), 這個(gè)寶貝卻愉快的告訴我, 我的系統(tǒng)很安全. 再次 BS 一下.

            一個(gè)小小的測(cè)試程序, 在這里下載

            posted on 2008-06-20 11:24 free2000fly 閱讀(3265) 評(píng)論(11)  編輯 收藏 引用

            評(píng)論:
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-20 12:58 | cppexplore
            描述的太簡(jiǎn)單太簡(jiǎn)單了 看了之后難以跟進(jìn)重現(xiàn)啊
            放首頁,炫耀意義大于借鑒意義  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-20 13:01 | free2000fly
            @cppexplore
            工作成果, 不便公開詳情, 可以看看頭兩篇文章, 相信您會(huì)明白究竟的.   回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) [未登錄] 2008-06-20 13:10 | CppExplore
            @free2000fly
            不好意思 原來是是連續(xù)的 呵呵   回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-22 23:04 | 影視劇
            博主就是牛啊,牛是要有資本滴。贊一個(gè)  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-23 12:52 | 查看
            大哥, 你以前是搞驅(qū)動(dòng)的吧?
            QQ:244089156  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-23 14:43 | free2000fly
            @查看
            是啊, 現(xiàn)在也是  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-27 14:24 | UI Automation
            能不能給點(diǎn)提示,如何提升token的權(quán)限?我給你發(fā)了留言,有問題想請(qǐng)教。  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-27 14:44 | free2000fly
            @UI Automation
            提升令牌權(quán)限的代碼滿大街都是. 沒什么稀奇的.
            至于要注入到所有進(jìn)程, 當(dāng)然得編寫驅(qū)動(dòng)了, 不然你就得時(shí)時(shí)刻刻枚舉進(jìn)程的總數(shù), 然后一個(gè)一個(gè)注入, 累死你, 而且效率低下, 實(shí)時(shí)性也不強(qiáng).   回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-06-29 16:33 | UI Automation
            謝了,我嘗試了下dll Process_Attach事件時(shí),同時(shí)安裝系統(tǒng)鉤子,似乎還行在Vista上,以后再有問題繼續(xù)請(qǐng)教,呵呵.  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-12-15 14:49 | 啊啊啊
            幾百年前的東西還在研究, 真讓人吃精.  回復(fù)  更多評(píng)論
              
            # re: 完成 windows nt 系列的 DLL injection 功能的開發(fā) 2008-12-15 14:58 | free2000fly
            @啊啊啊
            吃精!? 你真幽默  回復(fù)  更多評(píng)論
              

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            伊人久久大香线蕉AV色婷婷色| 久久亚洲日韩精品一区二区三区| 91精品久久久久久无码| 99久久精品国产一区二区| 久久久久久青草大香综合精品| 亚洲欧美久久久久9999 | 日韩久久久久久中文人妻| 新狼窝色AV性久久久久久| 精品久久久久久国产| 无码人妻少妇久久中文字幕| 国内精品久久久久影院一蜜桃| 伊人色综合久久天天| 国产亚洲美女精品久久久2020| 一本大道加勒比久久综合| 午夜精品久久久久| 青青草国产成人久久91网| 无码任你躁久久久久久老妇App| 国产精品免费福利久久| 亚洲国产成人精品女人久久久 | 亚洲国产小视频精品久久久三级 | 香蕉aa三级久久毛片| 久久噜噜电影你懂的| 久久国产精品无| 久久精品亚洲欧美日韩久久| 久久久无码精品亚洲日韩蜜臀浪潮| 欧美精品一区二区久久| 国产精品99久久久久久www| 99精品久久久久久久婷婷| 亚洲国产精品综合久久一线| 99久久婷婷国产综合精品草原| av无码久久久久不卡免费网站| 久久久久久久久久久| 亚洲精品NV久久久久久久久久| 久久精品无码一区二区三区免费| 国産精品久久久久久久| 秋霞久久国产精品电影院| 久久99国产精品二区不卡| 精品综合久久久久久888蜜芽| 亚洲av伊人久久综合密臀性色| 亚洲午夜久久久久久噜噜噜| 久久精品国产亚洲AV蜜臀色欲 |