19 security
Download
1 / 78

第19章 安全( SECURITY) - PowerPoint PPT Presentation


  • 98 Views
  • Uploaded on

第19章 安全( SECURITY). 指導教授:徐立群 老師 研 究 生:王寶雪       王詩緯   林蔚任. 研究主題. 19.1  The Security Problem 19.2 User Authentication 19.3 Program Threats 19.4 System Threats 19.5 Securing Systems and Facilities 19.6 Intrusion Detection 19.7 Cryptography

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 第19章 安全( SECURITY)' - benny


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
19 security

第19章 安全(SECURITY)

指導教授:徐立群 老師

研 究 生:王寶雪   

   王詩緯

  林蔚任


研究主題

  • 19.1 The Security Problem

  • 19.2 User Authentication

  • 19.3 Program Threats

  • 19.4 System Threats

  • 19.5 Securing Systems and Facilities

  • 19.6 Intrusion Detection

  • 19.7 Cryptography

  • 19.8 Computer-Security Classifications


前言

  • 在第18章討論-防護,其是一個內部問題:在電腦系統中如何提供控制存取儲存的程式及資料?

  • 另一方面,安全不僅要求一個適當的系統防護,也考慮系統操作的外部環境。

  • 儲存在系統中的資訊和電腦系統的硬體資源,必須不被未授權的存取、惡意的破壞或修改、及意外地加入不一致性。

  • 本章將探討資訊可能被誤用或故意的造成不一致的方法。並介紹防止這種事件的方法。


The security problem
安全問題(The Security Problem)

  • 只要使用者遵照使用和存取資源的規定,作業系統可以允許使用者保護他們的資源。

  • 若在所有情況下,資料被如同預期的使用及存取,則系統可被稱為安全的。不幸的,所有的防護並不能達到。

  • 系統的安全侵犯(或誤用)可以被分類為故意的(惡意的)或意外的。

  • 意外誤用的預防比起惡意誤用的預防是較容易的。


The security problem1
安全問題(The Security Problem)

  • 惡意存取的形式有以下各種:

    • 未經授權的資料讀取(或竊取資訊)

    • 未經授權的資料修改

    • 未經授權的資料破壞

    • 阻止系統的合法使用(或拒絕服務)

  • 完全預防對系統的惡意傷害是不可能的。


The security problem2
安全問題(The Security Problem)

  • 為保護系統,必須以四個層級來衡量安全:

    • 實體:容納電腦系統的位置必須完全地安全預防武裝的或祕密的侵入者侵入。

    • 人員:使用者必須小心地審查,以降低授權給一個使用者而其郤讓侵入者存取的機會。

    • 網路:許多電腦資料透過私人網路、分享網路或撥接在系統中傳送。資料的截取如同非法侵入電腦一樣危險。訊息的截取可能是一個遠端拒絕服務的攻擊及減少使用者對系統的使用及信賴。

    • 作業系統:系統必須自我防護意外的或有目的安全破壞。


The security problem3
安全問題(The Security Problem)

  • 若作業系統安全可以被保護,前兩種層級必須保持。

  • 在許多的應用中,確認電腦系統的安全是具有價值的。Ex:薪資,營業資料。

  • 系統硬體必須提供保護以允許安全作業的實施。例如,MS-DOS及麥金塔作業系統(Macintosh OS)提供小部分的安全。

  • 但比起在系統建立之前設計和實施作用,增加作用到作業系統是較困難的。之後的作業系統,例如:Window NT,從一開始就設計提供安全作用。


User authentication
使用者的認證(User Authentication)

  • 對作業系統而言一個主要的安全問題是認證。

  • 如何決定使用者的確認是真實的?一般而言,認證根據三項目中的一項或多項:

    • 使用者的財產(鑰匙或卡片)

    • 使用者的認識(使用者名稱及密碼)

    • 使用者的屬性(指紋、視網膜辨識或簽名)


Passwords
密碼(Passwords)

  • 最常用來確認使用者的方法是使用密碼。

  • 當使用者採用使用者的編號或名稱來作確認,他會被要求輸入密碼。

  • 若使用者提供的密碼和存在系統中的密碼相符合,則系統假設這個使用者是合法的。

  • 在缺乏較完整保護計劃之下,密碼通常被用來做電腦系統的保護目的。他們被視為一種特別的鑰匙或資格。

  • 不同的密碼可能和不同的存取權限有關。例如,不同的密碼可能可以讀取、增添及檔案更新。


Password vulnerabilities
密碼的弱點(Password Vulnerabilities)

  • 密碼非常普遍,因為它容易被瞭解及使用。但密碼會被猜測、意外的暴露、查察或不合法的從授權的使用者傳送到未授權的使用者。

  • 有兩種猜測密碼的方法:

    • 侵入者認識或擁有使用者的資訊。一般人常使用明顯的資訊當作他們的密碼。

    • 使用蠻力,嘗試所有字母、數字、標點符號的可能組合,直到找到密碼。


