iThome online | iThome Blog | iThome周刊訂閱

載入中...

fortune

IT邦初學者
10級

Windows Sysinternals實戰經驗大募集,你有什麼精彩的應用經驗嗎?

Sysinternals在Windows系統管理工具中,佔有重要地位。iT邦小財神在這裡要募集各位邦友們的實戰經驗

Sysinternals擁有許多好用的工具,例如抓出電腦開機愈來愈慢元兇,或是找到潛伏在系統內的外來有害程式。將不同的工具結合使用,更能發揮一加一大於二的力量。

你曾經在工作中應用Sysinternals解決過哪些問題?有哪些狀況因為應用了這個工具集解決起來更為得心應手?請邦友們將實際應用的工具、情境與解決的問題分享出來,讓其他人可以因為你的解決技巧而獲益。

本題邀請的實戰專家是李明儒先生(微軟MVP),由他選出回答得最有參考價值、最精彩的「實戰王」,iT邦小財神將贈送1000元pchome線上購物金給這位獲選的最佳實戰經驗回答者。

另外,實戰專家也將挑選兩位認真回答的邦友,分別致贈IT書籍一本。

本題贈送的認真獎書籍是《Windows Workflow Foundation 新一代工作流程開發實務》(本次活動認真獎書籍由微軟贊助)。



本題最後回答時間訂於6/27(五),超過該日的回答均不列入評選名單。實戰專家將於6/29日選出「實戰王」,並公佈結果。

各位邦友們,快來亮出你們的實戰經驗吧~

收藏到:發佈到twitter       
解決時間:2008-06-29 10:12:07
發問時間:2008-06-16 12:06:15

最佳解答(發問者自選)
34

回答:doggy ( IT邦初學者9級 )

時間:2008-06-25 16:11:15

我就說一些我經常在用的一些功能與查看有用資訊的技巧:
1. 程序之間的階層關係 & 判斷執行檔的類型



如上圖,我用紅色框線框起來的地方就是指我的 notepad++.exe 程式是從 WinKey.exe 執行起來的,但你可能會想,如果我將 WinKey.exe 砍掉,會不會也將 notepad++.exe 也連帶砍掉呢?其實是不會的,而是 notepad++.exe 會自動拉高到自己為主程序。

另外,你也可以很容易的使用顏色來區別執行檔的類型,其中:

‧黃色:代表此程式是一個 .NET 的應用程式。例如說我用 Process Explorer 就發現原來 Yahoo!奇摩輸入法 就有支程式是用 .NET 寫成的。
‧紫色:代表此程式是一個 Pack (包裝) 過的程式,也就是說這個程式本身又被包了一層程式,意思也就是說該程式是被「修改過」的程式,並非為原本的程式喔!通常這種程式有兩種可能:
 >中毒的程式:病毒讓你的程式還是可以正常運作,讓你覺得程式沒問題,但是私底下可能「多做了一些事」讓你沒感覺。
 >壓縮過程式:知名的 UPX (the Ultimate Packer for eXecutables) 工具程式就是專門用來將你製作出來的執行檔壓縮過,讓你的執行檔變小又能正常執行的工具。
‧粉紅色:此程式為一個 Windows 服務。

至於其他的顏色所代表的意義,你可以從功能選單的 Options -> Configure Highlighting 查得完整的顏色定義,當然你也可以修改掉,如下圖:



2. 查看該程序(Process)到底開啟了哪些檔案或使用到哪些 DLL



如上圖,你可以點選功能選單的 View -> Show Lower Pane 開啟 Lower Pane(或按下 Ctrl + L 快速鍵)查看程序載入了哪些 DLLs 或開啟了哪些 Handles (目錄, 檔案, 事件, 機碼, 執行緒, ..., etc. )



