Windows XP 揪出系統中胡作非為的DLL黑手(轉)
在Windows中,幾乎所有應用程式都會用到DLL(動態連結庫)檔案,它的正常與否關係到軟體能否正常執行。很多軟體故障也和它有直接關係。但應用程式往往會呼叫幾十個DLL程式,怎麼判斷誰是“罪魁禍首”呢?
案例回放:在一次非法操作後,Windows XP“搜尋助理”變成一張“白板”,不僅如此,“控制皮膚”中“使用者賬戶”項也顯得“面無表情”。點選“開始→幫助和支援”,滑鼠一陣閃爍卻始終不見“幫助和支援”程式介面的蹤影。
案例分析:憑感覺,筆者認為系統中的某個DLL檔案已經登出、丟失或損壞。但Windows中幾乎每個程式都要呼叫成十上百個DLL檔案,如果按常規方法一個個尋找分析,無異於大海撈針。考慮到三個程式同時“毀容”,應該是受同一個(或幾個)DLL檔案的影響。為此必須找到上述這三個程式共同使用的DLL檔案,然後,從中找出“幕後真兇”。
查詢與比對
第一步:先從“搜尋助理”入手,先弄清其“身世來歷”。在另外一臺裝有Windows XP的機子中開啟“搜尋助理”,同時按Ctrl+Alt+Del鍵調出“工作管理員”,在“應用程式”選項卡中,選中“搜尋助理”並右擊,選擇“轉到程式”,呵呵,原來它是Explorer.exe(資源管理器)的一部分。
第二步:用類似方法可得知“幫助和支援”屬於程式Helpctr.exe,但在“使用者賬戶”中只能用觀察比較的方法查出其歸屬程式mshta.exe。
小提示
可透過開啟、關閉“使用者賬戶” 的方法比較“工作管理員”中的變化來確定其所屬的程式;也可以在開啟“搜尋助理”時,在“命令提示符”中輸入“tasklist /fo table>C:acc1.txt”,在關閉該程式後,在“命令提示符”中輸入“tasklist /fo table>C:acc2.txt”,然後用fc命令進行比較“fc C:acc1.txt C:acc2.txt>C:acc.txt”,比較得出的多餘項即為該程式所屬的程式。
第三步:重啟電腦,下面要請軟體LISTDLLS出場了。到這裡下載該軟體,然後將listdlls.exe移動到C:Windows,按Ctrl+R開啟“執行”框,輸入“cmd”,在“命令提示符”中輸入:
listdlls -r explorer.exe>C:explorer1.txt。
接著開啟“搜尋助理”,再次在“命令提示符”中輸入:listdlls -r explorer.exe>C:explorer2.txt
最後用fc命令進行比較:
fc C:explorer1.txt C:explorer2.txt>C:explorer.txt。
這樣開啟C:explorer.txt檔案,對比後多出的檔案即是“搜尋助理”呼叫的DLL檔案。
小提示
ListDlls的用法為:listdlls [-r] [processname pid]或listdlls [-r] [-d dllname]
第四步:重啟電腦,用命令“listdlls -r helpctr.exe>C:helpctr.txt”得到“幫助和支援”所使用的DLL檔案。此處重啟是為了使已經沒有使用的DLL檔案從記憶體中解除安裝。
第五步:再次重啟,用命令“listdlls -r mshta.exe>C:mshta.txt”得到“使用者賬戶”使用的DLL檔案。
篩選最後“真兇”
分析explorer.txt中的DLL檔案,其中檔案目錄中含有“srchasst”的,均為“搜尋助理”單獨呼叫的檔案。剩餘的檔案分別為C:Windowssystem32目錄下的sxs.dll、vbscript.dll、jscript.dll檔案。用“搜尋”的方法可以發現檔案helpctr.txt和mshta.txt中均存在上述檔案,看來“罪魁禍首”非這三者莫屬。
回到原來的電腦,發現三個檔案均存在,也並未損壞。用命令regsvr32命令分別進行註冊。果然,在對其中的jscript.dll檔案的進行註冊後(使用命令 regsvr32 jscript.dll),“白板”程式終於恢復其美麗的“容顏”。
小編有話說:
系統很多軟體故障都是由DLL檔案引起的。以前我們往往更關注DLL檔案是否丟失,其實還有很多原因是沒有註冊成功造成的。看了本文介紹的方法,我們就可以很容易地篩選出造成故障的DLL檔案,最終解決故障。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-946120/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Windows XP系統和Windows Server 2003系統原始碼遭洩露WindowsServer原始碼
- windowsxp怎麼升級為windows10 xp系統升級為win10系統方法介紹WindowsWin10
- 僅作筆記用:Ventoy 不支援 Windows XP筆記Windows
- 以Windows作業系統為例,詳解版本控制系統—Git的操作Windows作業系統Git
- xp系統怎麼直接升級到win10系統版本 xp重灌為win10系統方法介紹Win10
- 普京還在使用Windows XP系統,並聲稱更安全?Windows
- Windows作業系統教程Windows作業系統
- Windows XP debug工具的使用Windows
- windows系統盤製作,系統裝機Windows
- windows10系統移動“我的文件”到非系統盤的方法Windows
- windows XP+Fedora 8+solaris 11三系統安裝方法教程Windows
- Windows作業系統的基本攻擊方式Windows作業系統
- [作業系統]阻塞io 非阻塞io Epoll作業系統
- 深度追蹤Mozi殭屍網路:360安全大腦精準溯源,揪出幕後黑手
- windows10系統盤製作Windows
- 獲取windows 作業系統下的硬體或作業系統資訊等Windows作業系統
- xp系統安裝不上pythonPython
- windowsxp怎麼升級到win10 xp系統升級為windows10方法介紹WindowsWin10
- windows10如何備份系統_windows10製作系統備份Windows
- NW.js相容Windowx XP系統的打包示例JS
- Windows 作業系統部署ActiveMQ環境Windows作業系統MQ
- Windows 11 作業系統安裝方法Windows作業系統
- 計算機重灌Windows作業系統計算機Windows作業系統
- 微軟為美國空軍部門打造最安全XP系統微軟
- 科幻:Windows核心攻擊是指標對Windows作業系統核心的惡意攻擊行為Windows指標作業系統
- 微軟CTF協議曝出漏洞 影響Windows XP釋出以來的所有系統微軟協議Windows
- 把Linux作為工作使用的系統Linux
- 非生產系統如何完成精益轉型?
- 有了Windows/MacOS這麼好用的作業系統,我們為什麼需要Linux?WindowsMac作業系統Linux
- [圖文直播]Windows作業系統部署JenkinsWindows作業系統Jenkins
- 國產作業系統如何追趕windows?作業系統Windows
- Powershell 命令列安裝 Windows 作業系統命令列Windows作業系統
- 為安全妥協,起底普京XP系統背後的資訊主權之爭
- Windows 系統,PHP實現PPT轉PDF,PDF轉圖片的操作WindowsPHP
- windows10系統轉區的方法【圖文教程】Windows
- Windows、Linux 和 Mac:作業系統之間的比較WindowsLinuxMac作業系統
- 初級安全入門——Windows作業系統的安全加固Windows作業系統
- Windows10系統出現duilib_d.dll丟失怎麼解決WindowsUI
- Windows作業系統安裝MySQL解壓版Windows作業系統MySql