2013年6月26日 星期三

網管人員基礎必知 資訊安全防護與存取控制

從基本解析企業資安及風險管理
網管人員基礎必知 資訊安全防護與存取控制

網路攻擊日益猖獗,資訊安全維護更顯重要。為提高網管防護意識,本文將介紹資訊安全的目標、防護工作內容以及資訊安全的計畫,並說明如何設定網路存取控制權以提升網路存取的安全性。

資訊安全一直都是許多企業所關注的議題,尤其是2011年台灣通過個資法,以及過去陸陸續續發生大型企業讓許多客戶的個人資料外洩,例如知名的Sony PSP網路等事件,使得許多企業更加重視資訊安全與風險管理這樣的議題。

這篇文章將大致介紹資訊安全領域和風險管理所涵蓋的內容,以及企業應該如何地應對。

資訊安全三大目標

資訊安全包含許多方面,例如網路安全、資料庫安全、檔案存取、作業系統安全、人員權限管理、密碼學等等,無論談到的是哪一種領域,目標都是一致的,資訊安全目標不外乎圍繞在三個方向:

1. 資料可取得性(Availability)
2. 資料完整性(Integrity)
3. 資料機密性(Confidentiality)

▲AIC三角


而這三的方向,稱為AIC三角(Triad)。

資料可取得性(Availability) 

可取得性指的是當需要存取到資料的時候,都能確保資料是可以被取得的。相對的,就是代表要注意資料是不是有被惡意或不小心刪除及毀壞。整體來說,資料可取得性要注意的方向有:人為因素、線路問題、軟體的疏失、硬體毀壞、缺乏技術人員、病毒或是其他各種可能的威脅。

資料完整性(Integrity) 

資料完整性主要注重在資料的正確性(Accuracy),如果資料只是可取得,但是卻缺乏完整性或正確性,這樣也不是我們所期望的。

資料機密性(Confidentiality) 

資料機密性的概念就是要去保護個人資料(Privacy of Information)或秘密性的資料(Secrecy of Information)。這樣的保護甚至可以延伸到防止機密資料被交易這樣的行為。

資訊安全防護工作的迷思 

大部分人都知道資訊安全的防護工作相當重要,但是很多人卻對這樣的防護工作有著幾項錯誤的迷思:

1. 資訊安全防護工作會妨礙企業業務的運行。
2. 資訊安全防護工作既昂貴,功效又不高。
3. 資訊安全防護工作根本不可能做得到。
4. 資訊安全防護工作只要用類似防火牆或防毒軟體就 可以完成。 

我們必須了解,整個資料安全的防護工作,是必須圍繞在業務運作上,也就是同步於業務運作上的需求。至於資訊安全的成本問題,的確是必須要考慮的,但是資訊安全防護工作的種類與層面都很廣泛,要做到哪些方面,以及要做到多深,不是一件簡單就可以敘述的事情。企業必須要衡量投入的預算,但是只要方法正確、方向得宜,功效絕對會很高。

而整個資訊安全防護工作最難的地方,大多都是圍繞在人身上。首先,整個防護工作必須要經過適當的授權與重視,如果在企業中,連老闆…主管等人都不重視,即使投入再多的人力或是資金都是沒有用的。

最後還有一點,就是整個資訊安全必須以主動的態度進行,而不是以被動的態度認為反正還沒有面臨到威脅,因此不需要面面俱到。另外,要明白一點,無論怎樣做,風險都不可能變成零,也就是不可能完全沒有任何的風險,但重點是要如何讓風險降到最低。

資訊安全計畫

經過筆者大致描述資訊安全的目標與迷思後,接下來就來敘述資訊安全計畫所包含的主題:

1. 原則與需求分析(Principles and Requirements)
2. 施行政策(Policy)
3. 組織角色與責任(Organizational Roles and Responsibilities)
4. 風險管理與分析(Risk Management and Analysis)
5. 道德管理(Ethics) 

接著,一個個來做詳細說明。

原則與需求分析

這個主題主要是要了解企業組織在資訊安全上的需求與實行原則。這裡可以分為企業IT的安全需求、組織業務的需求以及IT安全管理三個方面來討論。

企業IT的安全需求 
對企業IT而言,資訊安全解決方案注重兩個層面:

1. 資訊安全解決方案的功能需求
2. 資訊安全解決方案能夠正確地被運行 

第一個層面屬於功能需求(Functional Requirements),一般來說都是注重在解決方案的功能達到怎樣的防護與功能上的控制行為。第二個層面屬於保障需求(Assurance Requirements),確保企業選擇了適當的解決方案,並且要確保解決方案有被正確地運行,而且是有效地運行,有達到企業資訊安全的需求。

唯有同時符合兩個層面的需求,才能算是一個完整的資訊安全解決方案。舉例來說,一個很強的防毒軟體,必須具備威脅偵測、防毒解毒的功能,這些屬於功能需求層面。

另外,防毒軟體也必須針對防毒偵測的過程中,做一些記錄(Logging)的功能,或是以其他方式確保防毒軟體正在正常運行中,這樣才能算是一個完整的資訊安全防護解決方案。

