命令列下的抗毒精英

第十號員工發表於2016-09-27

  一、TASKLIST——火眼金睛

  如今的病毒越來越狡猾,常常不見首也不見尾。但許多病毒往往在程式這一環節中露出狐狸尾巴,因而檢視程式是查殺病毒的一個重要的方法。命令列提供了程式檢視的命令工具——Tasklist(Windows XP或更新版本)。此命令與工作管理員一樣可以顯示活動程式的列表。但透過使用引數,可以看到工作管理員檢視不到的資訊,可以實現更強大的功能。使用引數“/M”,執行“Tasklist /M”將顯示每個任務載入的所有的DLL模組;使用引數“/SVC”,執行“Tasklist /SVC”命令則會顯示每個程式中活動服務的列表,從中可以看到程式svchost.exe載入的服務,透過服務就能分辨出究竟是不是惡意病毒程式。此外,還能利用Tasklist命令來檢視遠端系統的程式,如在命令提示符下輸入“Tasklist /s 208.202.12.206 /u friend /p 123456”(不包括引號)即可檢視到IP地址為208.202.12.206的遠端系統的程式。其中/s引數後的“208.202.12.206”指要檢視的遠端系統的IP地址,/u後的“friend”指Tasklist命令使用的使用者賬號,它必須是遠端系統上的一個合法賬號,/p後的“123456”指friend賬號的密碼。這樣,網管進行遠端查殺病毒也就方便多了。

  二、TASKKILL——程式殺手

  有了Tasklist這雙火眼金睛,許多病毒就現身了,但更重要的不是找出病毒,而是要清除它們,這時另一個命令——TASKKIL就派上用場了。例如想結束某個程式,只需從工作管理員中記下程式名,執行下列命令即可:“TASKKILL /F /IM 程式名”;也可以透過連線PID的方式,可先執行“Tasklist”命令,記下程式的PID號,在命令提符下輸入“taskkill /pid PID號”即可。說到這裡恐怕有人要說這還不如直接利用工作管理員方便。而實際上TASKKILL命令的獨門絕技就在於它能結束一些在工作管理員中不能直接中止的程式,這時就要加上引數“/F”,這樣就能強制關閉程式,例如執行“TASKKILL /F /pid 1606”命令就能強制結束PID為1656的程式。除此之外,TASKKILL命令還能結束程式樹、遠端程式、指定篩選進或篩選出查詢的的程式,具體操作可利用“taskkill/?”命令進行檢視。

  三、 Netstat——埠偵探

  如今的木馬越來越多,對使用者的威脅也越來越大,於是出現許多專門用於木馬查殺的工具。其實只要我們合理使用命令列下的Netstat命令就能查出大部分隱藏在電腦中的木馬。

  我們知道,大部分木馬感染系統後都留有服務埠,而這類服務埠通常都處於LISTENING狀態,因而從埠的使用情況可以查到木馬的蹤跡,而這利用Netstat命令就能輕鬆實現。在命令列中執行“Netstat –a”,這個命令將顯示一個所有的有效連線資訊列表,包括已建立的連線(ESTABLISHED),也包括監聽連線請求(LISTENING)的那些連線。其中Proto代表協議,Local Address代表本機地址,該地址冒號後的數字就是開放的埠號,Foreign Address代表遠端地址,如果和其它機器正在通訊,顯示的就是對方的地址,State代表狀態,顯示的LISTENING表示處於偵聽狀態,就是說該埠是開放的,由於木馬開啟後門成功後該後門處於LISTENING狀態,因此你需要注意的就是處於LISTENING狀態的埠,如果該埠號陌生,而且埠號數很大,你就應該有所警覺。

  還可以檢視使用埠所對應的程式來進一步確認,這就需要加上引數“-O”,執行“Netstat –ao”命令就會顯示一個所有的有效連線資訊列表,並給出埠對應的PID號。

  四、 FIND——捆綁剋星

  相信許多人都上過檔案捆綁木馬的當,表面看起來是一張漂亮MM的圖片,而暗地裡卻隱藏著木馬,這種透過檔案捆綁進行隱藏是木馬的慣用伎倆。而對可疑檔案進行必要的檢查及時處理往往就能防止產生更嚴重的後果,於是網上也出現了一些檢查捆綁檔案的工具。

  在Windows中,也可透過命令列巧妙地進行簡單的檢查。這裡要用到字串搜尋命令——FIND,它的主要功能是在檔案中搜尋字串,可以利用它進行捆綁檔案的檢查。方法為:在命令列下執行“FIND /C /I "This program" 待查檔案的路徑 ”(不包括外面的引號),如果是EXE檔案,正常情況下返回值應該為“1”,如果出現大於1的情況,你就必須小心了;如果是圖片之類的不可執行檔案,正常情況下返回值應該為“0”,如果出現大於0的情況,就應該引起注意。

  五、 NTSD——強力終結者

  如今的病毒越來越狡猾,經常出現即使你能找到它的程式,卻不能結束的情況。用工作管理員和前面提到的TASKKILL命令都沒有辦法中止。當然可以使用程式管理工具,如功能強大Process Explorer等。而實際上使用Windows自帶的一個秘密工具就能強制結大部分程式,包括一些十分頑固的程式,這就是NTSD命令。

  在命令列中執行以下命令:

  ntsd -c q -p PID

  最後那個PID指要終止的程式的ID。如果不知道程式的ID,可透過Tasklist命令進行檢視。利用NTSD命令,除了System、SMSS.EXE和CSRSS.EXE等極少核心程式不能殺外,其它程式都可以強行結束。

  六、 FTYPE——檔案關聯修復專家

  和檔案捆綁一樣,篡改檔案關聯也是病毒或木馬的慣用伎倆,通常的恢復方法主要是透過修改登錄檔,但登錄檔操作通常比較麻煩而且容易出錯,另一個更方便的方法是使用命令列工具——FTYPE,利用它可以非常輕鬆地恢復檔案關聯。比如exefile的檔案關聯最容易被修改,它的正常的檔案關聯為:"%1" %* 。恢復的時候,只需在命令列中執行下列命令:“ftype exefile="%1" %* ”就可以了。如果要修復txtfile的檔案關聯,只需輸入:“ftype txtfile= %SystemRoot%system32NOTEPAD.EXE %1 ”即可。

  七、FC——登錄檔監控器

  許多病毒木馬都把登錄檔當作攻擊物件,如上面提到的檔案關聯篡改,而現在所謂的流氓軟體之流的不安分的軟體在登錄檔中新增本不應該新增的項值,因而登錄檔監控就變成十分必要了。於是出現了許多登錄檔監控類軟體,其實我們完全可以僅用Windows系統提供的工具完成該功能。

  下面以監控安裝軟體過程對登錄檔做的修改為例介紹如何實現“監控”:

  首先,可以在安裝軟體前備份一次登錄檔(儲存為REG檔案,如1.reg),安裝後再匯出登錄檔檔案(2.reg)然後再在Windows XP的命令提示行下執行下列命令:

  D:>fc /u 1.reg 2.reg>changes.txt

  隨後在D盤根目錄下開啟changes.txt檔案,即可清楚地檢視該軟體對登錄檔新增了哪些子項,做了什麼修改。上例中的安裝軟體是一個特定的時刻,你可能用此方法分析任一時刻登錄檔可能發生的變化。

相關文章