Password vulnerabilities1
密碼的弱點(Password Vulnerabilities)

  • 密碼安全可以由於視覺或電子監視系統的暴露而失敗。當使用者登入時,侵入者可以透過使用者的肩膀偷看及從鍵盤而簡單的得知密碼。

  • 另外,任何人可以使用存在的電腦進入網際網路,而增加網路的監視、允許他看所有在網路上傳送的資料,包括使用者編號及密碼。

  • 將包括密碼的資料加密可以解決這樣的問題。


Password vulnerabilities2
密碼的弱點(Password Vulnerabilities)

  • 若密碼寫在可以被讀取或遺失的地方,則暴露是非常嚴重的問題。

  • 有些系統強迫使用者選擇不易記憶或較長的密碼。極端一點的要求則可能使使用者記下密碼,比起允許簡單密碼的系統,其郤提供較少的安全。

  • 密碼洩露的最後一種方法-非法移轉,其是由於人為因素。大部分的電腦安裝有一個禁止使用者共享帳號的規定。有時候使用者違反帳號共享的規定來幫助朋友或做會計詐欺,而這樣的行為導致系統被未授權的使用者存取。


Password vulnerabilities3
密碼的弱點(Password Vulnerabilities)

  • 密碼可能由系統產生或使用者所選擇。

    • 系統所產生的密碼可能很難記住,而使用者可能要寫下密碼。

    • 使用者所選擇的密碼通常容易被猜測到。

  • 有些裝置,管理人員偶爾會檢查使用者的密碼並通知使用者是否他的密碼太短或容易被猜測。

  • 一些系統也要求使用者定期的更改他的密碼。

  • 在一些系統實施的解決方式是記錄每個使用者使用過的密碼。例如,系統可以記錄最後N個密碼並不允許再使用他們。


Password vulnerabilities4
密碼的弱點(Password Vulnerabilities)

  • 密碼可以經常的更改。

  • 在極端的情況下,每一個期間都要改變密碼。每個期間結束時必須選擇新密碼,將其給下個期間使用。

  • 在這情形下,縱使密碼被誤用,它只能被使用一次。

  • 當合法的使用者在下個期間使用一個現在無效的密碼,他會發現違反了安全。


Encrypted passwords
密碼加密(Encrypted Passwords)

  • 系統如何將密碼安全地的儲存,在當使用者輸入密碼時再使用他們做確認?

  • UNIX系統使用加密來避免維持密碼保密的必要性。

  • 系統包含一個困難的逆轉函數,但是郤易於計算。就是說,給一個x值,很容易去計算出f(x)值。但給一個函數值f(x),則不可能算出x。

  • 這函數用來對所有密碼做編碼。只有加密後的密碼被儲存起來。

  • 當使用者輸入一個密碼,它將被編碼並與之前儲存起來的加密密碼做比較。


Encrypted passwords1
密碼加密(Encrypted Passwords)

  • 即使加密的密碼被看到,它也無法被解密而決定出密碼。因此,密碼檔就不必保密了。

  • 這方法的缺點是系統不再對密碼做控制。

  • 雖然密碼被加密,但任何有密碼檔副本的人可以很快的執行編碼程式來找出密碼。

  • 由於UNIX系統使用眾所皆知的編碼演算法,駭客可能保有一個密碼索引的快取記憶體,可以快速的找到密碼。因為這個原因,新版本的UNIX將加密的密碼儲存起來,只有管理的使用者可以讀取。


Encrypted passwords2
密碼加密(Encrypted Passwords)

  • 另一個UNIX系統中密碼方法的弱點,是許多UNIX系統只處理比較重要的前八個字元,所以對使用者而言,如何利用可使用的密碼空間是特別重要的。

  • 為避免字典式編碼法,有些系統不允許使用字典中的字當作密碼。

  • 一種技術是藉由一個容易記住的常用語之每一個字的第一個字來產生密碼,或將較大與較小的兩個字元加入數字或標點符號。

  • 例如,”My mother’s name is Katherine.“可能產生密碼”MmnisK“。這個密碼很難破解,但是很容易被使用者記住。


One time passwords
單次密碼(One-Time Passwords)

  • 為避免密碼被偷看和背後偷窺的問題,系統可以使一個配對密碼的集合。

  • 當對話開始時,系統隨機選機選取並顯示密碼的一部分;使用者必須提供另一部分。在這系統下,使用者被詢問並且必須回答正確的答案。

  • 這方法可以使用像密碼一樣普遍的演算法。系統隨機的選取一個整數並顯示給使用者。使用者應用函數並提供一個正確的結果。系統也應用函數。若兩個結果吻合,則允許存取。


