您好,登錄后才能下訂單哦!
這篇文章主要介紹WMI_Vbs腳本編程的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
WMI就是Microsoft Windows Management Instrumentation 。中文名字叫Windows管理規范。從Windows 2000開始,WMI(Windows 管理規范)就內置于操作系統中,并且成為了Windows系統管理的重要組成部分。所以大家很容易就能見到它的,因為我們至少也應該是個Windows 2000的使用者了。
WMI能做什么?
WMI不僅可以獲取想要的計算機數據,而且還可以用于遠程控制。遠程控制計算機可是大家都喜歡的東西。很多遠程監視控制類軟件通常的做法是:在遠程計算機上運行服務端后臺程序,在本地計算機上運行一個客戶器端控制程序,通過這二個程序的勾結來實現對計算機的遠程控制。這種作法的缺點是十分明顯的,當服務端程序關了,這種遠程監控就無法實現了,因為沒有內線了。而WMI實現的遠程監視和控制完全不需要另外裝什么服務端的東西,系統默認就將WMI服務給開了。具體說來,WMI的本領如下:
1.獲取本地和遠程計算機的硬件軟件信息。
2.監視本地和遠程計算機的軟件和服務等運行狀況。
3.控制本地和遠程計算機的軟件和服務運行。
4.高級應用。
如何訪問WMI?
當我們知道WMI的某些本領后,我們已經很想知道如何認識他并利用他了。利用WMI有許多途徑,簡單說來有三種了:
1.通過微軟給我們提供的各種工具來實現普通查詢和操作。主要包括命令提示符下面的WMIC,還有就是微軟給我們提供的WMI TOOL,大家可以到微軟的網站上免費下載,當然我也可以給大家免費提供。
2.通過自己編寫腳本來實現更靈活操作。要想真正靈活實用,對WSH腳本的熟悉是必須的,當然如果你不熟悉也沒有關系,稍后我會給大家詳細解釋的。
3. 通過編寫我們自己的程序來訪問并操作它。什么語言都行。如果用.NET類程序要簡單些了,如果用VC等要復雜些了,起碼我是這么認為的。
4.還有個訪問它的方法,就是到它的一個巢穴。在C:\WINDOWS\system32\wbem目錄中的東西都和它有密切聯系,有日志和各種工具,在里面你可以找到很多答案的。不過這些東西一般都不適合我們新手玩了,感覺有點嚇人。
我們今天的任務?
今天我們的任務有五個:
任務一:利用WMIC列出遠程計算機上的所有進程。
任務二:利用WMIC關閉本地進程。
任務三:通過WMIC把遠程主機的進程信息保存在一個網頁中
任務四:利用腳本實時監視對方進程
任務五:利用腳本給對方開放共享
查看和監視進程,還要把進程給殺掉,最后還要給對方開個共享,我們這位朋友快把壞事做盡了。明白了我們的任務,我們就可以上路了。這次我們將主要借助WMIC和腳本來實現我們的任務,所以我們將主要分為兩大部分來講解。在五個任務的實戰中我們將更加深入地理解它,沒有基礎沒有關系,我將盡力去解釋所有的所謂的基礎,讓大家能很輕松地和這位朋友交流。
第一部分:利用WMIC來認識WMI
WMIC是Windows Management Instrumentation Commandline的簡稱,WMIC擴展WMI,提供了從命令行接口和批命令腳本執行系統管理的支持。為WMI名稱空間提供了一個強大的、友好的命令行接口。有了WMIC,WMI就顯的平易近人了。
執行“WMIC”命令將啟動WMIC命令行環境。第一次執行WMIC命令時,Windows首先要安裝WMIC,然后顯示出WMIC的命令行提示符。在WMIC命令行提示符上,命令將以交互的方式執行。如果你不知道該如何和它交互,請敲個“/?”,細細看完全部的說明,你就知道了。WMIC也可以按照非交互的模式運行。如果要執行某個單步的任務,或者運行批命令中的一系列WMIC命令,非交互模式就很有用。要使用非交互模式,只要在同一個命令行上啟動WMIC并輸入要執行的命令就可以了。
1.任務一:利用WMIC列出遠程計算機上的所有進程
這是一個實現起來很簡單的任務,和你用一個DOS命令一樣簡單,因為我們要循序漸進嘛,所以安排了這么一個熱身任務。在命令提示符下敲入下面的命令,我們將看到。
WMIC /node:192.168.1.2 /user:net process
解說:
1)上面命令中的NODE和USER是全局開關。如果你不愿意另外輸一次密碼,你也可以用PASSWORD開關,后面寫上密碼就可以了(WMIC /node:192.168.1.2 /user:net /password:password process)。千萬要注意,這里的用戶名和密碼都必須是管理員級別的,其它的無效。WMIC提供了大量的全局開關、別名、動詞、命令和豐富的命令行幫助增強用戶接口。全局開關是用來配置整個WMIC會話的選項。
2)Process是個別名,執行了一個Win32_process類的WQL查詢,至于說是WMI的類是什么東西,感興趣的就自己找資料多多了解,如果你很懶的話,就等我有時間給你開課講解。別名是用戶和WMI名稱空間一個簡化語法的中間層。當你指定一個別名時,動詞(Verb)表示要執行的動作。
3)如果你愿意,你可以在該后面加上個動詞等,比如 LIST FULL等(如:WMIC /node:192.168.1.2 /user:net /password:password process),這樣你就看得更清楚了。
小提示:安裝了WMIC的機器可以連接到任何一臺安裝了WMI的機器,被連接的機器不需要安裝WMIC。
2.任務二:利用WMIC關閉本地進程
執行下面的命令將關閉正在運行的QQ。我比較膽小,所以不敢關別人的QQ,只能拿我的QQ試驗了,如果你的智商還夠用的話,膽子比較大的話,你很快就會去關別人的了。
WMIC
process where name=”qq.exe” call terminate
解說:
1)這次我們是用交互式的方法來執行任務,具體界面我就不多說了,圖上畫的比我說的好多了。
2)Call也是個動詞,這個動詞可是厲害了,控制類的沒有不用它的,它就是可以調用各種類的各種方法的大將。這里我們調用了terminate方法。從字面上你就可以看出是惡狠狠的。
3)Where能夠讓你查詢和篩選。在超級多的實例中找到你想要的。實例就是指每個類的具體實現了。前面的例子中看到的各個進程都分別算是WIN32_PROCESS中的一個實例。
3.任務三:通過WMIC把遠程主機的進程信息保存在一個網頁中
這個任務和任務一中的大致相同,是任務一的加強。在任務一中信息以文本的形式顯示出來了。其實除了文本形式的輸出之外,WMIC還能夠以其他形式返回命令執行結果,例如XML、HTML或者CSV(逗號分隔的文本文件),如圖3所示。我們可以敲入下面的命令:
wmic /output:C:\1.html /node:192.168.1.2 /user:net process list full /format:hform.xsl
輸入密碼 :******
解釋:
1)全局開關OUTPUT指明將這些信息保存在什么地方。
2)全局開關FORMAT指明了用什么樣的格式,至于說有那些格式可以用,你可以參看C:\WINDOWS\system32\wbem目錄中的*.xsl文件,你甚至不用管它們從哪里來的,用就是了。挨著看看,一定可以找到你喜歡的。
第二部分:利用腳本來認識WMI
命令提示符的工具確實好用,但是卻顯示不出我們是高手,高手都是能利用程序來實現目的的。下面我們就開始用腳本來實現我們的任務,功能將更加強大,操作將更加靈活。
無論腳本還是真正意義上的程序,要檢索 WMI 托管資源信息進而查詢并利用WMI,都需要遵循以下三個步驟的。
1.連接到 WMI 服務。建立一個到目標計算機上的 Windows 管理服務的連接。
2.檢索 WMI 托管資源的實例。主要取決于要執行的任務。
3.顯示WMI 某實例屬性和調用其方法。
以上是“WMI_Vbs腳本編程的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。