第八章 : 電腦網路的安全性
Post on 27-Jan-2016
54 Views
Preview:
DESCRIPTION
TRANSCRIPT
8: Network Security 8-1
第八章 : 電腦網路的安全性章節目標 : 了解網路安全的原則 :
密碼學以及機密上的應用 認證 訊息完整性 金鑰分送
實際的安全性 : 防火牆 應用程式、傳輸層、網路層、連結層的安全性
8: Network Security 8-2
第八章 電腦網路的安全性
8.1 何謂網路安全 ?8.2 密碼學的原理8.3 認證8.4 完整性8.5 金鑰分送和認證8.6 存取控制:防火牆8.7 攻擊和反制8.8 各層的安全
8: Network Security 8-3
何謂網路安全 ?
機密 : 只有傳送端和所希望的接收端才能夠了解傳送訊息的內容傳送端將訊息加密接收端將訊息解密
認證 : 傳送端和接收端希望能確認彼此的身分訊息完整性 : 傳送端和接收端希望能確認訊息不
會被更改而沒有察覺 ( 傳輸中或之後 )可利用性和存取控制 : 服務必須是使用者可利用
及存取的
8: Network Security 8-4
朋友與敵人 : Alice, Bob, Trudy 網路安全的世界中的常見情況 Bob, Alice ( 情人 !) 想要”安全地”交談 Trudy ( 入侵者 ) 可能想介入或者對訊息作增減
安全的傳送端
安全的接收端
通道 資料 , 控制訊息
資料 資料
Alice Bob
Trudy
8: Network Security 8-5
誰是 Bob 與 Alice?
… 嗯 , 真實生活裡他們是 Bob 和 Alice! 電子交易的 Web 瀏覽器 / 伺服器 ( 例如 , 線
上購物 ) 線上銀行用戶端 / 伺服器 DNS 伺服器 互相交換路由表更新的路由器 其它的例子 ?
8: Network Security 8-6
這裡是一些壞人 ( 以及壞女孩 )!
Q: 壞人可以做什麼 ?A: 很多 !
竊聽 : 攔截訊息 主動插入訊息到連接中 扮演 : 可以假扮 ( 欺騙 ) 封包中的來源位址 ( 或
封包中的任何欄位 ) 劫持 : “ 接管” 前進的連結,移除傳送端或接收端
,將他自己插入到適當的地方 阻斷服務 : 妨礙其他人使用服務 ( 例如,使資源超
出負荷 )
還有更多 ……
8: Network Security 8-7
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-8
密碼學的語言
對稱式金鑰密碼 : 傳送端和接收端的金鑰相同公開金鑰密碼 : 加密金鑰是公開的,解密金鑰是秘密 ( 私人的 )
明文 明文密文
KA
加密演算法 解密演算法
Alice 的加密金鑰
Bob 的解密金鑰K
B
8: Network Security 8-9
對稱金鑰密碼學替代祕文 : 由另一文字替代原本文字
單字母加密法 : 由另一字母替代原來字母明文 : abcdefghijklmnopqrstuvwxyz
密文 : mnbvcxzasdfghjklpoiuytrewq
明文 : bob. i love you. alice密文 : nkn. s gktc wky. mgsbc
範例 :
Q: 這個簡單加密法的破解難度 ?: 暴力法 ( 有多難 ?) 其他的 ?
8: Network Security 8-10
對稱金鑰密碼學
對秤金鑰密碼學 : Bob 和 Alice 共同知道同樣的金鑰 ( 對稱 ) : K
例如,在單字母加密法中,金鑰為取代樣式 Q: Bob和 Alice 要如何同意金鑰值 ?
明文密文
KA-B
加密演算法
解密演算法
A-B
KA-B
明文訊息, m
K (m)A-B
K (m)A-Bm = K ( )
A-B
8: Network Security 8-11
對稱金鑰密碼學 : DES
DES: 資料加密標準 (Data Encryption Standard) US 加密標準 [NIST 1993] 56- 位元的對稱金鑰, 64 位元的明文輸入 DES 有多安全 ?
DES 的挑戰 : 56 位元金鑰加密的片語 (“Strong cryptography makes the world a safer place”) 需要 4 個月來解密 ( 暴力法 )
嘗試解密沒有後門可走 讓 DES 更安全 :
每一筆資料使用連續的( 3-DES)金鑰 使用密碼區塊鏈
8: Network Security 8-12
對稱金鑰密碼學 : DES
初始排列 16 次相同的函式應用, 每一次使用不同的 48位元金鑰最終排列
DES 運作
8: Network Security 8-13
AES: 進階加密標準
新的 (2001年 11越 ) 對稱金鑰 NIST 標準,替代 DES
以 128 位元區塊處理資料 128, 192, 或 256 位元金鑰 暴力法解密 (嘗試每一個金鑰 ) , DES 需要
1 秒時, AES 需要 149 兆年
8: Network Security 8-14
公開金鑰密碼學
對稱金鑰密碼學 需要傳送端與接收端都
知道共享私密金鑰。 Q: 如何在第一次使用金
鑰時達到共識 (尤其是”如果從來沒遇過”)?
公開金鑰密碼學 完全不同的兩個方法
[Diffie-Hellman76, RSA78]
傳送端和接收端不需要分享私密金鑰
公開的加密金鑰。 (大家都知道 )
私人的解密金鑰 ( 只有接收端知道
8: Network Security 8-15
公開金鑰密碼學
明文訊息 ,m 密文加密演算法
解密演算法
Bob 的公開金鑰
明文訊息K (m)
B+
K B+
Bob 的私密金鑰
K B-
m = K (K (m))B+
B-
8: Network Security 8-16
公開金鑰密碼演算法
需要 K ( ) 和 K ( ) 使得B B. .
給定 公開金鑰 K , 應該不可能計算私密金鑰 K
B
B
需求 :
1
2
RSA: Rivest, Shamir, Adelson algorithm
+ -
K (K (m)) = m BB
- +
+
-
8: Network Security 8-17
RSA:選擇金鑰1.選出兩個大質數 p, q ( 例如,每個 1024 位元
2. 計算 n = pq, z = (p-1)(q-1)
3.選擇一個 e (e < n) 且 e 和 z沒有相同的因數 (即 e, z 互質 )
4.選擇一個 d 滿足 ed-1 能被 z 整除 . ( 換言之 : ed mod z = 1 )
5. 公開金鑰為 (n,e). 私密金鑰為 (n,d).
K B+ K B
-
8: Network Security 8-18
RSA: 加密 , 解密0.經由先前的計算得到 (n,e) 和 (n,d)
1.欲加密位元樣式 m,計算c = m mod
n
e ( 例如,以 n 除以 m 的餘數 )e
2.欲解密所接收到的位元樣式 c ,計算m = c mod
n
d ( 例如,以 n 除以 c 的餘數 )d
m = (m mod n)
e mod n
d神奇的事發生了 !
c
8: Network Security 8-19
RSA 範例 :
Bob 選擇 p=5, q=7. 則 n=35, z=24.e=5 (因此 e, z 互質 ).d=29 (因此 ed-1 正好可被 z整除 )
字母 m me c = m mod ne
l 12 1524832 17
c m = c mod nd
17 481968572106750915091411825223071697 12
cd 字母l
加密 :
解密 :
8: Network Security 8-20
RSA: 為 什 麼 m = (m mod n)
e mod n
d
(m mod n)
e mod n = m mod n
d ed
使用數論的結果 : 假如 p,q 為質數且n = pq, 則 :
x mod n = x mod ny y mod (p-1)(q-1)
= m mod n
ed mod (p-1)(q-1)
= m mod n1
= m
( 使用上面的數論結果 )
(既然我們選擇 ed 可除以(p-1)(q-1) 餘 1 )
8: Network Security 8-21
RSA: 一個重要的特質下面的特質在接下來非常實用 :
K (K (m)) = m BB
- +K (K (m))
BB+ -
=
先使用公開金鑰,然後是私密金鑰
先使用私密金鑰,然後是公開金鑰
結果是相同的 !
8: Network Security 8-22
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-23
認證目標 : Bob 要求 Alice 證明她的身份
協定 ap1.0: Alice 說“ 我是 Alice”
失敗的情況 ??“我是 Alice”
8: Network Security 8-24
認證Goal: Bob 要求 Alice 證明她的身份
協定 ap1.0: Alice 說“ 我是 Alice”
在網路中, Bob無法「看見」 Alice ,因此
Trudy 只要簡單地宣稱她自己是 Alice“我是 Alice”
8: Network Security 8-25
認證 : 另一種嘗試協定 ap2.0: Alice 在一個包含她的來源 IP
位址的 IP 封包中說 “我是 Alice”
失敗的情況 ??
“我是 Alice”Alice 的 IP 位址
8: Network Security 8-26
認證 : 另一種嘗試協定 ap2.0: Alice 在一個包含她的來源 IP
位址的 IP 封包中說 “我是 Alice”
Trudy 可以製造一個封包「假
扮」 Alice 的位址“我是 Alice”
Alice 的 IP 位址
8: Network Security 8-27
認證 : 另一種嘗試協定 ap3.0: Alice 說 “我是 Alice” 並傳送她的密碼以證明
失敗的情況 ??
“我是 Alice”Alice 的 IP 位址
Alice 的 密碼
OKAlice 的 IP 位址
8: Network Security 8-28
認證 : 另一種嘗試協定 ap3.0: Alice 說 “我是 Alice” 並傳送她的密碼以證明
重播攻擊法 : Trudy 記錄 Alice 的封包,稍後將
它重播給 Bob
“我是 Alice”Alice 的 IP 位址
Alice 的 密碼
OKAlice 的 IP 位址
“我是 Alice”Alice 的 IP 位址
Alice 的 密碼
8: Network Security 8-29
認證 : 再另一種嘗試協定 ap3.1: Alice 說 “我是 Alice” 並傳送她的加密密碼以證明
失敗的情況 ??
“我是 Alice”Alice 的 IP 位址
加密密碼
OKAlice 的 IP 位址
8: Network Security 8-30
認證 : 再另一種嘗試協定 ap3.1: Alice 說 “我是 Alice” 並傳送她的加密密碼以證明
記錄並重播還是可行 !
“我是 Alice”Alice 的 IP 位址
加密密碼
OKAlice 的 IP 位址
“我是 Alice”Alice 的 IP 位址
加密密碼
8: Network Security 8-31
認證 : 再另一種嘗試目標 : 避免重播攻擊
失敗,缺點 ?
Nonce: 編號 (R) 在生命週期中只使用一次ap4.0: 為了要證明 Alice 的存在, Bob 傳送 nonce, R 給
Alice。 Alice 必須回傳 R,以分享的私密金鑰加密
“我是 Alice”
R
K (R)A-B
Alice 是存在的,只有 Alice 知道用來加密 nonce 的
金鑰,因此她一定是 Alice!
8: Network Security 8-32
認證 : ap5.0
ap4.0 需要共享對稱金鑰 我們可以使用公開金鑰技巧來認證嗎 ?ap5.0: 使用 nonce, 公開金鑰加密法
“ I am Alice”
RBob 計算
K (R)A-
“將你的公開金鑰傳給我”
K A+
(K (R)) = RA
-K A
+
並知道只有 Alice擁有私密金鑰,可以加密 R使
得(K (R)) = RA
-K A
+
8: Network Security 8-33
ap5.0: 安全漏洞有人在中間攻擊 : Trudy 假扮成 Alice ( 對 Bob) ,假
扮成 Bob ( 對 Alice)
我是 Alice 我是 Alice
R
TK (R)
-
將你的公開金鑰傳給我
TK
+A
K (R)-
將你的公開金鑰傳給我
AK
+
TK (m)+
Tm = K (K (m))+
T-
Trudy 得到
傳送 m 給 Alice,以 Alice 的公開
金鑰加密
AK (m)+
Am = K (K (m))+
A-
R
8: Network Security 8-34
ap5.0: 安全漏洞有人在中間攻擊 : Trudy 假扮成 Alice ( 對 Bob) ,假
扮成 Bob ( 對 Alice)
很難察覺 : Bob 收到 Alice 傳送的所有訊息 , 反之亦然 ( 例如,因此 Bob和 Alice 可能在一週後見面並回想對話 ) 問題是 Trudy 也收到了所有的訊息 !
8: Network Security 8-35
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-36
數位簽章
密碼技術可類比於手寫簽章 傳送者 (Bob) 數位化簽署某份文件,表示他是文件
的擁有者 /製造者。 可證實的,不可偽造的 : 接收者 (Alice) 可以確認某
個人為 Bob ,簽署該文件且沒有其他人 ( 包括 Alice) 簽署
8: Network Security 8-37
數位簽章
訊息 m 的簡單數位簽章 : Bob 使用他的公開金鑰 KB 加密來簽署 m,產生簽署過的訊息 KB(m)
--
Dear Alice
Oh, how I have missed you. I think of you all the time! …(blah blah blah)
Bob
Bob 的訊息 , m
公開金鑰加密演算法
Bob 的私密金鑰 K B
-
Bob 的訊息 m,以他自己的私密金鑰簽署過的 ( 加密
的 )
K B-(m)
8: Network Security 8-38
數位簽章 ( 更多 )
假設 Alice 接收到訊息m和數位簽章 KB(m)
Alice 將 Bob 的公開金鑰 KB 應用到 KB(m) 並確認 KB(KB(m) ) = m ,因此驗證 Bob 簽署了 m。
假如 KB(KB(m) ) = m ,任何簽署 m 的人一定使用了 Bob 的私密金鑰
+ +
-
-
- -
+
Alice因此驗證 : Bob 簽署了 m. 沒有其他人簽署 m. Bob 簽署了 m 而非 m’.
不否認 : Alice 可以拿到 m, 並簽署 KB(m) 給法庭並證明 Bob 簽署了 m。 -
8: Network Security 8-39
訊息摘要
以公開金鑰來加密很長的訊息在計算上成本過高。
目標 :固定長度,容易計算的數位 “指紋”
使用雜湊函數 H 應用在m, 得到固定長度的訊息摘要, H(m)
雜湊函式特質 : 多對一 產生固定長度的訊息摘要
(指紋 ) 給予訊息摘要 x, 無法以計算的方式找到另一訊息摘要m,使得 x = H(m)
長訊息m
H: 雜湊函式
H(m)
8: Network Security 8-40
網際網路檢查和 : 較差的密碼雜湊函數
網際網路檢查和具有雜湊函數的某些特質 :產生固定長度的訊息摘要 (16- 位元和 ) 是多對一的但是對某個給定雜湊值的給定訊息來說,很容易找到另一個具
有相同雜湊值訊息 :
I O U 10 0 . 99 B O B
49 4F 55 3130 30 2E 3939 42 D2 42
message ASCII format
B2 C1 D2 AC
I O U 90 0 . 19 B O B
49 4F 55 3930 30 2E 3139 42 D2 42
message ASCII format
B2 C1 D2 AC不同的訊息但是相同的檢查和 !
8: Network Security 8-41
長訊息m H: 雜湊
函式 H(m)
數位簽章( 加密的 )
Bob 的私密金
鑰 K B-
+
Bob 傳送數位簽章訊息 :Alice 驗證簽章並整合數位簽章訊息 :
KB(H(m))-
加密的訊息摘要
KB(H(m))-
加密的訊息摘要
長訊息m
H: 雜湊函式
H(m)
數位簽章( 解密 )
H(m)
Bob 的公開金
鑰 K B+
相等 ?
數位簽章 = 簽章的訊息摘要
8: Network Security 8-42
雜湊函數演算法 MD5 雜湊函數廣泛地使用 (RFC 1321)
以 4 個步驟的過程計算 128 位元的訊息區塊 任意 128 位元的字串 x ,顯示欲建立一訊息m,使得經由 MD5雜湊出的值等於 x 是很困難的。
SHA-1 同樣被使用美國標準 [NIST, FIPS PUB 180-1]
160 位元訊息摘要
8: Network Security 8-43
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-44
可信任的中間者
對稱金鑰問題 : 在網路上兩個實體如何建立
共享私密金鑰解決方法: 信任的金鑰分送中心 (KDC)
做為實體的中間者
公開金鑰問題 : 當 Alice 取得 Bob 的公
開金鑰 (從網站 , 電子郵件 , 磁片 ), 她怎麼知道這是 Bob 的公開金鑰,不是 Trudy的 ?
解決方法 : 信任的憑證管理機構
(CA)
8: Network Security 8-45
金鑰分送中心 (KDC)
Alice, Bob 需要分享對稱金鑰 KDC: 對每個註冊的使用者 (許多使用者 ) 分享不同的私
密金鑰的伺服器。 Alice, Bob 各自知道自己和 KDC 之間溝通用的對稱金鑰
KA-KDC KB-KDC。
KB-KDC
KX-KDC
KY-KDC
KZ-KDC
KP-KDC
KB-KDC
KA-KDC
KA-KDC
KP-KDC
KDC
8: Network Security 8-46
金鑰分送中心 (KDC)
Alice知道 R1
Bob 知道使用 R1 與 Alice
通訊
Alice 和 Bob 通訊 : 使用 R1 做為共享對稱加密的
會談金鑰
Q: KDC 如何允許 Bob 和 Alice 決定分享對稱私密金鑰與對方通訊 ?
KDC 產生 R1
KB-KDC(A,R1)
KA-KDC(A,B)
KA-KDC(R1, KB-KDC(A,R1) )
8: Network Security 8-47
憑證管理機構 憑證管理機構 (CA): 將公開金鑰跟特定的實體 E 做對
應 E ( 人,路由器 ) 以他的公開金鑰向 CA註冊
E 提供 “身分證明” 給 CA. CA 建立實體 E 與公開金鑰間的認證關係 . 認證包含了由 CA 數位簽署的 E 的公開金鑰, CA說「這是
E 的公開金鑰」
Bob 的公開金
鑰 K B+
Bob 的身分資訊
數位簽章( 加密的 )
CA 私密金
鑰 K CA-
K B+
Bob 的公開金鑰認證,由 CA簽署
8: Network Security 8-48
憑證管理機構 當 Alice 欲取得 Bob 的公開金鑰 :
取得 Bob 的憑證 (Bob 或其他地方 ) 將 CA 的公開金鑰應用到 Bob 的認證,取得 Bob
的公開金鑰
Bob 的公開金
鑰 K B+
數位簽章( 解密 )
CA 公開金
鑰 K CA+
K B+
8: Network Security 8-49
認證包含了 : 序號 ( 對簽署者是唯一的 ) 關於認證擁有者的資訊,包括演算法以及金鑰值本身
( 沒有顯示 ) 認證擁有者的資訊
有效日期 認證擁有者的數位簽章
8: Network Security 8-50
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-51
防火牆
將組織的內部網路與較大的網際網路隔離,允許某些封包傳送,封鎖其他的
防火牆
受管理的網路
公眾網際網路
防火牆
8: Network Security 8-52
防火牆 : 為什麼防止阻斷服務攻擊 :
SYN 洪流法 : 攻擊者製造許多假的 TCP 連結,沒有資源留給「真的」連結
防止內部資料的非法更改 / 存取 例如,攻擊者更換 CIA 的網頁變成別的東西
只允許經過認證的存取進入網路 ( 一組經過認證的使用者 / 主機 )
兩種型態的防火牆 : 應用層級 封包過濾
8: Network Security 8-53
封包過濾
內部網路經由路由器防火牆連接到網際網路 路由器將封包一個一個地過濾 , 是否要轉送 /丟棄
封包的決定是基於 : 來源 IP 位址 , 目的 IP 位址 TCP/UDP 來源和目的埠號 ICMP 訊息類型 TCP SYN 以及 ACK 位元
應該允許抵達的封包進入嗎 ? 應該讓出發
的封包出去嗎 ?
8: Network Security 8-54
封包過濾 範例 1: 將 IP 協定欄位 = 17 以及來源或目的端埠號 = 23 的進入或外出資料段封鎖 所有進入和出去的 UDP 資料流以及 telnet 連
結會被封鎖 範例 2: 封鎖 ACK = 0 的向內 TCP 資料分段
防止外部的用戶端與內部的用戶端建立 TCP 連線,但是允許內部的用戶端連線出去
8: Network Security 8-55
應用閘道器
過濾應用程式的資料封包,如同 IP/TCP/UDP 的欄位
範例 : 允許選擇內部使用者 telnet 到外部
主機到閘道器的telnet 會談
閘道器到遠端主機的telnet 會談
應用閘道器 路由器和過濾
1. 要求所有的 telnet 使用者經由閘道器 telnet2. 對認證的使用者,閘道器會設定 telnet 連線到目的主機。閘道
器會在兩個連線間轉送資料3. 路由器過濾封鎖所有不是來自閘道器的 telnet 連線
8: Network Security 8-56
防火牆和閘道的限制
IP 假扮 : 路由器不知道資料是否「真的」來自宣稱的來源端
假如多個應用程式有特殊需求,每個要擁有自己的應用閘道器
用戶端軟體必須知道怎麼聯繫閘道器 例如,必須在 Web 瀏覽
器中設定代理器的 IP 位址
過濾通常對 UDP 使用非全有即全無的政策
取捨 : 與外界通訊的程度,安全層級
許多高度保護的網站仍然被攻擊所苦
8: Network Security 8-57
第八章 電腦網路的安全性
8.1 何謂網路安全 ? 8.2 密碼學的原理 8.3 認證 8.4 完整性 8.5 金鑰分送和認證 8.6 存取控制:防火牆 8.7 攻擊和反制 8.8 各層的安全
8: Network Security 8-58
網際網路安全攻擊對應 :
在攻擊之前 : “勘查地形” – 尋找網路中實作的服務
使用 ping 決定哪一個主機擁有網路上的位址埠號掃描 : 依序對每一個埠號嘗試建立 TCP 連線
(看看什麼會發生 ) nmap (http://www.insecure.org/nmap/) 勘查者 : “ 網路探索和安全審核”
反制 ?
8: Network Security 8-59
網路安全攻擊勘查 : 反制
紀錄進入網路的流量尋找可疑的活動 (依序掃描 IP 位址、埠號 )
8: Network Security 8-60
網路安全攻擊封包竊聽 :
廣播媒體 任意的 NIC 閱讀經過的所有封包 可以閱讀所有未經加密的資料 ( 例如:密碼 ) 例如 : C 竊聽 B 的封包
A
B
C
src:B dest:A payload
反制 ?
8: Network Security 8-61
網路安全攻擊封包竊聽 : 反制
組織內的所有主機執行軟體,定期確認是否有主機的介面為任意模式
廣播媒體 ( Hub 的交換乙太網路 )的每個區段需要一台主機
A
B
C
src:B dest:A payload
8: Network Security 8-62
網際網路攻擊IP 偽裝 :
可以直接由應用程式產生原始的 IP 封包,將任何值放入 IP 來源端位址欄 接收端無法分辨來源端是否為偽裝的 例如 : C 假裝是 B
A
B
C
src:B dest:A payload
反制 ?
8: Network Security 8-63
網際網路攻擊IP 偽裝 : 入口過濾
路由器不應該轉送具有不正確來源端位址的外出封包 ( 例如,不在路由器網路內部的資料段來源位址 )
很好,但是入口過濾無法部署在全部的網路中
A
B
C
src:B dest:A payload
8: Network Security 8-64
網際網路攻擊阻斷服務 (DOS):
惡意的洪流會產生封包將接收端淹沒 分散式 DOS (DDOS): 多個方向的來源端將接收端淹沒 例如, C 以及遠端主機 SYN- 攻擊 A
A
B
C
SYN
SYNSYNSYN
SYN
SYN
SYN
反制 ?
8: Network Security 8-65
網際網路攻擊阻斷服務 (DOS): 反制
在抵達主機前過濾出洪流的封包 ( 例如 , SYN) : 好的跟壞的一起丟
追蹤洪流的來源 (大多數時候是無辜的,被連累的機器 )
A
B
C
SYN
SYNSYNSYN
SYN
SYN
SYN
8: Network Security 8-66
第八章 電腦網路的安全性8.1 何謂網路安全 ?8.2 密碼學的原理8.3 認證8.4 完整性8.5 金鑰分送和認證8.6 存取控制:防火牆8.7 攻擊和反制8.8 各層的安全
8.8.1. 安全的電子郵件8.8.2. 安全的 socket8.8.3. IPsec8.8.4. 802.11 的安全性
8: Network Security 8-67
安全電子郵件
Alice: 產生隨機的對稱私密金鑰, KS
以 KS 將訊息加密 ( 為了效率 ) 以 Bob 的公開金鑰將 KS 加密 將 KS(m) 和 KB(KS) 兩個都傳送給 Bob
Alice 想要傳送機密電子郵件 m 給 Bob
KS( ).
KB( ).+
+ -
KS(m
)
KB(KS )+
m
KS
KS
KB+
網際網路
KS( ).
KB( ).-
KB-
KS
mKS(m
)
KB(KS )+
8: Network Security 8-68
安全電子郵件
Bob: 使用他的私密金鑰解密並回復 KS
使用 KS 將 KS(m) 解密,以回復 m
Alice 想要傳送機密電子郵件 m 給 Bob
KS( ).
KB( ).+
+ -
KS(m
)
KB(KS )+
m
KS
KS
KB+
網際網路
KS( ).
KB( ).-
KB-
KS
mKS(m
)
KB(KS )+
8: Network Security 8-69
安全電子郵件 (續 )
• Alice 想要提供傳送端的認證訊息完整性
• Alice 數位簽署訊息• 傳送訊息 (未加密的 ) 和數位簽章
H( ). KA( ).-
+ -
H(m )KA(H(m))-
m
KA-
網際網路
m
KA( ).+
KA+
KA(H(m))-
mH( ). H(m )
比較
8: Network Security 8-70
安全電子郵件 (續 )
• Alice 想要提供機密 , 傳送者認證 ,訊息完整性
Alice 使用三個金鑰 : 她的私密金鑰, Bob 的公開金鑰,新產生的對稱金鑰
H( ). KA( ).-
+
KA(H(m))-
m
KA-
m
KS( ).
KB( ).+
+
KB(KS )+
KS
KB+
網際網路
KS
8: Network Security 8-71
Pretty good privacy (PGP)
網際網路電子郵件加密法,目前的標準
使用對稱金鑰加密法 , 公開金鑰加密法 , 雜湊函數 , 以及數位簽章
提供機密、傳送端認證,完整性 創見者 , Phil Zimmerman, 為三年刑期犯罪的調查對象
---BEGIN PGP SIGNED MESSAGE---Hash: SHA1
Bob:My husband is out of town tonight.Passionately yours, Alice
---BEGIN PGP SIGNATURE---Version: PGP 5.0Charset: noconvyhHJRHhGJGhgg/
12EpJ+lo8gE4vB3mqJhFEvZP9t6n7G6m5Gw2
---END PGP SIGNATURE---
PGP 簽署的訊息 :
8: Network Security 8-72
安全通訊層 (SSL)
傳輸層安全性,提供給使用 SSL 服務的 TCP基礎的應用程式 .
在Web 瀏覽器與電子商務伺服器 (shttp) 之間使用
安全服務 : 伺服器認證 資料加密 用戶端認證 (選擇性 )
伺服器認證 : 使用 SSL 的瀏覽器包含信
任的憑證機構的公開金鑰 瀏覽器要求由信任的憑證
機構所發布的伺服器憑證 瀏覽器使用 CA 的公開金
鑰 來解開憑證內伺服器的公開金鑰 .
確認你的瀏覽器安全選單,可以見到信任憑證機構
8: Network Security 8-73
SSL (續 )
加密 SSL 會談 : 瀏覽器產生對稱的會談金鑰 , 並以伺服器的公開金鑰其加密 , 再將加密過的金鑰送給伺服器
伺服器使用私人金鑰解密出 會談金鑰
瀏覽器和伺服器知道會談金鑰 傳送到 TCP socket 的所有
資料 ( 由用戶端或伺服器 ) 以會談金鑰加密
SSL: IETF 傳送層安全 (TLS) 的基礎
SSL 可以用在非Web的應用程式,例如, IMAP
用戶端認證能夠以用戶端憑證來完成
8: Network Security 8-74
IPsec: 網路層安全 網路層安全 :
傳送端主機將 IP 資料中的資料加密
TCP 和 UDP 資料分段 ; ICMP 和 SNMP 訊息
網路層認證 目的端主機可以認證來源端
主機的 IP 位址 兩個主要協定 :
認證標頭 (AH) 協定 封裝安全性承載 (ESP) 協定
對 AH 和 ESP 兩者來說,來源端和目的端交握 : 產生網路層邏輯通道,稱為
安全結合 (SA) 每個 SA 為單向的 唯一辨識 :
安全協定 (AH 或 ESP) 來源端 IP 位址 32 位元的連線 ID
8: Network Security 8-75
認證標頭 (AH) 協定 提供來源端認證、資料完
整性、沒有機密性 AH 標頭插入在 IP 標頭
與資料欄位中間 協定欄位 : 51 中間路由器如常地處理資
料段
AH 標頭包括 : 連結辨識碼 認證資料 : 以原始的 IP
資料段計算的來源端簽署訊息摘要
下一個標頭欄位 : 指定資料型態 ( 例如 , TCP, UDP, ICMP)
IP 標頭 資料 ( 例如, TCP, UDP 資料分段 )AH 標頭
8: Network Security 8-76
ESP 協定
提供機密、主機認證、資料完整性
資料 , ESP 標尾加密 下一個標頭欄位在 ESP 的
標尾
ESP 認證欄位類似 AH 認證欄位
協定值 = 50.
IP 標頭 TCP/UDP 資料分段ESP標頭
ESP標尾
ESP認證
加密的認證的
8: Network Security 8-77
IEEE 802.11 安全性
駕駛攻擊 : 開車環繞舊金山灣地區 , 看看有多少可連結上的 802.11 網路 ? 在公眾道路上,有超過 9000 個可存取的網路 85% 的使用沒有加密 / 認證 封包偽裝以及各種攻擊是很容易的 !
安全的 802.11 加密 , 認證首先嘗試的 802.11 安全性 : 有線等效機密 (WEP): 失敗
目前嘗試 : 802.11i
8: Network Security 8-78
有線等效機密 (WEP):
如同協定 ap4.0 的認證 主機從存取點要求認證 存取點傳送 128 位元的 nonce 主機使用對稱金鑰將 nonce 加密 存取點將 nonce 解密,認證主機
沒有金鑰分送機制 認證 : 知道分享金鑰就足夠了
8: Network Security 8-79
WEP 資料加密
主機 /AP 分享 40 位元的對稱金鑰 (半永久的 ) 主機會附加 24 位元的初始向量 (IV) 以建立 64 位元的
金鑰 64 位元的金鑰用來產生金鑰串流 , ki
IV
kiIV 用來加密訊框中的第 i 個位元組 , di, :
ci = di XOR kiIV
IV 和加密的位元組 , ci 都以訊框傳送
8: Network Security 8-80
802.11 WEP 加密
IV (每個訊框)
KS: 40-位元的私密金鑰
k1IV k2
IV k3IV … kN
IV kN+1IV… kN+1
IV
d1 d2 d3 … dN
CRC1 … CRC4
c1 c2 c3 … cN
cN+1 … cN+4
明文訊框資料加上
CRC
金鑰序列產生器 ( 針對已知的 KS, IV)
802.11 標頭
IV WEP-加密資料加上
CRC
Figure 7.8-new1: 802.11 WEP protocol 傳送端 WEP 加密
8: Network Security 8-81
破解 802.11 WEP 加密安全漏洞 : 24-bit IV, 每個訊框一個 IV, -> IV 最後會重複使用 IV 在明文中傳輸 -> IV 的重複使用被偵測攻擊 :
Trudy 讓 Alice 加密已知的明文 d1 d2 d3 d4 …
Trudy 看到 : ci = di XOR kiIV
Trudy 知道 ci di, 因此可以計算 kiIV
Trudy 知道加密金鑰序列 k1IV k2
IV k3IV …
下次 IV 使用的時候 , Trudy 可以解密 !
8: Network Security 8-82
802.11i: 改良的安全性
很多 ( 更強大的 ) 加密形式提供金鑰散佈機制 使用與存取點分離的認證伺服器
8: Network Security 8-83
AP: 存取點 AS:認證伺服器有線網路
STA:用戶端
1 發覺具安全能力
3
STA 和 AS 互相認證,並一起產生金鑰。 AP 扮演「轉達」的角色。2
3 STA 推導出成對主金鑰 (PMK)AS 推導出同樣的 PMK, 並將結果傳送給 AP
4 STA, AP 使用 PMK 推導出一個用來加密並維持訊息
完整度的暫時金鑰
802.11i: 運作的四個階段
8: Network Security 8-84
有線網路
EAP TLSEAP
EAP over LAN (EAPoL)
IEEE 802.11
RADIUS
UDP/IP
EAP: 擴展的認證協定 EAP: 端點 -端點用戶端 ( 行動的 ) 的認證伺服
器協定 EAP 透過分離的「連結」傳送
行動裝置到 AP (LAN 上的 EAP) AP 到認證伺服器 (UDP 上的 RADIUS)
8: Network Security 8-85
網路安全 (總結 )
基本技術… ... 密碼學 ( 對稱和公開 ) 認證 訊息完整性 金鑰分送
…. 使用在許多不同的安全情況下 安全的 email 安全的傳輸 (SSL) IP sec 802.11
top related