組織業務的需求
以上都是屬於IT安全的需求,至於組織業務的安全需求,可以分為三個部分來探討:

1. 注重於企業組織整體的目標
2. 每一個不同的組織擁有不同的安全需求
3. 資訊安全計畫必須是合理的,而且是有經濟效益 的。 

很明顯地,資訊安全計畫一定要符合企業組織的整體目標,否則資訊安全計畫將會沒有效益。另外,也要明白資訊安全計畫根據不同的企業組織會有很明顯的不同,例如政府單位、軍事單位或是一般的企業單位等等,他們對於資訊安全的看法與需求是截然不同的。

舉例來說,每個組織對於各種資料的保護優先權可能就會不同,所要保護的資料目標物也會不同,即使是同一個產業的不同企業,其資訊安全的需求也不見得相同,因為各個企業可能會有不同的營運流程或是不同的資訊存取流程等等。最後,也是最重要的,當然是所選擇的資訊安全計畫必須達到成本效益。

IT安全管理 
這裡要談的,是組織IT在安全管理的目標。IT安全管理在整個企業組織的管理之中只占一部分。一般來說,對於企業高層而言,IT安全管理這個領域對他們而言過於複雜,過於技術性,因此通常會把整個責任全部交付給IT管理部門。而IT管理部門在工作量上可能已經無法負荷安全上的管理,因為IT部門還會需要負責很多其他的事情上,即使IT部門想要著重在資訊安全上,可能也因為沒有受過適當的訓練或是在職責上沒有適當的分配,而導致整個資訊安全計畫徹底失敗。

根據美國全國網路安全聯盟(National Cyber Security Alliance)的資料指出,美國有47%的小型企業不會提供員工網路安全訓練,其中,也有許多企業不願意提供適當的訓練給IT部門。因此,適當的作法應該要把IT管理整合並納入企業整體的風險分析之中,並且必須確保:

符合AIC三角需求
支援公司的策略和目標

而整個IT安全管理,必須包含下列三個部分:

卓越的領導力(Leadership)
完善的階層組織架構(Structure)
標準的運行流程(Processes)

一般而言,我們都會覺得網路安全管理人員所需要的是技術上的技能,但事實上會需要更多的技能。舉例來說,網路安全管理人員至少要有能力做決策,而且所做出的決策不會被任何的高層所過濾,所做出來的決策也必須能夠讓人信服,因此做決策的人在公司裡面須要有一定的地位。

除此之外,這些網路安全管理人員必須對公司的大小細節很熟悉,例如公司是如何運作、誰會使用哪些資料、如何存取那些資料等等。這些都是領導力所涵蓋的內容。

而階層架構所要提的,是指整個資訊安全管理存在於公司內部各個階層的人員:高層主管將方向(Directions)轉換成為政策(Policies),而一般主管將策略轉換成為標準(Standards)、基準(Baselines)以及方針(Guidelines),而Team Leaders則是將標準、基準以及方針轉換成為流程(Procedures)。最後,一般員工則是實行每一個訂立出來的流程。

從上到下各階層的人員在每個流程,對於整個資訊安全管理都是非常重要的。因此,唯有良好的組織階層架構,才能真正落實良好的資訊安全管理工作。

最後,在執行的流程上,也是有很多細節是需要注意。舉例來說,一般會注意做到以下幾點:

1. 工作輪替(Job rotation)
2. 職權區分(Separation of duties)
3. 最小權力分配(Least privilege)
4. 休假的安排(Mandatory vacations)
5. Brewer-Nash Model
6. 監督(Supervision)
7. 安全稽核和復審(Security audit and review)
8. I/O控制
9. 防毒軟體管理

關於每一項細節,之後有機會再一一介紹。

透過存取控制提升網路安全 

網路安全管理人員必須對公司的大小細節很熟悉,例如公司是如何運作、誰會使用哪些資料、如何存取那些資料等等,這些都是領導力所涵蓋的內容。但其實這些對於網路管理人員來說,也是一個非常大的重點。

如果你是網路管理人員,而職責又必須涵蓋網路安全,那這真的是不可忽略的細節。一旦了解公司內部什麼角色會去使用何種資料之後,就可以對應到什麼網路區段。

接下來,就是透過技術上的設定來提升安全性。技術上最經常使用的就是設定存取控制,也就是限定資料的存取控制權。以下來看看如何做到這樣的控制設定。

存取控制清單簡介

Cisco路由器設備的標準型存取控制清單和延伸型存取控制清單提供了許多功能,其中包含一般的存取控制,同時也提供資料加密以及根據策略自動決定路由的功能(Policy-based Routing)。

存取控制清單,也就是Access Control List,簡稱ACL。顧名思義,存取控制清單就是一個清單,內容包含一些「規則」,也可以視為條件,用來指導Cisco路由器設備如何辨識哪些網路封包,以及要對這些網路封包做哪些動作。

