Download presentation
Presentation is loading. Please wait.
1
Information Security Fundamentals and Practices 資訊安全概論與實務
潘天佑博士 主編 版權聲明:本教學投影片僅供教師授課講解使用,投影片內之圖片、文字及其相關內容, 未經著作權人許可,不得以任何形式或方法轉載使用。
2
第二篇 第5章 認證、授權與存取控制
3
On the Internet, nobody knows you’re a dog.
身分識別是網際網路的一大挑戰 On the Internet, nobody knows you’re a dog. Cartoon by Peter Steiner. The New Yorker, July 5, 1993 issue (Vol.69 no. 20) page 61
4
存取控制的基本需求 安全性 組織政策要確保只有得到授權的人可以讀取機密的資訊;只有得到授權的人可以修改資料或程式;並確保使用者不會輕易的造成系統無法運作。 可用性 存取控制的機制應讓使用者易於瞭解,並且儘量不影響他們的正常工作方式與習慣。存取控制的機制要能夠每次都如預期的運作。 擴展性 當一個組織的人員、系統或工作量增加時,存取控制的機制不應隨之變為過度複雜,以致影響系統效能與行政效率。
5
存取控制的主要概念 責任分擔 (separation of duties) 最低權限 (least privilege)
應該避免讓一個人完整的知道或持有一個秘密的資訊或流程。 最低權限 (least privilege) 每人只擁有足以完成工作的最低權限。 知的必要性 (need-to-know) 每人對秘密資訊「知的權利」端視其所負責業務的需要性。 資訊分類 (information classification) 使用者(人)與被使用者(系統或資料)間應有清楚的權限對應關係。
6
存取控制的類別 預防性 偵測性 指導性 嚇阻性 復原性
7
存取控制的威脅 拒絕服務 (denial of service) 緩衝區溢位 (buffer overflow)
惡意程式 (malware) 密碼破解 (password cracker) 欺騙 (spoofing) 中間監看 (sniffer) 垃圾搜尋 (dumpster diving) 窺視 (shoulder surfing) 未經授權之資料探勘 (unauthorized data mining) 電子訊號外洩 (emanation) 物件重用 (object reuse) 資料剩磁 (data remanence)
8
實體與虛擬的威脅 偷竊 入侵 社交工程 偷竊是存取控制的最大威脅。 入侵可能是實體或虛擬的,也可能兩者結合。
社交工程也常結合實體與虛擬的詐欺。
9
系統存取控制 身分 身分認證 授權 責任歸屬 系統通過身分認證後,授予使用者的讀、寫、執行、刪除等權限。
讓使用者擁有一個唯一、可電子讀取的名稱,電腦系統以此識別使用者身分。 身分認證 確認使用該電子身分者為使用者本人。 授權 系統通過身分認證後,授予使用者的讀、寫、執行、刪除等權限。 責任歸屬 能讓已經授權的使用者對自己在系統上的行為負責。
10
身份 電子世界中「身分」的類型: 使用者名稱 (username), 各種電子識別證、智慧卡、提款卡等,
銀行的帳戶號碼 (account number) 等, 將在後面細談的生物特徵 (biometrics) 也是一種電子身分。 身分應有以下特性: 在一個存取控制系統中,每位使用者的身分應為唯一。有助於身分 認證的進行與責任歸屬的釐清。 身分資料應保持最新,離職員工或已不使用的身分應立刻刪除。 機構內應有選定使用者名稱的政策,以免重複使用或在名稱上洩漏 太多訊息。
11
身分認證的方法 認證工具的強度 認證方式的強度 所知之事 所持之物 所具之形 通關密碼 PIN 工具產生單次密碼 智慧卡 私密金鑰 公開金鑰
智慧卡結合所知之事 – 形成雙重要素認證 指紋與聲紋等 視網膜 智慧卡、密碼與生物特徵形成三重要素認證
12
單點登錄 1. 使用者在客戶端鍵入使用者名稱與通關密碼 認證伺服器 應用伺服器 2. 使用者名稱與密碼傳送給認證伺服器 應用伺服器
3. 認證伺服器認證使用者身分 4. 認證成功後,身分認證伺服器允許使用者使用應用伺服器。
13
Kerberos (I) 它是麻省理工學院所開發的自由軟體,微軟、思科、蘋果等公司都曾 使用在其產品中,包括 Windows, Mac OS X, Apache等。 Kerberos 協定建構於對稱式金鑰系統 (於第七章說明),並需要「信任 第三者」。進階的 Kerberos 可以在一些步驟中使用公開金鑰。 它的信任第三者稱為 Key Distribution Center (KDC),包括兩部分: Authentication Server (AS) 與 Ticket Granting Server (TGS)。 Kerberos 以票證 (ticket) 為基礎,做為使用者身分的憑證。 KDC 擁有網路上密鑰的完整資料庫。而其它成員 (客戶或伺服端) 則只 擁有自己的密鑰。當網路內任何兩者需要對話時,則由KDC完成身分 認證後,發出一個會談金鑰 (session key) 供兩端進行安全通訊。
14
Kerberos (II) AS 3. 若AS在資料庫中找到使用者,就回覆兩樣東西:a. 一把會談金鑰(以客戶端金鑰加密),b. 一張票證(以TGS金鑰加密)。 2. 客戶端向AS要求登入系統。 5. 當客戶端要使用應用伺服器或其他網路資源時,就以會談金鑰與票證向TGS提出要求。 TGS 6. TGS發給客戶端與應用伺服器會談的金鑰與票證,並以應用伺服器的金鑰加密。 1. 使用者在客戶端鍵入使用者名稱與通關密碼;客戶端以one-way function將密碼轉換為客戶端金鑰。 認證伺服器 7. 客戶端以TGS新發給的會談金鑰與票證與應用伺服器進行相互認證與安全通訊。 4. 客戶端解開會談金鑰,用以與TGS會談;但票證只有TGS才能解開。客戶端保存這些東西可重複使用。 應用伺服器
15
非同步工具產生單次密碼 1. 使用者向身分認證伺服器要求登入 2. 身分認證伺服器產生一組挑戰隨機碼給使用者 認證伺服器
5. 使用者將通關密碼送給身分認證伺服器 3. 使用者將挑戰隨機碼輸入手持式電子認證工具 6. 認證成功後,身分認證伺服器允許使用者使用應用伺服器。 應用伺服器 4. 手持式電子認證工具以密碼學計算回應值 (亦即通關密碼)
16
同步電子代符 同步電子代符 (synchronous token) 可以自動產生單次密碼,然而隨身 攜帶的電子代符必須與身分認證伺服器之間保持同步,方法包括: 時間基準同步:電子代符與身分認證伺服器之間保持精準的時間同 步,因此在同一個時間,電子代符上顯示的數字 (亦即使用者的單次 通關密碼) 與伺服器裡的認證數字相同。 事件基準同步:電子代符每產生一次密 碼,代符與伺服器的數字就會同步變更 一次。但若代符產生密碼卻未被使用於 系統登入,則代符與伺服器間就會失去 同步;此時使用者需要對電腦輸入PIN後, 讓兩者重新同步。 Acme Security
17
智慧卡 智慧卡 (smart card) 將晶片嵌入塑膠卡中,是最方便攜帶的電子身分認 證工具。智慧卡可分為以下類別:
接觸式智慧卡 (contact smart cards):包括塑膠卡身、晶片、與金屬 接觸介面。卡片要插入讀卡機內,讓智慧卡晶片裡的微處理器與電 腦或伺服器建立通訊。目前台灣的金融卡都是接觸式智慧卡。 非接觸式智慧卡 (contactless cards):類似接觸式智慧卡,但是介面 不是金屬接觸層,而是無線射頻(RF)。非接觸式智慧卡使用更為方 便,台北捷運悠遊卡即為一例。接觸與非接觸式智慧卡本身都沒有 電源,要靠讀卡機以接觸或非接觸方式傳輸電力。 兩用智慧卡 (combi-cards):是指同一張卡有接觸與非接觸式兩種介 面,部分金融卡與悠遊卡結合成一張聯名卡,就具備兩種介面。
18
智慧卡結構 智慧卡晶片像一台微型電腦, 內容包括軟、硬體兩部分。
硬體包括 CPU 和幾種記憶體: RAM 與ROM 分別為暫存與永 久儲存之用; EEPROM 的功 能像電腦裡的硬碟或 flash碟, 其上的資料可修改,但斷電 後資料仍然存在。 軟體包括 OS 和應用程式。OS 例如像 Java Card。 AP1 AP2 AP3 OS (例如 Java Card) I/O (接觸或非接觸) CPU RAM ROM EEPROM
19
使用智慧卡的優勢 智慧卡攜帶方便,可以在不增加使用者負擔的情況下做到「雙重要素 認證 (two-factor authentication)」,最常用的雙重要素認證是智慧卡結 合通關密碼或 PIN。有較先進的安全系統已將使用者的指紋資料存入 智慧卡中,做到三重要素認證。 智慧卡可以儲存人腦無法記憶的密碼長度,因此,使用者只要記得智 慧卡的 PIN,就可以讓智慧卡去記多組冗長的密碼。萬一智慧卡遭竊, 大部分智慧卡都設計成三次 PIN 輸入錯誤則永遠鎖卡。 有些智慧卡具備公開金鑰 (public key) 的運算能力,如此能讓使用者隨 身攜帶電子憑證,執行安全性極高的PKI運算;同時也可以做電子簽章, 讓交易具備不可否認性 (non-repudiation)。
20
智慧卡攻擊 (I) 智慧卡技術已被使用二十年以上,許多攻擊方式應運而生。以下是一 些常被討論的方法:
實體侵入式攻擊 (physical invasive attacks) 精密儀器可將晶片電路清晰放大,並以探針搭接在要讀取的金屬接 點上,這個作法稱為 micro-probing,可直接讀取記憶體內資料,或 用以瞭解加密引擎的設計方法。 這種攻擊所需要的設備雖然在半 導體領域不難取得,但究竟所費 不貲;因此會進行實體攻擊者大 多為了較大經濟利益。例如某種 全國性的智慧卡票證若都使用同 一把密鑰,攻擊者就有足夠的動 因進行精密的實體攻擊。
21
智慧卡攻擊 (II) 旁道攻擊 (side-channel attacks)
攻擊者在智慧卡正常運作時,輸入特定數值讓晶片計算 (尤其是加解 密),再統計該計算所使用的時間或計算過程中所消耗的電力。如果 統計樣本夠大,就有機會推算出晶片內可能的金鑰密碼。 較有名的旁道攻擊法為 timing attack 與 power attack 等。 操弄攻擊 (manipulative attacks) 攻擊者刻意在智慧卡運算環境中加入變數,使軟硬體發生非預期的 亂象。若這些亂象不是智慧卡設計者所考慮到的,攻擊者就有可能 取得機密資料。 例如每當智慧卡在做 PIN 的認證時,攻擊者就刻意升高或降低電壓, 使CPU無法完成認證程序。如果智慧卡程式設計為 default true,攻 擊者就能通過認證。
22
智慧卡攻擊 (III) 假設智慧卡執行以下程式(以虛擬程式碼表示),允許將EEPROM記憶 體中位址101到110的十比資料輸出到卡外。
【操弄攻擊】觀察以上程式,執行 “IF ( i > 110 ) GOTO 12” 這行指令 所需花費的時間比其它指令都長,因為它做一個判斷(i 是否大於 110?)之後,還要執行跳行 (GOTO 12)。若攻擊者故意將智慧卡的時 鐘頻率(clock rate)調高,例如從標準的5MHz調升到10MHz,這行指 令就無法在一個時鐘週期 (clock cycle)內完成:也許只做了判斷卻沒 有完成跳行,因此永遠離不開循環 (loop);i 的值會繼續往上增加, 因此記憶體中所有的資料都被輸出卡外。 i = 101; IF ( i > 110 ) GOTO 12 OUTPUT( mem [i] ); i = i + 1; GOTO 10 12 EXIT
23
生物特徵認證 生物特徵是 something you are, 也是三種認證要素中最難被偽造者。它 可以同時兼具「身分」與「認證」的功能。
生物特徵有靜態與動態兩種: 靜態者包括指紋、視網膜等身體特徵。 動態者包括聲音、簽字律動等行為特徵。 採用生物特徵辨識系統時應注意以下事項: 測量應該準確,下一頁將介紹 CER 概念,用以量測準確度。 一些生物特徵辨識系統可能遭到使用者抗拒,例如視網膜掃描等。 有的生物特徵辨識過程需要較長時間,以致未必實用。目前還是指 紋辨識的技術較為成熟。
24
生物特徵認證準確性 當儀器的靈敏度被訂越高,越多對的東西會被誤判為錯(誤殺),稱為 第一類錯誤。
當儀器的靈敏度被訂越低,越多錯的東西會被誤判為對(誤放),稱為 第二類錯誤。 最佳的儀器靈敏度應該在兩條曲線的交點,這個點的錯誤率稱做交點 錯誤率 (crossover error rate, CER) 。 錯誤率 儀器靈敏度 第一類錯誤 (誤殺) 第二類錯誤 (誤放) 交點錯誤率 (CER)
25
靜態生物特徵 指紋、掌紋 手掌結構 視網膜(retina)掃描 虹膜(iris)掃描 有相當高的準確性,屬於應用最廣的生物特徵。
電腦量測手掌的長、寬、厚度,相當準確且快速。 視網膜(retina)掃描 以低度光源來分析眼球後端視網膜上的血管分布模式。 虹膜(iris)掃描 記錄眼球虹膜的獨特模式,準確、快速、且接受度較高。
26
動態生物特徵 聲音模式 臉部辨識 敲鍵盤律動 簽字律動 可以自然的與通關密碼形成雙重要素認證,接受度高。
不太準確且辨識時間較長,但使用者接受度高。 臉部辨識 準確度尚佳,但因隱私問題不願意臉部資料被建檔。 敲鍵盤律動 可以自然的與通關密碼形成雙重要素認證,接受度高。 簽字律動 在電子筆中加入感應器以辨識簽字律動,使用者接受度高。
27
資料存取控制 強制存取控制 (mandatory access control, MAC)
任意存取控制 (discretionary access control, DAC) 存取控制目錄 (access control list, ACL) 規則基準存取控制 (rule-based access control) 角色基準存取控制 (role-based access control)
28
強制存取控制 強制存取控制是最嚴格的資料存取控制手段,它對主體 (subject) 及物 件 (object) 都清楚的劃分安全等級,符合等級者方得存取。 「主體」是指使用者或客戶端主機等,能發出存取需求者;「物件」 是指伺服器、資料庫、檔案等被存取者。 機密等級標籤 (sensitivity labels) 常被用來標示主體與物件的安全等 級。例如我國國家機密區分為「絕對機密」、「極機密」、「機密」 三個等級,一般公務機密則列為「密」等級。 強制存取控制的系統會比對主體與物件之間的安全等級,來決定是 否同意資料存取之要求。除此之外,該物件的「所有人 (owner)」也 可以依照「知的必要性 (need-to-know)」來否決一些安全等級符合 者之存取要求。並非所有等級符合者都有存取該項機密物件的必要。
29
任意存取控制 「任意」是指相對於強制存取控制較不嚴格,但仍有一定之資料存取 控制的方式。
任意存取控制必須具備一些一致的規定,以控制或限制主體對物件 的存取。這種存取權力是基於「知的必要性 (need-to-know)」。 在實作上,會由該物件的「所有人 (owner)」或他所指定的代理人來 決定那些主體有權存取該物件。 這種存取控制較不嚴格:如果一個主體有某些權利,他可以把這種 權利轉給另外的主體。 例如在任意存取控制的環境下,總經理可以讓他的秘書代讀電子郵 件;但在強制存取控制的環境下,這是不被允許的。
30
存取控制目錄 存取控制目錄 (ACL) 是 最常見的任意存取控制 的一種建置方式。
使用者 目錄或資源名稱 權限 Alice Alice’s directory 完全控制 Bob’s directory 唯讀 Calvin’s directory Printer001 可使用 Bob 禁止 Calvin 存取控制目錄 (ACL) 是 最常見的任意存取控制 的一種建置方式。 ACL 將使用者是否被允 許存取每個物件以條列 方式展開,並對權限作 限制。
31
規則基準存取控制 規則基準存取控制是另一種任 意存取控制的建置方式。
ACL是條列主體對每個物件的 存取權限;而規則基準存取控 制則是藉由一套規則,來決定 那些存取要求該被允許而哪些 該被拒絕。 例如,有一條規則可能是: 只有通過財務訓練的同仁可 以存取庫存系統。Bob 尚未 接受訓練,他自然無法存取 該系統。 庫存系統 客戶關係資料庫 會計系統 Alice Bob 存取規則
32
角色基準存取控制 角色基準存取控制與前面討論的規則基準類似,只是角色基準的存取 規則是以使用者在組織內的角色為基準。
例如,只有財務與庫房同仁可以存取庫存系統,而Alice是財務課長, 所以他可以存取該系統。但下周他高升會計經理,就無法再存取庫 存系統了。 角色基準存取控制是一種任意存取控制的建置方式;但也可應用於強 制存取控制。 角色基準的強制存取控制也要對主體與物件做清楚的安全等級劃分 與比對;但主體是「角色」而非一般所謂的使用者。 角色基準存取控制最大優勢是能與組織內的結構與階級維持一致的關 係,對組織變動的反應最快速。
33
稽核追蹤 稽核追蹤 (audit trail) 是確保存取控制的重要方式。
稽核追蹤依時間性記錄系統上的所有活動,藉由對系列活動的重整與 判讀,就能找出可能的入侵行為或其他資訊安全事件。 記錄資料應包括系統、網路、應用程式、與使用者的各種活動。 記錄資料可用來警告可疑的事件,分析入侵的行為,並可用於電子犯 罪調查甚至當作法庭證據。 記錄資料量通常極大,遠超過系統管理員所能判讀,因此需要設定一 些過濾機制。 應該有嚴格的控管,避免稽核追蹤記錄被竄改。 自動化的稽核追蹤工具很多,價格差異也很大,應該選擇最適合需要 的工具,並因應稽核目的做適當調整。
34
入侵偵測系統 入侵偵測系統 (intrusion detection systems, IDS) 可以即時監控系統或網 路,並偵測可能的入侵行為。 IDS 常以「稽核追蹤記錄」與「網路流量資訊」做為即時分析數據。 當 IDS 偵測到入侵行為時,他有主動或被動的做法: 主動做法:1. 主動收集更多入侵者資料;2. 切斷入侵者連線;3. 主動反 擊入侵者 (不建議這個做法)。 被動做法:1. 緊急事件的警報;2. 可疑事件的警告;3. 定時的回報。 入侵防禦系統 (intrusion protection systems, IPS) 比 IDS 更進一步,能 在侵入發生時主動防禦系統或網路。例如有一個可疑的封包進入網 路,IDS會提出警告後讓封包進入,但IPS會在提出警告後攔截封包。 IPS的風險是一旦誤殺 (第一類錯誤),反而產生了新的問題。
35
滲透測試 滲透測試 (penetration test, PT) 是以一套正式的步驟來突破安全控制, 並存取應受保護的系統與資料。它的目的在協助組織瞭解自身的安全 漏洞,並演練一旦遭入侵後之標準作業流程。 外部測試時,測試人員扮演一位從外部入侵的駭客。 Zero-knowledge (black box) test 是指進行測試時,專業測試人員完全沒有 受測組織的資訊,這種測試在模擬外部駭客的攻擊行為。 Partial-knowledge test 是指測試人員有部分受測組織的資訊,可以縮短滲 透測試花費之時間,並集中在較脆弱的部分測試。 內部測試時,測試人員扮演一位內部人員。 Full-knowledge (white box) test: 是指測試人員清楚瞭解受測組織,這種測 試在模擬組織內部惡意工作人員的攻擊行為。
Similar presentations