閆清智
【摘要】內(nèi)網(wǎng)安全管理系統(tǒng)是為了方便、有效地管理和規(guī)范分布式局域網(wǎng)內(nèi)各個終端計算機的行為而設(shè)計的一種集監(jiān)控和審計與一體的管理系統(tǒng),旨在從規(guī)劃內(nèi)網(wǎng)資源、規(guī)范內(nèi)網(wǎng)行為、防止內(nèi)網(wǎng)信息泄露等多方面入手,有效地執(zhí)行組織的安全策略,維護(hù)內(nèi)網(wǎng)的機密性、可信性、可靠性和可控性,實時掌握內(nèi)網(wǎng)狀況,快速簡單地定位與解決問題。
【關(guān)鍵詞】遠(yuǎn)程控制;socket客戶/服務(wù)器模式;多線程jRegistry
1.引言
內(nèi)網(wǎng)安全理論的提出是相對于傳統(tǒng)的網(wǎng)絡(luò)安全而言的。在傳統(tǒng)的網(wǎng)絡(luò)安全威脅模型中,假設(shè)內(nèi)網(wǎng)的所有人員和設(shè)備都是安全和可信的,而外部網(wǎng)絡(luò)則是不安全的?;谶@種假設(shè),產(chǎn)生了防病毒軟件、防火墻、IDS等外網(wǎng)安全解決方案。
這種解決策略是針對外部入侵的防范,但對于來自網(wǎng)絡(luò)內(nèi)部的安全防護(hù)則顯得無可奈何。隨著各單位信息化程度的提高以及用戶計算機使用水平的提高,安全事件的發(fā)生更多是從內(nèi)網(wǎng)開始,由此引發(fā)了對內(nèi)網(wǎng)安全的關(guān)注。
2.總體功能設(shè)計思想
按照以上的需求分析,我們設(shè)計了基于TCP/IP協(xié)議的內(nèi)網(wǎng)安全管理系統(tǒng),名字叫做Intranet security management system,簡稱ISMS系統(tǒng)。系統(tǒng)主要應(yīng)用于內(nèi)部局域網(wǎng),體系結(jié)構(gòu)采用得到廣泛應(yīng)用的C/S結(jié)構(gòu)。
本系統(tǒng)采用C/S模式實現(xiàn),有兩大模塊:
(1)客戶端模塊:實現(xiàn)管理功能,把管理請求發(fā)送給服務(wù)器端,并接收服務(wù)器端發(fā)回的響應(yīng)信息,如返回屏幕截圖等信息。
(2)服務(wù)器端模塊:實現(xiàn)代理功能,完成客戶端發(fā)送的請求,并且把相應(yīng)的信息傳送給客戶端,使客戶端準(zhǔn)確掌握受控端的情況。如客戶端發(fā)送關(guān)機請求,服務(wù)器端就要調(diào)用關(guān)機程序,將被控機關(guān)掉;客戶端發(fā)送禁用USB的請求,服務(wù)器端就要響應(yīng)請求,將USB存儲功能禁用掉。
3.局域網(wǎng)管理與監(jiān)控系統(tǒng)各個功能模塊的實現(xiàn)
通過以上的分析設(shè)計,并結(jié)合內(nèi)網(wǎng)管理的實際情況,本系統(tǒng)需要實現(xiàn)的功能主要有:
(1)局域網(wǎng)內(nèi)IP地址掃描;
(2)端口設(shè)備控制;
(3)應(yīng)用程序控制;
(4)共享權(quán)限管理;
(5)遠(yuǎn)程控制;
(6)終端其他安全控制;
(7)策略配置管理。
3.1 局域網(wǎng)IP地址掃描模塊
利用JAVA編寫一個名為SearchIP()的函數(shù),實現(xiàn)這項功能,返回一個IP地址列表,為以后的操作提供目標(biāo)和依據(jù)。
程序的總體設(shè)計:
(1)自動搜索客戶端IP地址,作為搜索的參考。
(2)通過IP地址框來接收IP輸入,確定搜索范圍。
(3)通過按鈕來控制搜索的開始。
(4)由于要搜索的IP地址可能比較多,具體的搜索過程采用了JAVA多線程的設(shè)計思想,加速程序的執(zhí)行。特別注意了防止線程數(shù)過多摧毀電腦,所以設(shè)定了最大線程數(shù)為30。在具體判斷某一IP地址是否在局域網(wǎng)中時,采用的是ping的方法。最后,根據(jù)執(zhí)行ping命令后的結(jié)果,判斷某一IP地址是否能夠Ping通。
(5)對能夠ping通的IP地址,將它添加到列表中。
3.2 端口設(shè)備控制模塊
具體的執(zhí)行端口設(shè)備開啟、關(guān)閉命令時,用到了jRegistry編程的思想。
(1)禁用、啟用USB存儲設(shè)備
在HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/USBSTOR注冊表表項下,有一個start子鍵,start子鍵的值為“3”則啟用USB存儲設(shè)備,設(shè)為“4”則禁用,用jRegistry編程設(shè)定start子鍵的值,來實現(xiàn)啟用、禁用USB存儲設(shè)備。
(2)禁用、啟用wifi網(wǎng)卡
禁用網(wǎng)卡執(zhí)行:netsh interface set interface name=\”無線網(wǎng)絡(luò)連接\”admin= disabled
啟用網(wǎng)卡執(zhí)行:netsh interface set interface name=\”無線網(wǎng)絡(luò)連接\”admin= enable
(3)禁用、啟用打印機
禁用打印機執(zhí)行:net stop Print Spooler
啟用打印機執(zhí)行:net start Print Spooler
(4)禁用、啟用光驅(qū)
在HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer注冊表子項下,新建雙字節(jié)值“NoDrives”,修改此值。在“數(shù)據(jù)”編輯框中輸入你要隱藏的驅(qū)動器號并確定,重新啟動系統(tǒng)后相應(yīng)的驅(qū)動器即被隱藏,這樣就達(dá)到了禁用光驅(qū)的目的。(使用2的N次方(N=1,2,3,……)來代表一個驅(qū)動器號,如:A為1,B為2,C為4,D為8,E為16……);當(dāng)要禁用光驅(qū)時,只需把該注冊表下的這個值“NoDrives”刪掉即可。
3.3 應(yīng)用程序控制模塊
與“端口設(shè)備控制”模塊的主要思想是一致的,也是利用socket通信,實現(xiàn)遠(yuǎn)程控制。
具體的在服務(wù)器端禁止某些應(yīng)用程序使用的方法為:每隔一段時間,運行一下禁用與應(yīng)用程序相關(guān)的指定進(jìn)程的命令,讓終端電腦運行不了指定的應(yīng)用程序。以禁用QQ為例,讓服務(wù)區(qū)端每隔一段時間自動執(zhí)行以下命令,就能防止服務(wù)器端用戶使用QQ軟件:taskkill/f/im qq.exe
其他應(yīng)用程序,如PPS、MSN的控制是一樣的道理。
3.4 遠(yuǎn)程控制模塊
(1)遠(yuǎn)程關(guān)機、重啟設(shè)計思想基本一樣。
當(dāng)管理員希望遠(yuǎn)程對某一個終端進(jìn)行控制時,客戶端(client)就發(fā)出一些指令,比如:讓關(guān)機的指令,并將它通過socket傳遞給這個終端,而終端(server)在接收到指令后,就調(diào)用自身的一些命令,比如:強制關(guān)機的命令“Shutdown-s-t 30”,來完成客戶端的指令??蛻舳司唧w的執(zhí)行過程如下所示:
關(guān)機:Process p=Runtime.getRuntime().exec(“Shutdown-s-t 30”);
重啟:Process p=Runtime.getRuntime().exec("shutdown-r-t 30");
(2)遠(yuǎn)程屏幕抓取也是客戶端發(fā)出“屏幕抓取”的指令,終端進(jìn)行響應(yīng),執(zhí)行特定的操作,完成客戶端指令,這點跟上面所述的“遠(yuǎn)程關(guān)機”的思路一樣。但不同之處在于,響應(yīng)“屏幕抓取”指令所執(zhí)行的操作比較麻煩,而且,在服務(wù)器端抓取到屏幕信息后,還需要返回到客戶端,并保存在客戶端上,這樣才能達(dá)到目的。
抓取屏幕用到一下的方法(注意:為了起到監(jiān)控的作用,應(yīng)該隔一段時間自動執(zhí)行一次屏幕抓取指令):
BufferedImage fullScreenImage;
Robot robot=new Robot();
fullScreenImage=robot.createScreenCapture(newRectangle(Toolkit.getDefaultToolkit().getScreenSize()))
抓取到屏幕后首先將它保存到服務(wù)器端的一個文件中;
將服務(wù)器端的文件通過socket通信方式,傳到客戶端保存下來,以便監(jiān)控使用。
3.5 終端其他安全控制
禁用和啟用自動播放:
在注冊表中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies下新建項“Explorer”,在該項下新建Dword鍵值,并改鍵值名為“NoDriveTypeAutoRun”,如果想直接禁止所有設(shè)備的AutoRun功能,直接將“NoDriveTypeAutoRun”鍵值設(shè)置為“255”即可;刪除NoDriveTypeAutoRun鍵值即可取消AutoRun的設(shè)備限制功能。
4.結(jié)束語
隨著社會、科技、經(jīng)濟的不斷發(fā)展,內(nèi)網(wǎng)安全管理的應(yīng)用范圍極其廣泛。本文在詳細(xì)研究和分析了網(wǎng)絡(luò)通信等關(guān)鍵技術(shù)的基礎(chǔ)上,以Windows 7操作系統(tǒng)為開發(fā)平臺,在Eclipse環(huán)境下用JAVA語言開發(fā)基于C/S模式的內(nèi)網(wǎng)安全管理系統(tǒng)。系統(tǒng)能實現(xiàn)對局域網(wǎng)內(nèi)終端計算機行為的審計和管理,達(dá)到了良好的控制效果。這種對內(nèi)網(wǎng)安全管理系統(tǒng)的解決方案的研究,能較好的解決企業(yè)管理中的一些難題,提高管理的效率與手段,有很大的實際意義。
參考文獻(xiàn)
[1]袁鵬飛.Intranet網(wǎng)絡(luò)建設(shè)與應(yīng)用開發(fā)[M].北京:人民郵電出版社.
[2]黃光奇.CGI編程指南[M].北京:電子工業(yè)出版社.
[3]蔡奇玉,等.CGI編程指南[M].北京:機械工業(yè)出版社.
[4]張世永.網(wǎng)絡(luò)安全原理與應(yīng)用[M].科學(xué)出版社.
[5]李明之.網(wǎng)絡(luò)安全與數(shù)據(jù)完整性指南[M].機械工業(yè)出版社.
[6]張友生.遠(yuǎn)程控制編程技術(shù)[M].電子工業(yè)出版社,2002.