如上圖範例,我按下了 Ctrl + H 開啟 Handles View,你可以看到圖中的 KeyKeyServer.exe 開啟了一些檔案,以上圖為例我選取了 D:\Program Files\Yahoo!\KeyKey\zh-TW\Preference.resources.dll 程式,這時如果你想要刪除這個檔就會被通知「刪除檔案或資料夾發生錯誤」的錯誤訊息(如下圖),如果真的想強制刪除的話,可以在該 File Handle 上按下右鍵選擇 Close Handle 強制關閉這個 Handle,你就可以正常刪除檔案了,不過你原有的程式就很有可能會出錯或中斷執行,我是不太建議這麼做。



3. 查看完整的系統資訊



當你按下功能選單的 View -> System Information 或按下 Ctrl + I 快速鍵就可以看到這個完整的系統資訊,有時後我們電腦變慢可能跟 CPU 或 Memory 無關,而是 Disk I/O 過高導致拖慢程式執行的速度,透過這個畫面就可以一目了然你整台主機的運作狀況。

參考資料:個人經驗分享

2008-06-25 16:17:21補充
由於回答文字有 2000 個字的長度限制,我原本寫一堆的都無法發表,所以我改發表到我的 Blog 了。



[url=http://blog.miniasp.com/post/2008/06/Useful-tools-Process-Explorer.aspx]介紹好用工具:Process Explorer[/url]
2008-06-25 16:18:38補充
原來補充回答不能放網址啊~ 無言......
2008-06-26 15:56:12補充
我重貼一遍網址好了,因為好像有人會複製到錯誤的網址。



介紹好用工具:Process Explorer

http://blog.miniasp.com/post/2008/06/Useful-tools-Process-Explorer.aspx

[-隱藏]

回應

davistai 說:

Doggy大寫得很充實,大家趕快看看喔^^

2008-06-26 09:57:46

jease 說:

寫的非常詳細~讚喔!

2008-06-26 10:03:57

john651216 說:

很清楚

2008-06-27 11:19:17

yesyesok 說:

讚阿!!@@ 大大的敘述太詳細了
這樣讓我學起來更快= =+

2008-06-27 11:53:17

Windows Sysinternals實戰經驗大募集,你有什麼精彩的應用經驗嗎?
iT邦守護神
回答:davistai( IT邦好手1級 )
時間:2008-06-16 17:02:59
43
第一次想到使用Sysinternals tool的確是因為實際會碰到的狀況就是發現機器很忙,CPU使用率滿載,從工作管理員只能看到程式名稱,至於程式的來源與其相關的dll或handle就無法得知,因此才去下載使用. 其中用了 filemon.exe, procmon.exe 之後覺得並不適用我自己(學能不足啦), 最後在使用 procexp.exe 覺得比較合用,因為它可以從[description]跟[company]看出你覺得可疑的程式的基本資料; 再者從它的畫面也比較清楚知道現在系統中所有的prcess的運作情形與佔用資源狀況.如[View] -> [System information] 會顯示較task manager較多的資訊來, 而它的每一種顏色都有其意義, 從[Options]->[configure Highlighting]就知道,讓你一目瞭然. 你也可以按它的icon 快速鍵來達成.

對很多人來說,常發現一堆svchost.exe不知道在跑什麼,從Process tree就比較容易得知啦. 當然最常用的就是砍異常的process,按右鍵[Kill]或直接按Del鍵就可以了...

以上是野人獻曝,冀望更多高手提供更好的實戰經驗分享喔^^

參考資料:自己

不好意思,剛好手邊沒有現有例子(系統跑很慢或異常的情形),就沒有以實例說明,只是大概把之前做過的使用經驗描述而已,請見諒~~2008-06-16 17:43:36 補充
又發現一個不錯的工具,Autoruns.exe!!
GUI做得相當棒,對於監控DLLs,系統服務或應用程式提供更detail的資訊.
預設是將[Everything]顯示,也可以選其他的tag來檢視想看的資訊.
而且如果想要disable該object,只要將勾選的checkbox取消就好了.
推薦給大家試用看看...2008-06-19 11:13:05 補充
其實這裡也有個連結對工具做介紹.
http://www.microsoft.com/taiwan/technet/sysinternals/securityutilities.mspx2008-06-20 11:23:30 補充
回答:joychen( IT邦初學者10級 )
時間:2008-06-16 18:26:42
34
Windows Sysinternals?其實簡單說就是一堆小工具的集合!這些小工具除了大家最有可能使用到的Process Explorer之外,其實還有不少工具都是很好用的!

像我曾經使用過New Sid在virtual machine中,因為在虛擬的Lab環境中大家不可能一台一台裝起來,更快的方式是直接使用full clone的方式來建立,這個時候使用new sid來重新建立新的機器的sid就比使用sysprep快多了!當然在如Ghost之類的使用中,這個工具也是很常使用!

另外BgInfo在我建立的伺服器中都會使用,哈!說的清單一點就是要看起來專業一點!給老闆還是自己看的時候,馬上對這台機器的配備、名稱…等一目瞭然不是很好嗎?這些資訊直接放在桌布上是很實用的!

TcpView更常使用在抓Client端蠕蟲的時候,當掃毒軟體找不到、但又有異常流量的時候,netstat又沒辦法看到較完整的資訊,TcpView就有用了!當然配合hjktools會更棒!

我之前也會使用PsTools來看我們Client端電腦正在跑的程序,當然不是偷看囉!是在Troubleshooting的時候,如請Client端結束Outlook,但又不確定是不是真的有正確結束時,就可以利用這支工具來Remote View一下!然後在用PsKill在結束Client端的Process

還有Whois,有用過Linux上的Whois的人就一定會知道這個工具是做什麼的!

另外在某些時候我會Adsiedit和AD Explorer一起配合使用,當然會使用的時候都不是什麼好事就是了!畢竟AD裡面的Object真的不是很好找就是了!

這些工具我建議是通通收集在一片USB裡面,或是放在一個隱藏的分享區內,畢竟這些都是免安裝的工具!這樣在要用的時候就會很方便了!

以上是我的心得分享,也希望大家也一起交流心得喔!^_^

參考資料:http://technet.microsoft.com/en-us/sysinternals/default.aspx?PHPSESSID=9692e6

回答:gfang( IT邦初學者9級 )
時間:2008-06-17 08:20:44
28
AccessEnum 是用來檢視系統的Folder和Registry中的用戶使用權限。當點選"Directory..."時,會跳出Folder的目錄,只要選擇想檢視的Folder,再按"Scan",就會列出這folder(包括subfolder)的使用者權限.相同的,如點選"Registry...",就會列出Registry目錄,點選任一目錄再按下"Scan"就會列出該目錄的用戶權限。
AccessEnum 可以把權限列出的結果儲存為txt檔。我常用它來看用戶權限複雜的檔案伺服器。
回答:rio( IT邦初學者8級 )
時間:2008-06-17 13:09:05
21
電腦中毒時候, 用procexp查看與刪除可疑的Process,
然後用autoruns查看各個系統啟動時會執行的程式或掛載的驅動程式
一一刪除後通常系統就正常了
順便chkdsk, drfrag後, 再跑個pagedfrg
系統問題大多可以解決
回答:macosorawate( IT邦初學者7級 )
時間:2008-06-17 13:10:10
13
Windows優化大師.解決了部份Windows作業系統實戰效能的問題.網路應用的問題.不知道該如何.用Sysinternals嗎?WATER.0911115854.( macosorawater@pchome.com.tw ). http://www.macosorawater.pchome.com.tw .小禮.Thanks. 11111111 .

參考資料:Windows VISTA 家庭進階版.

回答:john651216( IT邦初學者1級 )
時間:2008-06-19 10:25:34
19
Sysinternals是一套一系列的工具,就像醫生在看病人時對一些症狀不明的情形時,就要利用一些設備或工具來釐清病情,而Sysinternals就是提供IT這樣的功能,來清楚分辨出電腦發生這樣的狀況,重點是IT人員如何從Sysinternals的工具中挑選出正確的工具並對這些工具所產出的資訊加以分析出有問題的地方.
我所使用過的工具有ProcessMonitor / ProcessExplorer / Autoruns / TcpView..以圖形介面為主的工具,第一次使用這些工具是在偶然的機會,因為公司有一部AP
Server 提供給高雄分公司使用遠端桌面來使用ERP系統,有一天感覺這一部Server怪怪的,
掃毒軟體也沒有任何訊息,因此就上微軟官網看看有什麼說明,後來找到這一系列的工具當然立即下載回來,使用ProcessMonitor後立即發現有奇怪的東西在運作,當下立即處理也解決這樣的狀態,重點是要挑對工具以及後續發現問題處理的過程可能不是單一的工具就能夠完成,是主機設定不當又或者是網路一些設備的問題,這是IT人員提供經驗的地方,
Sysinternals是一個工具提供給IT人員發現問題,提早預防一些狀況.
iT邦守護神
回答:fishk( IT邦好手1級 )
時間:2008-06-21 18:37:45
***回答已移除***
iT邦守護神
回答:fishk( IT邦好手1級 )
時間:2008-06-21 18:39:49
23
早在Sysinternals還未併入Microsoft之前就已接觸相關工具,其中許多工具都因不同的問題場合有了不同的實戰經驗,提出幾個比較特別的實戰經驗與大家分享

1.Filemon
這應該是3,4年前的事情了,當時是為了幫忙解決一個很奇怪的電腦問題:某一電腦定時產生一個木馬檔案想要植入電腦中,但被防毒軟體偵測到並被掃除,可是防毒軟體卻無法偵測到那一支木馬程式是原兇;這時候Filemon就可以派上用場了,因為Filemon可以偵測到windows中那些檔案是由那支程式所產生,於是看準下一個木馬檔案產生的時間點,使用Filemon監看,於是找出原凶,解決掉此一木馬程式事件。(當時就體認到只有防毒程式是不足的)

2.Process Explorer
這也是幾年前的一個木馬事件:當時發現某電腦因被植入木馬(防毒程式偵測不到),它會定時與外部的主控台連繫傳送訊息,於是先使用Process Explorer看看是否有異常程式,但是一開始是無功而返,因為枱面上的程式都是'正常'的,於是為了找出是那支'正常'的程式會對外發送訊息,便先安裝某一免費的個人防火牆,發現竟然是svchost.exe這支windows主要程式會對外傳送訊息,原因為它被DLL injection攻擊了;於是Process Explorer這時又派上用場了,因為它可以觀看每支程式Link的DLL程式,於是便使用這個方法找出異常的DLL,解決了這次的問題。

3.Autoruns
早期的防毒程式並沒有偵測spyware的功能,獨立提供spyware偵測的軟體也不多;這時候就可以使用autoruns.exe這支程式,來檢查 windows啟動時會執行那些程式,以及ie啟動時會呼叫那些BHOs(Browser Helper Objects)及相關的DLLs;使用了這支程式後,你才會知道原來windows啟動時可以自動執行程式的位置竟然有這麼多,相對的,這些位置也是有可能被木馬程式利用的。此外,它也提供了command mode的程式autorunsc.exe,如果你想要觀察你的電腦在安裝某些程式後的windows啟動區的變化,可以使用下列指令來執行程式安裝前後的啟動狀態備份與比對。
autorunsc -a -d -e -s -w -c >> %COMPUTERNAME%autorunYYMMDD.csv

此外,TCPView、PsTools...等也是常用的好程式。
以上心得與大家分享。

參考資料:自己的經驗

回答:ck1711( IT邦初學者9級 )
時間:2008-06-23 11:48:11
15
小弟曾經有一次發現c槽5G的空間在不在3分鍾就用完了,後來是用Filemon查出是那一支程式在做怪後再用Process Explorer將該Process Kill問題就解決了。另外如果有那些Process有問題時,也會用Process Explorer來查看。
因此個人覺得這兩支程式真的是很好用。推薦給各位囉~~
iT邦守護神
回答:jease( IT邦初學者1級 )
時間:2008-06-26 10:02:06
***回答已移除***

回應

請填寫您的回應,長度限為1,000個字,回應不計點數,也不限使用次數



 

檢舉違規

違規事項:

*補充檢舉理由(可省略),字數不可超過100字

推薦

推薦理由:


*給回答者的鼓勵(可不填),字數不可超過100字

熱門標籤