One time passwords1
單次密碼(One-Time Passwords)

  • 這種包含使用演算法的密碼方法是不容易暴露的。

  • 在單次密碼系統中,每一個時刻的密碼都不相同。

  • 任何一個從一對話所攔截的密碼,嘗試在另一次對話時使用都會失敗。

  • 單次密碼是唯一可以預防由於密碼暴露而產生不適當認證的方法。


One time passwords2
單次密碼(One-Time Passwords)

  • 使用單次密碼產生器及個人確認碼是二因子確認(two-factor authentication)的一種型式。

  • 二因子確認比起單因子確認提供較佳的確認預防。

  • 單次密碼的另一種變化是使用編碼簿或是單次鍵盤,其是一個單獨使用的密碼目錄。

  • 在這方法中,在目錄中的每一個密碼只使用一次,然後將它註銷或刪除。普遍使用的S/Key系統不是使用軟體計算機,就是使用根據這些計算所建立的編碼簿,當作是單次密碼的來源。


Biometrics
生物測定(Biometrics)

  • 在使用密碼的認證上有許多其他的變化。例如,掌上型或手持型讀取機。

  • 讀取機將從手持型讀取機所讀取到資料與儲存的參數做配對。但這些儀器被用來做一般電腦的認證是太冗長且昂貴的。

  • 指紋讀取器是較準確且具有成本效益的。

  • 這樣的儀器讀取你的手指紋路並且轉換成一個數字的序列,並和儲存的序列做比較,決定讀取機上的手指是否和儲存的相同。


Biometrics1
生物測定(Biometrics)

  • 一個非常精準的二因子確認系統可以由使用者的名稱及指紋掃瞄來產生所需要的密碼。

  • 若資訊在傳送時被加密,系統可以完全的抵抗欺騙或重覆的攻擊。


Program threats
程式威脅(Program Threats)

  • 當程式由某一個人撰寫,而由另一個使用者使用,誤用及不可預期的行為可能產生。

  • 可能發生行為的一般方法有:

    • 木馬

    • 走後門

    • 資料超載


Trojan horse
木馬(Trojan Horse)

  • 許多系統有允許使用者撰寫程式而由其他使用者執行的機制。若程式提供執行的使用者存取定義域(domain)的權利,他們可能誤用這些權利。

  • 例如,一個文字編輯的程式可能包含編輯去尋找某個關鍵字的程式。若有任何發現,則全部的檔案可能被拷貝到一個可被文字編輯器可以存取的特別區域。一個被誤用的編碼部分,它的環境稱為木馬(Trojan Horse)。


Trojan horse1
木馬(Trojan Horse)

  • 冗長的搜尋路徑,如在UNIX系統,使得木馬的問題惡化。

  • 搜尋路徑列出當給予含糊不清檔名時所要搜尋目錄集合。此路徑將搜尋該名稱的檔案,並執行該檔案。

  • 在搜尋路徑中的所有目錄必須保密,否則木馬可能潛伏到使用者路徑中,並意外地執行該檔案。


Trojan horse2
木馬(Trojan Horse)

  • 木馬的一個變化是程式會模擬登入程式。

  • 一個使用者開始在終端機登入並且注意到他的密碼輸入錯誤。他再試一次並且成功了。發生什麼事呢?

  • 他的密碼及認證被登入模擬程式所竊取,這個模擬程式是小偷在終端機旁邊所執行。模擬程式將密碼儲存起來,列印出登入錯誤訊息並且退出,而使用者會立刻提供一個真正的登入。


Trap door
走後門(Trap Door)

  • 程式或系統的設計者可能在軟體中留下一個只有自己可以使用的漏洞。

  • 例如,程式編寫人員可以藉由在程式中加入錯誤的四捨五入,讓偶爾出現的半分錢進入到他們的帳戶中,以盜取銀行的例子。

  • 聰明的後門可以將它放在編輯程式中。編輯程式可以產生如同標準目的碼的後門,而不論其原程式為何。


Trap door1
走後門(Trap Door)

  • 這是一項非常惡劣的行為,因為檢查原始程式亦無法發現任何安全性的問題。只有在編輯程式中才包含該資訊。

  • 後門造成一個很困難的問題,因為為了找出它們,必須分析系統所有的原始程式。若軟體系統包含數百萬的程式,這分析是無法經常去做的。


Stack and buffer overflow
堆疊和緩衝區的超載(Stack and Buffer Overflow)

  • 堆疊和緩衝區的攻擊是網路或採用撥接的系統外攻擊者最常使用的方法,以此來取得未授權的存取目標系統。

  • 一個系統授權的使用者也可能採用這種行為來增加他的權限,以獲得使用者的特殊權限。

  • 此種攻擊是利用程式裡的錯誤來執行。

  • 錯誤可以是簡單又粗糙的編輯程式,比如該程式編輯人員忘記編寫檢查輸入欄位的範圍。

  • 在這例子中,攻擊者傳送超過程式所預期的資料。


