PGP的密匙和口令的安全性問題

來源:互聯網
上載者:User
關鍵字 安全
最簡單的失密方式就是你讓你的口令寫在某處,又無法保證除你之外沒有其他人能看到。 如果別人得到你的口令和你的私匙檔,整個加密體系就無密可言了。 另一個古老的話題就是口令不要太簡單,注意PGP用的是「口令」passphase,而不是「密碼」password就是說可以在口令中包含多個詞和空格。 一個老謀深算的攻擊者可能會用一本名言錄來尋找你的口令。 因此為了得到好記又難猜的口令,你可以生造一些句子或者找些非常生僻的文學篇章中的句子。 我個人推薦的辦法是採用一句話中的首字母的序列,然後在其中加入幾個符號,如「.」,「-」,「;」 等,長度最好大於等於8個字元,同時也可夾雜大小寫。 由於有被人在旁邊窺探你的擊鍵動作的可能,最好不用空格鍵,因為敲它的聲音很特殊。 同樣,需要手指伸得很遠的數位鍵也可不用。 例如:從「Youcan'tgetitwithoutmypassphase」可以得到「yCgi.wyp」這個口令,用窮舉法試探出這個口令的可能性微乎其微,因為它用到了大小寫字母和符號。 平均要試探約50^8次才可能成功,以IDEA的速度,這在一般大型電腦上也不是輕而易舉的事。 因此短的口令只要足夠隨機,一樣很安全,而且輸入口令時間越短,被窺探的可能也越小。 公匙的篡改和冒充可說是PGP的最大威脅,在《PGP簡介中》我已經講得比較詳細了,要點就是:當你用別人的公匙時,確信它是直接從對方處得來或是由另一個可信的人簽名認證過的。 確信沒有人可以篡改你自己的公匙環檔。 保持你對自己密匙環檔的物理控制權,儘量存放在自己的個人電腦裡而不是一個遠端的分時系統裡。 備份自己的密匙環檔。 ◎沒有完全刪除的檔一般的作業系統在刪除檔時都並沒有徹底刪除檔的資料,當你加密明文後將明文刪除,可是沒有從物理上把明文的資料清除。 一些有經驗的攻擊者可能從你的磁片資料塊中恢復明文。 當然象碎紙機一樣,也有從物理上銷毀檔的辦法,它們是一些工具軟體,如果沒有,最簡單的辦法是用無用的資訊將明文檔覆蓋。 在PGP後加上-w參數也可以達到這一目的。 不過即使你覆蓋了所有明文曾佔用的磁碟空間,仍然會有微小的剩磁留在磁片上,專用的設備可以恢復這些資料,只是一般人沒有這個條件。 對於你使用的密匙環檔同樣存在這個問題,特別是私匙環檔,直接關係到你的私匙的安全。 因此除了你專用的個人電腦,最好不要將密匙環拷入其他機器,讓它們留在軟碟上或許是個安全的辦法。 ◎物理安全性這是PGP所不能賦予你的。 如果政府要調查你的話,它蠻可以直接去物理侵犯你的隱私,就象在水門事件中一樣。 而且這種攻擊比密碼學分析要便宜得多。 PGP無法在一個不保密的環境中保護你的未加密的明文。 當然物理安全性也包括對PGP資料的物理安全保護象防火、防水、防雷等等,可是這都不如防人來得難辦。 ◎多使用者系統下的洩密PGP最初是為MS-DOS設計的,它假設本身在使用者的直接物理控制下。 可是隨著PGP的普及,多使用者系統上也出現了PGP,這樣暴露明文和密匙或口令的可能就增大了。 例如:如果你在Unix系統下在PGP的命令列中使用自己的口令,其他使用者將能用ps命令直接看到它。 同樣的問題在連上局域網的MS-DOS機器上也有。 我並不是說在Unix上就不能用PGP,有人將Unix系統裝在筆記本電腦上,你當然可以用PGP而不用擔心其他使用者。 多使用者系統也有安全的,它們禁得起所有入侵者所能獲得的手段的攻擊,或者是它的使用者都是可以信賴的,要不就是根本沒有感興趣的入侵者。 正如下面將要談到的現實的PGP攻擊中談到的,在多使用者系統中洩密的風險要大得多。 對此PGP作者的建議是:儘量在一個孤立的單使用者系統裡使用PGP,而且保證系統處於你的直接物理控制之下。 ◎PGP的時間標戳可靠性PGP簽名上的時間標戳是不可信的,因為任何想偽造一個「錯誤」的時戳的人都可以通過修改系統時間達到目的。 而在商業上又有這種利用PGP簽名的時間來確認責任的需要,這樣協力廠商的時間公證體系就被建立了。 很明顯,只要公證方在郵件上簽上標準的時間,就解決了這個問題。 實際上這個問題對於手寫的簽名也存在,簽字時需要一個公證人,用以證明簽名的時間,數位簽章也一樣。 PGP作者設想的模式是讓協力廠商提供公證服務,伺服器對每個送來的簽名自動加上自己的簽名後發回,同時留下一份記錄,這份記錄是公開的,需要仲裁的人可以去查閱。 ◎流量分析雖然攻擊者無法閱讀密文的真實內容,但他至少可以通過觀察郵件從哪兒來、到哪兒去、郵件大小以及郵件發送的時間等等而獲得一些有用的資訊,就象他可以查閱你的長途電話費單,但是他不知道你談話的內容一樣。 這就叫流量分析。 單獨靠PGP是無法阻止流量分析的,借助一些網路通訊協定可以防止這些資訊的暴露,甚至可以採用另一些加密通訊體系的協助。 ◎現實的PGP攻擊上面所說的都是一些對一般攻擊者不可能或者太費事的攻擊方法。 實際上有一些「可行的」PGP攻擊,它們不是攻擊PGP密碼體系本身(剛才的論述證明它是牢固的),而是PGP的實現系統。 先看被動攻擊:●擊鍵窺探一種非常有效的被動攻擊方法;簡單地說就是記錄使用者的擊鍵從中獲得口令。 攻擊者通過鍵盤記錄器窺探使用者的擊鍵序列,具體方法因不同系統而異。 在DOS下的PGP實現在這方面是最脆弱的,而且它擁有最多的鍵盤記錄器程式。 而且攻擊者甚至可以從網路上遠端啟動和停止記錄器,在DOS下有些引導區病毒也可以完成這一工作。 目前已經出現了至少一種Windows下的記錄器,這就對基於Windows的PGP外殼產生了威脅。 對UNIX環境下的鍵盤記錄有點複雜,因為需要root許可權,除非被攻擊者是在X-Windows環境下輸入口令的,X-Windows下的記錄器不用root許可權。 防止這種攻擊,一句話,對工作環境要仔細檢查,同時作好私匙環檔的保存。 ●電磁洩露窺探這很好懂,任何電腦設備尤其是顯示器都有電磁洩露,通過合適的設備可以收到目標顯示器上的資訊,那麼你的明文顯示時就無密可言了。 我這裡有一個FBI通過類似裝置監聽到一個間諜的顯示器和鍵盤信號的案例:他們通過偷偷設置在嫌疑犯電腦裡的發射器,遠端接收信號,然後通過NSA專用的FFT晶片去除噪音,完成了取證工作。 射頻信號大約22MHz,在接收端加上27KHz的水準同步信號和59.94Hz的垂直同步訊號就可以得到清晰的圖像。 至於鍵盤用的是串列單片機通訊介面,信號更容易穩定。 加裝一個射頻信號干擾器可以有效防止顯示器信號洩露。 鍵盤信號傳不遠,只要沒人在你電腦裡安「耳朵」就不怕洩露。 ●記憶體空間窺探在UNIX這樣的多使用者系統中,只要有合適的許可權誰都可以檢查機器的實體記憶體。 和分解一個巨大的合數相比,打開/dev/kmem這個系統虛存交換檔,找到使用者的頁面,直接讀出e,d來不是省心得多嗎? ●磁片緩存窺探在Windows這樣的多工作業系統中,系統有把記憶體中的內容交換到磁片的習慣,而且這些交換檔是對使用者透明的。 更壞事的是,這些內容並不會很快被清除,有可能在磁片上保留很久。 如果在網路環境中,可能連使用者自己都感覺不到,就被人偷走了這些資訊。 ●報文嗅探在網路環境下,資訊是以報文的形式線上路中傳輸的。 如果你是通過網路遠端使用PGP,那麼就有可能被人從報文傳輸途中監聽到。 如果資訊是以明文的形式存放在報文中你的口令也就被攻擊者知道了。 使用一些加密連線的通訊程式,象SSH,DESlogin或者乾脆使用有加密性能的網路通訊協定棧(點到點或端到端),可以防止網路嗅探的攻擊。 因為嗅探者要處理大量的資訊,如果不是明文,他們一般沒有興趣去研究。 再看看主動攻擊:●特洛伊木馬木馬是個古老的計謀,關於特洛伊木馬應該所有人都不陌生。 我不想給它下個定義。 下面是一個虛擬的現代PGP木馬:一些精英程式師開發了一個嶄新的PGP的Windows外殼。 所有新手都FTP到了一份拷貝。 它工作得太棒了,有各種按鈕和捲軸,甚至它還提供了一堆WAV檔,還支援SoundBlasterAWE32的音效,因此你可以一邊加密檔一邊欣賞著16位CD音質的音響。 它佔用很少的記憶體,程式設計精練,功能強大,而且它還能截獲作業系統的中斷,從而阻止它把重要資訊交換到磁片去而洩密。 了不起吧? 可問題在於,這個程式裡有那麼幾行惡意佈置的代碼記錄了你的口令,並且當它發現機器上裝了一個Modem,它會向Modem發出一條atm0命令(關閉Modem的蜂鳴器),然後向天知道什麼地方撥號並且傳出了你的口令和密匙 ...... 有意思嗎? 這就是特洛伊木馬。 避開它需要謹慎,謹慎,再謹慎。 ●篡改PGP代碼●篡改PGP代碼●特洛伊木馬●報文嗅探●磁片緩存窺探●記憶體空間窺探●電磁洩露窺探●擊鍵窺探PGP代碼是公開的,因此也會有被人篡改的可能。 因此校驗你得到的PGP發行包的完整性,是非常重要的,在上面的例子裡我們可以看到,把電腦的控制權交給不可靠的程式是一件可怕的事。 當然有人會把MD5程式crack了,讓對篡改過的檔它報告一個正確的散列結果。 這時找到一份已知完好的拷貝對照一下是最可靠的。 ◎結語我只是在這裡提供了各種材料,結論得要你自己下。 我們不能因為謠言而放棄一種加密方法,同樣我們也不能僅僅因為風聞就信賴一種方法。 總之,在電腦安全性領域,小心謹慎總會有報償的,但是缺乏情報和無必要的偏執是沒有好結果的。 給力(0票)動心(0票)廢話(0票)專業(0票)標題党(0票)路過(0票) 原文:PGP的密匙和口令的安全性問題 返回網路安全首頁
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.