欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析映像劫持技術(shù)第1/3頁

 更新時(shí)間:2008年06月26日 22:19:06   作者:  
詭異的中毒現(xiàn)象
一. 詭異的中毒現(xiàn)象

  在成品檢驗(yàn)科文員辦公室的一臺(tái)電腦上折騰半個(gè)小時(shí)后,計(jì)算機(jī)維護(hù)部門的技術(shù)員只覺得眼皮不停狂跳,因?yàn)閺膭傞_始接手這個(gè)任務(wù)開始,他就一直在做無用功:他隨身帶的U盤里引以為豪的眾多維護(hù)工具包在這臺(tái)機(jī)器上全軍覆沒,無論他直接在U盤上運(yùn)行還是隨便復(fù)制到哪個(gè)目錄里,系統(tǒng)都是報(bào)告“找不到文件”或者直接沒有運(yùn)行起來的反應(yīng),他第一次感受到了恐懼,文件分明就好好的在眼皮底下,可它們就是“找不到”或死活不肯執(zhí)行,莫非是在這臺(tái)機(jī)器上被病毒破壞了?他只好打開網(wǎng)頁嘗試重新下載,但是他很快就絕望了,剛下載的查殺工具同樣也不能使用。

  無奈之下他只好在眾多文員的期待下說出了大部分號(hào)稱上門維護(hù)電腦的高手們常用的一句話,一般情況下這句話馬上能讓大部分用戶接受殘酷的現(xiàn)實(shí),允許其重裝系統(tǒng),并為這次重裝系統(tǒng)付出50元的價(jià)格,這句話就是:“系統(tǒng)文件嚴(yán)重?fù)p壞了,沒法修了,只能重裝?!?

  裝完系統(tǒng)和常用辦公軟件后,他像一個(gè)賊似的趕緊離開了辦公室,生怕多呆一會(huì)兒就會(huì)惹來什么麻煩似的,而他卻不知道,“麻煩”早已在他剛才使用的U盤上安家了?;氐阶约旱碾娔X前,他剛右鍵點(diǎn)擊U盤,就看見鼠標(biāo)忙碌的狀態(tài)比平時(shí)久了點(diǎn),然后托盤區(qū)里的殺毒軟件和網(wǎng)絡(luò)防火墻都消失了,他心里一慌張,趕緊運(yùn)行超級(jí)巡警,系統(tǒng)卻報(bào)告“找不到文件”,他一下子呆在了電腦前:瘟神跟上門來了……

  古語云:道高一尺,魔高一丈。這句經(jīng)典哲理在網(wǎng)絡(luò)上得到了迅速的延伸應(yīng)用。今年初,一種早已有之的系統(tǒng)調(diào)試功能被應(yīng)用到病毒技術(shù)上,從而搖身一變成為惡魔的代言人,普通用戶很快就面臨了一場(chǎng)莫名其妙的病毒災(zāi)難,這就是“映像劫持”。

  二. 我本將心向明月,奈何明月照……

  “映像劫持”,也被稱為“IFEO”(Image File Execution Options,其實(shí)應(yīng)該稱為“Image Hijack”,后面章節(jié)會(huì)詳細(xì)提到,至少也應(yīng)該稱為IFEO Hijack而不是只有“IFEO”自身!),它的存在自然有它的理由,在WindowsNT架構(gòu)的系統(tǒng)里,IFEO的本意是為一些在默認(rèn)系統(tǒng)環(huán)境中運(yùn)行時(shí)可能引發(fā)錯(cuò)誤的程序執(zhí)行體提供特殊的環(huán)境設(shè)定,系統(tǒng)廠商之所以會(huì)這么做,是有一定歷史原因的,在Windows NT時(shí)代,系統(tǒng)使用一種早期的堆(Heap,由應(yīng)用程序管理的內(nèi)存區(qū)域)管理機(jī)制,使得一些程序的運(yùn)行機(jī)制與現(xiàn)在的不同,而后隨著系統(tǒng)更新?lián)Q代,廠商修改了系統(tǒng)的堆管理機(jī)制,通過引入動(dòng)態(tài)內(nèi)存分配方案,讓程序?qū)?nèi)存的占用更為減少,在安全上也保護(hù)程序不容易被溢出,但是這些改動(dòng)卻導(dǎo)致了一些程序從此再也無法運(yùn)作,為了兼顧這些出問題的程序,微軟以“從長(zhǎng)計(jì)議”的態(tài)度專門設(shè)計(jì)了“IFEO”技術(shù),它的原意根本不是“劫持”,而是“映像文件執(zhí)行參數(shù)”!

  IFEO設(shè)定了一些與堆分配有關(guān)的參數(shù),當(dāng)一個(gè)可執(zhí)行程序位于IFEO的控制中時(shí),它的內(nèi)存分配則根據(jù)該程序的參數(shù)來設(shè)定,那么如何使一個(gè)可執(zhí)行程序位于IFEO的控制中呢?答案很簡(jiǎn)單,Windows NT架構(gòu)的系統(tǒng)為用戶預(yù)留了一個(gè)交互接口,位于注冊(cè)表的“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options”內(nèi),使用與可執(zhí)行程序文件名匹配的項(xiàng)目作為程序載入時(shí)的控制依據(jù),最終得以設(shè)定一個(gè)程序的堆管理機(jī)制和一些輔助機(jī)制等,大概微軟考慮到加入路徑控制會(huì)造成判斷麻煩與操作不靈活的后果,也容易導(dǎo)致注冊(cè)表冗余,于是IFEO使用忽略路徑的方式來匹配它所要控制的程序文件名,例如IFEO指定了對(duì)一個(gè)名為“小金.EXE”的可執(zhí)行程序文件進(jìn)行控制,那么無論它在哪個(gè)目錄下,只要它名字還叫“小金.EXE”,它就只能在IFEO的五指山里打滾了。

  說了半天都只是純粹的概念,那么IFEO到底是怎么樣發(fā)揮作用的呢?例如有一個(gè)程序文件名為“l(fā)k007.exe”,由于使用了舊的堆管理機(jī)制,它在新系統(tǒng)里無法正常運(yùn)行甚至出現(xiàn)非法操作,為了讓系統(tǒng)為其提供舊的堆管理機(jī)制,我們需要IFEO來介入,則需執(zhí)行以下步驟:

  1. 確保在管理員狀態(tài)下執(zhí)行regedit.exe,定位到以下注冊(cè)表項(xiàng):

  
Quote:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options


  2. 在“Image File Execution Options”下建立一個(gè)子鍵,名為“l(fā)k007.exe”,不區(qū)分大小寫?,F(xiàn)在確保位于HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\lk007.exe\下,建立一個(gè)字符串類型的注冊(cè)表項(xiàng),名為“DisableHeapLookAside”,值為“1”

  3. 再次運(yùn)行l(wèi)k007.exe查看運(yùn)行情況,如果真的是由于堆管理機(jī)制引發(fā)的問題,則程序得以正常運(yùn)行,否則該程序問題不屬于IFEO能夠干涉的范圍,或者需要嘗試搭配其他的參數(shù)使用。

  目前已知的IFEO參數(shù)有:

    
Quote:
  ApplicationGoo 
  Debugger 
  PageHeapFlags 
  DisableHeapLookAside 
  DebugProcessHeapOnly 
  PageHeapSizeRangeStart 
  PageHeapSizeRangeEnd 
  PageHeapRandomProbability 
  PageHeapDllRangeStart 
  PageHeapDllRangeEnd 
  GlobalFlag 
  BreakOnDllLoad 
  ShutdownFlags 


相關(guān)文章

最新評(píng)論