Stack and buffer overflow1
堆疊和緩衝區的超載(Stack and Buffer Overflow)

  • 反覆測試或檢查被攻擊程式的原始碼,攻擊者找出程式弱點並寫程式來做以下的事情:

    • 輸入超額的欄位、命令列參數或輸入緩衝區,例如,在惡劣的網路中,直到寫入堆疊為止。

    • 把堆疊中目前的返回位置用下一步驟的入侵程式碼位置將其覆蓋掉。

    • 在堆疊中寫入簡單的編碼程式,其中包括攻擊者想要執行的命令列,例如:產生shell。


Stack and buffer overflow2
堆疊和緩衝區的超載(Stack and Buffer Overflow)

  • 例如,若一個網頁要求在一個欄位中輸入使用者名稱,攻擊者可以傳送使用者名稱,加上額外的字元使緩衝區超載並達到堆疊,再加上放入堆疊中的新返回位置,以及攻擊者想要執行的程式。

  • 當讀取緩衝區的副程式從執行返回時,返回位置就是入侵碼,則入侵程式將被執行。


Stack and buffer overflow3
堆疊和緩衝區的超載(Stack and Buffer Overflow)

  • 緩衝區超載的攻擊是非常惡劣的,它可以在系統中執行並且在允許的傳送途徑中移動。這種攻擊會在被用來和機器通信的協定中發生,而且很難發現及預防。他們甚至可以繞過增加安全性的防火牆。

  • 這個問題的一個解決方式是CPU不允許在堆疊區的記憶體的程式有被執行的功能。


Stack and buffer overflow4
堆疊和緩衝區的超載(Stack and Buffer Overflow)

  • 最新版本的Sun’s SPARC包含這項設定,最新版本的Solaris也有這個功能。

  • 被超載程式的返回位置依然可以被修改,但是當返回位置在堆疊之中,而此程式碼試圖執行時,例外就發生,程式會因為錯誤而停止。


19 4 19 4 1 worms
19.4系統威脅19.4.1蟲﹝Worms﹞

  • 蟲是一種使用複製(spawn)機制去癱瘓系統運作的行程。蟲產生複製自己的本身,耗用系統資源且或許鎖定所有其他系統的使用。在電腦網路下,蟲是特別有效的因為他們可能在系統中再複製他們自己和因此癱瘓整個網路。

  • 1988年UNIX在網際網路上就發生一個這樣的案件,導致系統和工程師時間數百萬美元的損失。


1988 11 02 robert tappan morris
1988/11/02;Robert Tappan Morris

  • 一年級Cornell的學生,散發蟲的程式在一個或多個連結至網際網路的主機上。目標Sun Microsystem’s Sun三個工作站和VAX執行不同的BSD UNIX Version 4的電腦,病蟲很快就散佈至無遠弗屆了;在它散佈的數小時內,它已耗用受感染機器的系統資源至嚴重的地步。

  • 雖然Robert Tappan Morris為了快速再複製及分布而設計自我複製的程式,但是UNIX網路環境的特色提供了方法去繁殖傳送這病蟲。有可能最初的感染目標是Morris選擇開放給外部使用者可存取的網路主機。從此,病蟲程式利用UNIX作業系統安全性的缺失及利用UNIX簡化區域網路內資源分享的公用程式使上千個其他連線站可以未授權的取得。


Morris
Morris的攻擊方法

rsh侵略

finger 侵略

掛鉤

Sendmail 侵略

對蟲作要求

蟲送出

目標系統

已感染系統


rsh 攻擊

  • Morris利用UNIX網路的公用程式,rsh,簡單促進了遠端工作的執行。

  • 藉著建立特殊的檔案其列示主機-簽到姓名組合,使用者每次可以忽略輸入密碼當他們每次利用這些組合存取遠端帳號。

  • 病蟲尋找這些檔案其站名允許不用密碼的遠端執行。只要遠端的殼(shell)被建立了,病蟲程式就被載入了且開始重新執行。


Finger
finger 侵略

  • finger user-name @ hostname

    其送回個人的真實和登入名字和其他使用者所提供的資訊,如辦公室和家裡住址及電話,研究計畫或生日。

  • 易受惡意侵入的關鍵點是讀取輸入沒有檢查溢位界限。程式碼執行緩衝區溢位攻擊。Morris程式以536位元組的字質詢finger巧妙地超出配置給輸入的緩衝區且覆蓋掉堆疊區。

  • 所以finger並不返回Morris呼叫前它所在的主程式,而是被安排到一個放在堆疊區中入侵的536個位元組的副程式。這新的副程式執行/bin/sh(簽入程式),如果成功的話,就給這蟲在受攻擊的電腦上提供一遠端的殼。