例如,網路管理人員可能想要阻絕某些網路封包,希望只允許某些特定的網路封包,而網路管理人員在Cisco路由器設備上設定好存取控制清單之後,當網路封包通過Cisco路由器設備時,就會依據存取控制清單的內容來決定是否要讓這個網路封包經過。

藉由適當地控制好存取控制清單,網路管理人員就可以過濾網路封包,達到一定的網路安全。

存取控制清單的種類

基本上,存取控制清單分為以下兩種類型:

標準型存取控制清單
延伸型存取控制清單

兩種存取控制清單各有優劣,接著就來分析這兩種存取控制清單的不同之處。

檢查網路封包的條件(Criteria) 

標準型存取控制清單與延伸型存取控制清單最大的不同就在於,標準型會檢查網路封包的來源IP位址,而延伸型存取控制清單則會檢查網路封包的來源IP位址和目的地IP位址。

所能處理的網路協定 

標準型存取控制清單只能針對所有的網路協定來做處理,並不能針對特定的網路協定指定允許或拒絕的動作處理,但是延伸型存取控制清單能夠針對特定的網路協定進行處置。由此看來,延伸型的存取控制清單的能力比較強大,能夠設定的比較多。

表1 通訊埠及其所對應的網路服務 


延伸型存取控制清單中的規則,除了可以指定網路協定外,還能夠在協定後面加上埠的編號,以便指明要套用在怎樣的埠之網路封包。一般而言,網路管理人員都會指明比較常見的埠編號(Well Known Ports),表1列出一些常見的埠編號及其所對應的網路服務。

存取控制清單的識別碼範圍

存取控制清單中,每一條規則都有其特定的識別碼(ID),以便於辨識每一條專屬的存取控制規則,不過標準型存取控制清單和延伸型存取控制清單所使用的識別碼範圍不同。

標準型存取控制清單的識別碼範圍是從1到99以及1300到1999之間,而延伸型存取控制清單的識別碼範圍則是從100到199以及2000到2699。由此可以看出,標準型存取控制清單所能設定的規則數目共有799個,而延伸型存取控制清單所能設定的規則數目一樣也是799個,但是所使用的識別碼範圍是不同的。表2是針對這兩種存取控制清單識別碼的整理。

表2 存取控制清單的識別碼範圍


設定標準型存取控制清單的步驟

這裡介紹比較簡單的標準型存取控制清單,說明如何透過指令來設定,而所介紹的指令分成以下幾個部分:

1. 增加一筆存取控制規則的指令
2. 刪除特定一筆存取控制規則的指令
3. 將特定存取控制規則套用到某介面上的指令
4. 刪除已經套用在介面上的規則的指令

這些步驟是一般設定標準型存取控制清單的步驟,與虛擬終端介面並沒有直接關連,因此這些步驟同時適用於所有介面。

增加一筆存取控制規則 

基本的設定語法格式如下所示:



由於這裡要設定的是標準型存取控制清單,所以存取控制規則的識別碼範圍為1到99之間,而mask指的是字元遮罩,這個字元遮罩可輸入也可忽略,若沒有輸入字元遮罩,預設值是0.0.0.0。

字元遮罩是用來指定一個以上的位址,不過不同的是,在存取控制清單中,位元值為0代表符合(Match)目前這個位元值所對應的位址值,而位元值為1代表忽略(Ignore)。這點與子網路遮罩剛好是相反的,在子網路遮罩中,位元值為0代表忽略,位元值為1則代表要符合。

剛剛提過這裡字元遮罩的預設值是0.0.0.0,因此代表要符合前面輸入的IP位址的每一個位元才能套用這個存取控制規則。

所以,假設要在某台Cisco路由器設備上增加一筆存取控制規則,是可用來允許10.1.152.43這台機器所發送過來的網路封包,則設定指令如下所示:



由此可以看出,這裡將這條規則的識別碼設定為「46」。

刪除一筆存取控制規則

若要刪除某一筆存取控制規則,其指令格式如下:



這是標準的反向操作指令,在Cisco IOS中很多指令的反向操作通常都只是在原本指令的前面加上no關鍵字。所以,若要刪除剛剛上面所增加的存取控制規則,只要執行以下指令即可:



套用存取控制規則到介面上 

準備好存取控制規則之後,接下來就是把所設定好的存取控制規則套用到介面上,其指令格式如下:



為了要設定到某個介面上,第一步必須先進入特定介面的Interface Mode底下,所以讀者可以看到上面的指令的模式是必須在(config-if)底下才能執行。ip access-group是關鍵字,後面只要接上存取控制規則的識別碼,然後指定要套用在inbound或是outbound。方向的選擇也可以不指定,若不指定的話,預設只會套用在outbound方向上。

移除已經套用在某介面上的規則

這裡的作法其實也是類似,只要執行反向指令即可。原本要把規則套用在某個介面上的指令是ip access-group,因此若要將這條規則從介面上移除,只要在原本的指令前面加上no關鍵字即可,如下所示:



以上就是透過存取控制清單來提升網路安全的作法,當然還會有很多其他技術細節需要注意,之後會陸陸續續為各位介紹。

本文作者:胡凱智
轉載自《網管人》

沒有留言:

張貼留言