一 在公鑰註冊之前攻擊
證書是認證機構對公鑰及其持有者的資訊加上數字簽名的產物,由於加上數字簽名之後會非常難以攻擊,因此我們可以考慮對施加數字簽名之前的公鑰進行攻擊。
假設bob生成了金鑰對,並準備在認證機構註冊自己的公鑰。在認證機構進行數字簽名之前,主動攻擊者將公鑰替換成了自己的。這樣一來,認證機構就會對「bob的個人資訊」和「攻擊者的公鑰」這個組合進行數字簽名。
要防止這種攻擊,可以採用下面的做法。例如bob可以在將公鑰傳送給認證機構進行註冊時,使用認證機構的公鑰對bob的公鑰進行加密。此外,認證機構在確認bob的身份時,也可以將公鑰的指紋一併傳送給bob請他進行確認。
二 註冊相似人名進行攻擊
證書是認證機構對公鑰及其持有者的資訊加上數字簽名的產物,對於一些相似的身份資訊,計算機可以進行區分,但人類很容易認錯,而這也就可以用來進行攻擊。
例如,假設bob的使用者資訊中名字的部分是:
name=bob
而攻擊者用另乙個類似的使用者資訊:
name=bob
註冊了另乙個不同的公鑰。這個公鑰的名字叫bob,但實際上確是攻擊者的公鑰。
隨後,攻擊者偽裝成bob,將
name=bob
的公鑰傳送給alice。alice看到證書中的使用者資訊,很可能就會將bob誤認為是自己要傳送訊息的物件bob。
要防止這種攻擊,認證機構必須確認證書所包含的資訊是否真的是持有者的個人資訊,當本人身份確認失敗時則不向其頒發證書。
三 竊取認證機構的私鑰進行攻擊
主動攻擊者想出乙個大膽的攻擊方法,那就是竊取認證機構的私鑰。如果得到了認證機構的私鑰,那麼任何人就都可以以該認證機構的身份頒發證書了。
要竊取認證機構的私鑰,需要入侵認證機構的計算機,或者收買有權訪問認證機構私鑰的人。認證機構是否妥善保衛自己的私鑰,是與該認證機構所頒發證書的可信度密切相關的。認證機構之所以稱為認證機構,是因為它的數字簽名是可信的,因此認證機構必須花費大量的精力來防止自己的私鑰被竊取。
一般來說,當發現主動攻擊者利用認證機構的私鑰簽發證書時,就可以斷定認證機構的私鑰被竊取了。由於認證機構記錄了自己簽發證書的序列號,因此能夠判斷某個證書是不是該認證機構自己簽發的。
如果認證機構的私鑰被竊取(洩露),認證機構就需要將私鑰洩露一事通過crl通知使用者。
四 攻擊者偽裝成認證機構進行攻擊
主動攻擊者又想出乙個更加大膽的方法,那就是自己偽裝成認證機構的攻擊。
運營認證機構既不需要登記,也不需要蓋樓房,只要有運營認證機構的軟體,任何人都可以成為認證機構。
現在攻擊者成立了乙個認證機構,然後對自己的公鑰頒發了一張證書,並稱「這就是bob的公鑰」。之後,他將這個證書傳送給alice。
alice收到證書後使用認證機構(攻擊者)的公鑰進行驗證,驗證當然會成功,因為這個證書就是認證機構(攻擊者)頒發的證書。alice驗證證書成功,於是,她就相信了這個公鑰,並將準備傳送給bob的訊息用這個公鑰進行加密。隨後,攻擊者截獲密文,就可以將內容解密了,因為攻擊者持有解密的金鑰(私鑰)。
從這個例子可以看出,如果認證機構本身不可信,即便證書合法,其中的公鑰也不能使用。要防範這種攻擊,需要alice自己多加小心,她必須要注意自己所得到的證書是哪個認證機構頒發的,這個認證機構是否可信。
對證書和公鑰的基本理解
前些天逛技術網,偶爾看到一篇國外關於金鑰的通俗易懂的詳解文章,當時對具體的細節還是有點模糊搞不清楚,so昨天惡補了一下,今天簡單整理一下自己的收穫,以備以後回顧。1.鮑勃有兩把鑰匙,一把是公鑰,另一把是私鑰。2.鮑勃把公鑰送給他的朋友們 帕蒂 道格 蘇珊 每人一把。3.蘇珊給鮑勃寫信,寫完後用鮑勃的...
針對TCP協議的攻擊與檢測 預防方法
land攻擊 通過傳送源位址和目的位址相同 源埠和目的埠相同的 icmp echo 報文或tcp syn 請求報文 可以導致主機不斷地向自己傳送報文 最終導致系統崩潰。只要檢查報文的源位址和目的位址是否相等 源埠和目的埠是否相等 就可以判斷出是否為 land 攻擊。syn flooding 利用tc...
針對ARP攻擊的基本防禦
arp攻擊近年來非常流行,不斷能造成區域網的上網掉線,而且厲害的還攜帶盜號木馬,盜取使用者的資料。針對這些可惡的arp攻擊比較常用的方法是 建立靜態arp表 即arp繫結 這是一種很有效的方法,而且對系統影響不大。缺點是破壞了動態arp協議。可以建立如下的檔案。ip1 08 00 20 ba a1 ...