Sendmail
Sendmail 侵略

  • Sendmail安排網際網路環境下的電子郵件。

  • 偵錯功能對系統管理者是有用的,偵錯碼(Debugging code)允許測試者去驗證和展示郵件系統的狀態。

  • Morris在他攻擊的行動中包括偵錯指令,不同於一般測試是辨別使用者地址,其發出了一組的指令用以郵寄和執行掛鉤程式的複本。


後續行動

  • 一旦進入位置,主要的蟲採取有系統的方法去發現使用者密碼。它先嘗試沒有密碼或帳戶組成的密碼是使用者名字組合,然後比較內部432個密碼選擇的字典,然後進行最後的步驟是嚐試標準UNIX線上字典的每一個字作為可能密碼。

  • 這種精細的且有效率的三階段破解密碼規則使蠕蟲可以存取受感染系統其他使用者的帳戶。蠕蟲然後尋找rsh資料檔案在新破解的帳號。任何rsh進入被嘗試後,就像之前描述的,蠕蟲可以接取其他遠端系統的使用者帳號。

  • 在每次新的存取時,蠕蟲程式會尋找已經再動作的自我複製。如果找到有一個存在時,新的拷貝就會退出,除了在第7次發生時之外。由於允許每7次時的複製,所以若藉由假蟲作誘餌使拷貝都退出而破壞其散佈的行動將會失敗。


19 4 2 viruses
19.4.2病毒(Viruses)

  • 像電腦蠕蟲一樣,病毒設計來廣佈至其他程式和可以對系統造成破壞,包括修改或摧毀檔案和引起系統故障或當機。然而蠕蟲的結構是完整、獨立的程式,病毒是嵌入合法的程式內的片段程式碼。

  • 多個使用者的電腦,病毒的威脅較弱因為可執行的程式其作業系統有被寫入的保護。病毒的擴散是因為使用者從公告電子版下載含有病毒的程式或磁牒片交換中包含感染。



19 4 3 denial of service
19.4.3服務拒絕有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。 (Denial of Service)

  • 沒有牽涉到獲取資訊或偷取資源,但會讓一系統或設備無法合法使用。

  • 這些攻擊通常以網路為基礎。他們有兩種種類。第一種的攻擊是耗用很多設備資源,本質上,沒有有用的工作可被執行。例如,網站可下載Java Applet進而使用所有可用的CPU時間。

  • 第二個案例是打斷設備的網路。有很多對主要網站之成功的服務拒絕攻擊。他們起因於TCP/IP一些基本功能的濫用。例如,如果攻擊者送出Protocol的一部分其內容是「我想要開始TCP連結」但從未遵從準則「連線現已完成」,有可能很多部分開始的TCP區段可以吃掉系統整個網路資源,無法任何進一步的合法TCP連線。


19.5有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。安全的系統和設備

  • 改善系統安全性的一方法是週期性的巡視系統以防止安全的漏洞。

    短或容易猜中的密碼 ;非預期的長期執行過程

  • 網路式的電腦系統較孤立式之系統更容易遭保密性之破壞。事實上,美國聯邦政府將具有最高機密的系統只能由具有最佳保密之建築物內存取。如果能以任何形式自該環境之外與該系統溝通,該系統便失去最高機密的等級。

  • 很不幸地,對於系統管理者和專業的電腦保密而言,將機器鎖在房間之中或拒絕所有的遠方存取常常是不可能的。例如,網際網路經常連接數百萬部的電腦。


經由擋火牆完成範圍區域的網路保密有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。

由群體電腦對網路作存取

網路

擋火牆

群體電腦

由網路對DMZ作存取

DMZ和群體電腦之間的存取

DMZ

擋火牆是一部電腦或一個選進器(router),它設立在可信任和不可信任的系統之間。它限制兩個安全範圍之間的網路存取、監督和記錄所有的連結。

有時,控制的溝通是可以被允許的在DMZ電腦和群體的電腦之間。例如,DMZ網站伺服器可能需要詢問公司網路資料庫伺服器。擋火牆的另一弱點是spoofing,其未授權的主機假裝已經授權的主機藉由符合一些授權規定。


19.6入侵偵測有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。

  • 入侵偵測就是努力去偵測企圖或成功的電腦系統入侵和對其採行適當的反應。入侵偵測包含一連串的技術且隨X軸數目而有不同。一些X軸包括:

    ◎偵測發生的時間:真實時間(當它正在發生)或僅在事實之後

    ◎輸入檢驗以偵測入侵活動的種類。處理系統指令,網路封包標題或內容

    ◎反應能力的範圍。簡單的反應形式包括警告管理者有潛在的入侵或停止潛在入侵的活動。在一複雜的反應形式,系統可能轉移入侵者之活動至trap-暴露給攻擊者之錯誤的資源為了監督和獲取攻擊的資訊。

  • IDSs, 入侵偵測系統的學問。


