大多的安全管理程序都能很好地使用防火墻,過(guò)濾路由器和其它的防御工具來(lái)保護(hù)它們的網(wǎng)絡(luò)免于受到外部黑客的襲擊。然而,對(duì)于你網(wǎng)絡(luò)的最大的敵人莫過(guò)于內(nèi)部的攻擊。內(nèi)部的訪問(wèn)控制列表(ACLs)可以幫助保護(hù)你的網(wǎng)絡(luò)安全免遭內(nèi)部危害。
你的路由器和交換機(jī)中的內(nèi)部ACLs可以在安全構(gòu)件中給你提供另外一個(gè)工具。通過(guò)在你的網(wǎng)絡(luò)中限制傳輸?shù)念愋停憔涂梢蕴岣咝阅埽⑶铱梢詼p少你的弱點(diǎn),以防止內(nèi)部攻擊、特洛伊木馬和蠕蟲病毒的繁衍。當(dāng)你開發(fā)了內(nèi)部的ACLs,請(qǐng)記住這個(gè)基本的規(guī)則:客戶端發(fā)出,服務(wù)器監(jiān)聽。
服務(wù)器監(jiān)聽
除非你創(chuàng)建了一個(gè)腳本來(lái)在服務(wù)器上運(yùn)行,否則你就是使用服務(wù)器來(lái)控制其它的服務(wù)器或連接(例如,一個(gè)服務(wù)器終端或者一個(gè)打印機(jī)服務(wù)器),服務(wù)器不建立連接。它們從客戶端的機(jī)器上相應(yīng)服務(wù)需求。
所以,當(dāng)你開發(fā)ACLs的時(shí)候,首先要確定每個(gè)服務(wù)器是干什么的,并且要知道哪個(gè)客戶需要訪問(wèn)這些信息。例如,如果你在運(yùn)行一個(gè)內(nèi)部的,非SSL的網(wǎng)絡(luò)服務(wù),你可以把訪問(wèn)列表置于訪問(wèn)你的網(wǎng)絡(luò)服務(wù)的端口處,并且只允許TCP的80端口可以訪問(wèn)。但是,如果這個(gè)服務(wù)器是范圍控制器(DC),你就需要允許一系列的端口可以訪問(wèn)這個(gè)服務(wù)器,從而可以進(jìn)行客戶身份鑒定和登陸服務(wù)。
特別的,在Windows NT的DC,你需要允許:
NetBIOS 名稱: UDP 端口 137
NetBIOS 網(wǎng)絡(luò)登陸和瀏覽:UDP 端口 138
NetBIOS 會(huì)話:TCP端口 139
遠(yuǎn)程程序調(diào)用(RPC): TCP端口 135
或者,對(duì)于Windows 2000的DC,你需要允許:
Kerberos authentication: UDP/TCP port 88
RCP: TCP端口 135
輕量級(jí)目錄訪問(wèn)協(xié)議(LDAP): UDP/TCP端口 389
微軟路徑服務(wù):TCP端口 445
LDAP 全局目錄:TCP端口3268 (如果DC保持著全局目錄的操縱權(quán))
服務(wù)器列表接下來(lái),就依賴服務(wù)器的類型和功能The server list continues, depending on the type and function of the server.
客戶端發(fā)送
正像我前面說(shuō)的一樣,客戶端“talk”,或者建立連接。為了增加內(nèi)部的安全性,你將會(huì)需要篩選客戶端的外部連接。雖然試圖篩選客戶的連接不是一件容易的事情,可是一旦你知道你的服務(wù)器在監(jiān)聽哪個(gè)端口,你就可以知道你的客戶在試圖連接哪個(gè)端口。
給客戶連接開發(fā)一個(gè)訪問(wèn)列表是通過(guò)了解你的客戶需要什么服務(wù)決定的。例如,如果你不想讓一個(gè)客戶可以進(jìn)行遠(yuǎn)程登陸,你就可以通過(guò)不允許它訪問(wèn)TCP端口23來(lái)完成。
最后的思考
你也許認(rèn)為這些類型的ACLs太難進(jìn)行管理。但是在你放棄這個(gè)決定之前,運(yùn)行NMAP或者另外一個(gè)端口掃描儀并記錄客戶端和服務(wù)器的連接。這就可以給你提供一個(gè)工作基線,這樣你就可以在這個(gè)基線上建立你自己內(nèi)部的ACL ,并可以增加你成功的可能性。
特洛伊木馬和蠕蟲病毒需要端口才能進(jìn)行通信。在你的內(nèi)部網(wǎng)絡(luò)中嚴(yán)格控制端口和協(xié)議,你就可以減少它們繁殖的幾率,所以要特別關(guān)注你服務(wù)器和客戶的開放端口。控制你的網(wǎng)絡(luò)安全的過(guò)程很長(zhǎng),從網(wǎng)絡(luò)連接開始到客戶中止連接時(shí)才結(jié)束。


