WMI全名為 Windows Management Instrumentation 詳細解譯請先查查。
簡單來說 就是在Windows系統 用於管理層面的管理工具 。
使用的 RPC Remote Procedure Call 服務來執行遠端程序呼叫。
只要有對方管理員權限的帳號密碼,就可以透過 Port 135進行各種資料的收集,和檔案或進程的控制。
舉例來說:
小明新灌了Windows XP 取名 "小明的電腦" 並設定 管理員帳號 Administrator 密碼 1111 且連上了網路
小新寫了一段小程式來查看小明在做什麼? (ip,user,pd) 也就是 "小明的電腦","Administrator","1111"
private void get_process(string ip, string user, string pd) {
ConnectionOptions co = new ConnectionOptions();
co.Username = user; co.Password = pd; co.Impersonation = ImpersonationLevel.Impersonate;
co.EnablePrivileges = true;
ManagementScope mc = new ManagementScope(@"\\" + ip + @"\root\cimv2", co);
try {
mc.Connect();
try {
ManagementObjectSearcher mos = new ManagementObjectSearcher(mc, new ObjectQuery("Select * from Win32_Process"), null);
ManagementObjectCollection moc = mos.Get();
foreach (ManagementObject mo in moc) {
MessageBox.Show(mo["Name"].ToString());
}
} catch { MessageBox.Show("抓資料失敗!"); }
} catch { MessageBox.Show("連結失敗"); }
}
最後發現有一個OUTLOOK.EXE ,原來小明正開著信箱收信...
以上故事純屬虛構,如有雷同,還請小明包含。
接下來各篇會介紹其它的功能:
增加一個進程、修改註冊表(讓空密碼也能登入)、刪除對方進程、重開機(這線上很多範例了)、
重新命名對方電腦(重開機生效、不用退網域喔!)...等等,敬請期待。
留言列表