19 6 1 what constitutes an intrusion signature based detection
19.6.1 有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。What constitutes an Intrusion簽名為基礎的偵測(signature-based detection)

  • 系統輸入或網路壅塞是被檢驗的依照已知的特定行為模式去偵測攻擊。簡單的例子是監督多次企圖登入帳戶卻失敗,因為這是試著猜此帳戶密碼的共同徵兆。

  • 企圖描繪出危險的行為和偵測當這些行為發生時,僅能辨別已知的攻擊其編撰於可識別的模式。因此,新的攻擊將會避開簽名為基礎的偵測當簽名較早產生時。這問題對病毒偵測軟體提供者而言是已知的所以會以高頻率釋放新的簽名當新的病毒產生時。


Anomaly detection
異常偵測(有時,病毒感染的宣告是高度媒體關注的。米開朗基羅即是,病毒被安排於刪除受感染的硬碟檔案在1992/03/06,此大藝術家的517歲生日。大部分的商業套裝對付一些知名的病毒是有用的。反病毒軟體尋找特殊形式的家族相對於單一形式以辨別病毒。anomaly detection)

  • 指的是企圖在電腦系統內偵測出異常行為的技術。當然,不是所有的異常行為活動就是入侵,但是前提是入侵通常導致系統有異常行為。

  • 例子是監督背景過程的系統指令以偵測是否系統指令行為與正常模式有偏差,如偵測使用者異常登入時間 。

  • 異常偵測企圖描繪出非危險(正常)的行為和偵測當除了這些行為發生時。

  • 限制:入侵活動可能被包括於「正常」的標竿;即使沒有入侵行為的任何影響,則標竿也必須是相當完整之正常行為描述,否則錯誤警告的機會會相當多。

  • 以下例子暗示說一個IDSs通則:為了可使用性,一IDSs必須提供極低的錯誤警告率。而這對異常偵測系統來說是一極大的挑戰,因為適當標竿正常系統行為的困難度。


為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個UNIX工作站,其安全事件相關的紀錄為了入侵偵測的目的被記錄。一小型安裝可簡單產生每天100萬筆的稽核記錄。然而,僅有一或兩個值得管理者調查。如果我們假設,樂觀地,每一這樣的攻擊會反應十筆稽核記錄,我們可大約計算稽核記錄發生反應真實入侵活動的比率:

以上解釋為「入侵記錄的發生比率」,以 表示

I 事件是記錄發生反應真實入侵行為的發生。


因為, 我們也知道為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

現讓A代表IDS提醒警告的事件。

一正確的IDS應極大化 和

即是警告指出一入侵和沒警告指出沒入侵的機率。

現在焦點集中於 ,我們可以使用Bayes’ theorem計算:

現在考慮中 錯誤警告率 的影響。

即使有非常好的、真實的警告率

或看似好的、錯誤的警告率 使得

代表每七個中有少於一個指出真實入侵。系統的安全管理者調查每一警告,這錯誤警告率是極度浪費且會使管理者很快地疏忽警告。


19 6 2 auditing and logging
19.6.2 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Auditing and Logging

  • 入侵偵測常見的方法是審計軌跡處理,其攸關安全事件是被登入於一審計軌跡而後配合攻擊簽名(在簽名基礎的偵測)或分析異常行為(在異常偵測)。

  • 在UNIX系統,一對簡單的程式可以被使用來創造和分析審計軌跡和開始反應,其是syslog和swatch。


Syslog
Syslog為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個程式

  • 其創造審計軌跡和提供攸關安全訊息,可以讓事件紀錄顯示到主控台、寫進檔案或裝置、或是送電子郵件出去。事件紀錄可以存在本地主機上,也可以透過網路送給其他機器。

  • 當Syslog建立於UNIX系統,所謂的syslogd背景環境過程在系統開始時是被建立的。Syslog過程等待不同可能資源的訊息和傳送他們於syslog.conf 配置檔(通常在/etc/目錄)。

  • 檔案syslog.conf包含一對,每一包含selector field和action field。


選擇欄位為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個:指定訊息形態及優先順序。

指定訊息形態:每筆syslog訊息都對應到一種主要設施,如:

Log_Authpriv-身分驗證相關系統,但會紀錄在一個只有特定權限人員才能觀看的檔案。

Log_User-使用者程序產生的訊息。

優先順序:根據發生的緊急狀況,每筆訊息會被syslog精靈賦予優先順序,如:

Log_EMERG-系統錯亂狀況。

Log_ALLERT-必須立即矯正的狀況,如系統資料庫毀損。

Log_CRIT-急迫狀況,如硬碟故障。

