前段時間參加了培訓,上課的時候用的是“極域電子教室 V6 2007 豪華版”;
這個系統(tǒng)分教師端和學生端的,我們是學生,裝的是學生端;
出于好奇,我開了兩個虛擬機,一個安裝教師端,一個安裝學生端來做實驗;
教師端果然強大呀,可用它來入侵其它同學的電腦了,因此開發(fā)了利用程序。
教師端功能真多,如圖:
還驚喜地發(fā)現(xiàn)有個遠程執(zhí)行命令的功能:
太好了,有了這個功能就可以搞很多事情了,下面來測試一下這個功能,
我向運行學生端的另一個虛擬機發(fā)送一個打開計算器的命令“start calc.exe”,如下圖:
在目標電腦那果然彈出了一個計算器,順便看看我抓包的結果:
這個就是剛才執(zhí)行“start calc.exe”命令發(fā)送的數(shù)據(jù)包,
(還有其它的功能,如發(fā)送消息、重啟、開機、黑屏等,也是這樣抓包得到)
有了這個包之后,我們就可以寫一個程序來自己構造數(shù)據(jù)包,在指定的電腦執(zhí)行CMD命令了;
下面是構造數(shù)據(jù)包示例:
構造這些數(shù)據(jù)包,需要用到源IP和MAC,目的IP和MAC,還有通訊端口;
源IP和MAC是用運行了教師端的,目的IP和MAC是用運行了學生端的;
如果在教室里用,源IP和MAC就是用老師電腦的,
目的IP和MAC就用同學電腦的,你想發(fā)給誰就用誰的;
還有一個端口號如何獲取呢?
我想到的是從學生端的內(nèi)存里面讀取,下面是讀取端口簡單介紹;
運行Cheat Engine,打開學生端進程:
剛才抓包時就知道端口是12680,這個端口教師端每次運行都不一樣,
所以我們要在內(nèi)存中找到保存這個端口的地址,以后根據(jù)這地址從內(nèi)存中讀取端口;
下面是搜索2Bytes得到很多結果,經(jīng)多次篩選得知“0012E66C”是正確的:
下面是讀取端口號的函數(shù):
數(shù)據(jù)包構造好了,如何發(fā)送出去呢?
以前寫過抓包發(fā)包的程序,用WinPcap庫,現(xiàn)在也用這個吧;
我寫了兩個函數(shù)SendPack(發(fā)送數(shù)據(jù)包的)和ListDevices(取網(wǎng)絡適配器的),
由于是用VC++寫的,所以我把它生成一個DLL,供其它程序調(diào)用了:
經(jīng)過一番工夫終于搞了一個小測試程序:
第二天到教室測試一下,有效果!
但操作太不方便了,還要手工填寫信息,
又由于現(xiàn)在在培訓.Net,所以我用C#寫了個操作界面:
只要選中,鼠標點右鍵就行了;
現(xiàn)在沒在教室,如果在教室的話,會掃所有同學電腦,
“備注”那欄還會顯示姓名,非常清楚明了,因為代碼里我收集了同學的MAC:
還加了一個“文件上傳”功能:
做這些只是為了上傳我的“遠控木馬”,這樣才方便控制同學的電腦,
我傳了一些以前寫的或改的木馬過去,要么就win7、win8系統(tǒng)用不了,要么就被殺毒軟件殺了,
好幾年沒用過了,做的免殺已經(jīng)沒用了;無奈,我用C#重新寫一個:
功能還不太完善,只是玩一玩而已,不太糾結了:
文件管理截圖:
屏幕監(jiān)控截圖:
----------------------------------------------------------------------
文章出處:http://blog.csdn.net/envon123/article/details/9245831
相關軟件下載地址:http://download.csdn.net/detail/envon123/5673679