行動欄位:指定當syslogd收到符合選擇欄位規則的訊息時,應採取的行動(指定這筆訊息應送到何處)。應用於訊息的行動種類包括送出訊息至一個檔案,至使用者清單。


Swatch
Swatch為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個程式

  • 它處理藉由syslogd背景環境(或其他登入程式)的傳送訊息和起始活動當特定模式被偵測到。

  • 它被設計用來主動監督透過syslog機制寫入紀錄檔的訊息;也可作為稽核用途來檢視查核某紀錄檔案的內容。

  • 只要符合UNIX通用表達語法,Swatch程式就可篩選出符合特徵的事件(如”(panic│halt)”即符合系統錯亂或停擺的訊息)並採取適當的行動。Swatch程式配合每一審計訊息和列於配置檔中通用表達語法。

  • 允許的行動包括回應swatch的控制終端機,swatch的控制終端機會響鈴,藉由電子郵件或寫的指令發送訊息至管理者或通知使用者,或以反白字體顯示訊息。


19 6 3 tripwire
19.6.3 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Tripwire

  • 簡單的異常偵測工具的例子是UNIX的Tripwire檔案系統完整性檢查工具,發展於普渡大學。

  • Tripwire的運作前提是一大種類的入侵導致系統目錄或檔案的異常修改。 它是一種工具去監督檔案系統的增加刪除或修改的檔案,和警告系統管理者關於這些修改。

  • 所有的檔案或目錄都在tw.config內,每個項目附有一個選擇濾罩,告訴程式在檢查時應檢查或忽略哪些屬性。如/home/xyz+s-a即告訴Tripwire檢查/home/xyz的檔案大小是否有變化,但忽略存取時間的戳記。


selection為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個工作可能建構檔案內容,或是更明確地應用預先設定的hash功能對檔案內容的結果,監督改變。Tripwire為此目的提供多個不同的Collision-resistant hash功能,其hash功能f如果是Collision-resistant,給予 的結果當應用f至輸入檔案x時,它是不能實現的計算去計算一不同檔案 ,像

因此監督一個檔案改變的hash是和監督檔案本身一樣好的,因為存取檔案hash需要較少的空間 。


New database為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

generate

tw.config

Baseline

database

compare

Stored files

Apply masks

Tripwire

report

第一次執行時,Tripwire會製作簽章基準資料庫。以後再次執行時,會讀取tw.config組態檔的內容,並製作新的簽章資料庫,然後比對兩個資料庫(檔案或包含監督屬性目錄的簽名:如inode屬性和hash值),並用選擇濾罩套用在指定檔案上(如有些經常變動的檔案不用檢查),然後產生報表(改變或增加或刪除的檔案)。


19 6 4 system call monitoring
19.6.4 System-Call monitoring為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • This approach process system calls to detect in real time when a process is deviating from expected behavior.

  • For large and complex programs,the approach may not be easily determined.

  • Intrusion that might be detected this way are attacks that take over the process.


19 6 4 system call monitoring1
19.6.4 System-Call monitoring為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

Usual Sequence:open , read , mmap , mmap , open , getrlimit , mmap , close

IntrusionSequence:open , read , mmap , open , open , getrlimit , mmap , close


19 6 4 system call monitoring2
19.6.4 System-Call monitoring為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Root processes are an attractive target for this technique because they have a limited set of behaviors and do not change often.

  • The attacker may have a copy of the software that it plans to attack, and may try various intrusions until one is found.


19 7 cryptography
19.7 Cryptography為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • 傳送端不能確定封包會被誰接收

  • 接收端不能確定封包會是誰傳出來的

    • Network packets arrive with a source address

  • The only alternative is to eliminate the need to trust the network. This is the job of cryptography.


19 7 2 encryption
19.7.2 Encryption 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Components:

    • K:key

    • M:message

    • C:ciphertexts

    • E:K(MC)

      • 即E(K)(M)=C 以k為key,把M這個明文加密成密文c

    • D:K(CM)

      • 即D(K)(C)=M 以k為key,解密文C


19 7 2 encryption1
19.7.2 Encryption為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • There are two types of authentication algorithms

    • Symmetric encryption algorithm(對稱)

      • Data encryption standard(DES)

      • Advanced encryption algorithm(AES)

    • Asymmetric encryption algorithm (非對稱)

      • N=p*q 35=7*5

      • [d,(p-1)(q-1)]=1 6*4=24 d取11

      • e*d mod (p-1)(q-1)=1 e*11 mod 24=1 e取11

      • <e,n>為公開的key <11,35>

      • <d,n>為私人的key <11,35>


19 7 2 encryption2
19.7.2 Encryption為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Asymmetric encryption algorithm (非對稱)

    • <e,n>為公開的key <11,35>

    • <d,n>為私人的key <11,35>

    • E(m)=me mod n =C E(m=3)=m11 mod 35 =12=C

    • D(c) =Cd mod n =m D(c=12)=C11 mod 35 =3=m


19 7 1 authentication
19.7.1 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Authentication

  • Constraining the set of potential senders of a message is called authentication.

  • Components:

    • K:key

    • M:message

    • A:authenticators:認證因子

    • S:K(MA)

      • 即S(K)(M)=A 以k為key,把M這個明文改成認證因子

    • V:K(MxA{true,false})

      • 即V(K)(M,A)=true or false 以k為key,驗證m和a是否符合


19 7 1 authentication1
19.7.1 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Authentication

  • Authentication algorithms come in two main varieties

    • Message authentication code(MAC)

      • V(k)和S(k)是對稱的

      • S(k)(m)=a

        • 必須是單向

        • 必須是collision-resistant S(k)(m)=a S(k)(m’’)=a

      • V(k)(a)=true or false


19 7 1 authentication2
19.7.1 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Authentication

  • Digital signature

    • 非對稱性的V(k)和S(k)

    • <e,n>為公開的key

      • <5,119> 119=7*17

    • <d,n>為私人的key

      • <77,119>

    • S(<d,n>)(m)=a 是私人key

      • S(m=19)=m5 mod 119 =66=a

    • V(<e,n>)(m,a)=true of false 是公開key

      • m=19 6677 mod 119 =19


19 73 encryption example ssl
19.73 Encryption Example - SSL為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • SSL – Secure Socket Layer

  • Cryptographic protocol that limits two computers to only exchange messages with each other.

  • Used between web servers and browsers for secure communication (credit card numbers)

  • The server is verified with a certificate.

  • Communication between each computers uses symmetric key cryptography.


19 73 encryption example ssl1
19.73 Encryption Example - SSL為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

2.nc

1.由CA取得KCA

1.由CA取得KCA

3.ns|S(kCA)(ID,E(kS),time)

4.V(kCA)(ID,E(kS),time,a)

5.隨機產生pms

6.cpms=E(kS)(pms)

7.pms=D(kS)(cpms)

8.ms=f(nc,ns, pms)

8.ms=f(nc,ns, pms)

client

server


19 73 encryption example ssl2
19.73 Encryption Example - SSL為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Client and server both compute the following keys from the ms

    • A symmetric encryption key

    • A symmetric encryption key

    • A MAC generation key

    • A MAC generation key


19 73 encryption example ssl3
19.73 Encryption Example - SSL為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Client送給server

  • Server解碼

  • Server驗證


19 7 4 use of cryptography
19.7.4 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Use of Cryptography


19 7 4 use of cryptography1
19.7.4 為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個Use of Cryptography

  • Cryptography can be inserted at almost any layer in this model.

    • SSL:transport layer

    • IPSec:network layer

  • There is no definitive answer as to where cryptographic protection is best

    • More protocols benefit from protections placed lower in the protocol.

    • Protection at lower layer in the protocol stack may give insufficient protection.


19 8 computer security classifications
19.8 Computer Security Classifications為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • U.S. Department of Defense (美國國防部)outlines four divisions of computer security: A, B, C, and D.

  • D – Minimal security.

    • ex dos,win3.1

  • C – Provides discretionary protection through auditing. Divided into C1 and C2.

    • C1 identifies cooperating users with the same level of protection. Use Trusted Computer Base (TCB) .Ex: unix

    • C2 allows user-level access control.


19 8 computer security classifications1
19.8 Computer Security Classifications為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • B – All the properties of C, however each object may have unique sensitivity labels. Divided into B1, B2, and B3.

    • B1:分級,下級的不能讀上級的

    • B2:把sensitivity labels應用到系統資源上

    • B3:應用access-control lists

  • A – Uses formal design and verification techniques to ensure security.

    • 必須是特定的人在特定的電腦上

  • 其它:


19 9 windows nt example
19.9 Windows NT Example為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Configurable security allows policies ranging from D to C2. config.exe

  • Security is based on user accounts where each user has a security ID.

    • 只要一登入就產生一個security access token(權限,群組等)

    • 一旦有帳號和密碼的話


19 9 windows nt example1
19.9 Windows NT Example為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Uses a subject model to ensure access security. A subject tracks and manages permissions for each program that a user runs.

    • Simple subject 監督登入

    • Server subject 監督使用者行為


19 9 windows nt example2
19.9 Windows NT Example為了敘述錯誤警告高邊際比率的影響,假設一安裝包含幾十個

  • Each object in Windows NT has a security attribute defined by a security descriptor. For example, a file has a security descriptor that indicates the access permissions for all users.

    • Security descriptor包含security ID,group security ID,access-control list,system access control

  • Container objects , Noncontainer objects


ad