一次保管所有的密碼:密碼管理器

案例


    小明在了解瀏覽器重要性和重新檢視自己的上網行為後,發現他的資安問題還是沒解決,隔壁的技術人員看了看,指著捲軸的第二頁,告知是因為他的「密碼被偷了」!你知道在個案故事裡,小明的哪些風險是因為密碼管理不當而造成的嗎?想好後,再往下對答案喔!
    答案:
    • 小明用同樣的帳號與密碼申請各式各樣的服務,這代表只要任何一處外洩他的資訊,其他帳號的安全性也極有可能被攻破。
    • 在〈風險評估〉章節,組織 A 發生員工怕忘記密碼,用便利貼寫下帳號密碼貼在桌上的狀況。
    • 小明讓瀏覽器記憶自己的帳號密碼,把自己的密碼交給瀏覽器保管,如果瀏覽器外洩他的帳密,他的資料也會跟著曝光。

    概論


    又忘記密碼了?在社交平台、購物網站、遊戲使用同一個密碼?有重要資料放在不同雲端硬碟?在數位時代,密碼如同鑰匙,保障你的社交帳號、購物紀錄、遊戲資料, 它因此成為駭客覬覦目標,因為只要取得密碼,就能冒用身分、盜刷信用卡、竊取線上遊戲內的虛擬寶物,對受害者造成各種損害。

    更進一步看,對捍衛人權的公民團體而言,電子郵件信箱、會議文件、捐款者資料,皆是組織的重要資產,如果帳號密碼為駭客所知,恐怕不只組織員工的個人生活遭殃,更有可能使組織名譽受損、重要的行動資訊洩露,甚至組織員工或合作對象被極權國家鎖定,有生命安全之虞。

    密碼紀錄方式有哪些?


    你仍用紙本記錄密碼,壓在抽屜中,或用便條紙將帳密貼在電腦上嗎?紙本不失為記錄密碼的辦法,然而紙本容易暴露資訊,也容易遭竊、遺失,許多人開始改用網路瀏覽器自動記錄所有密碼 。但前面也提到用網路瀏覽器記錄帳密會產生的疑慮,那麼,除了紙本和瀏覽器,還有其他更好的方式嗎?

    目前常見的密碼記錄方式包括:紙本紀錄、瀏覽器自動儲存、密碼管理器、Security token 等,下表介紹其優缺點:

    使用密碼管理器是一項重要、卻常遭輕忽的基礎工作。除了 KeePassXC 與 Bitwarden 之外,市面上還有其他開源、商業的密碼管理器,可依照自己的使用習慣來做選擇,Privacy Guides 網站所挑選出的幾款密碼管理器,亦可作為挑選時的參考。

    如果你希望在主要密碼之外再加一道保護措施,確保即使整台電腦被盜走,對手也無法開啟密碼資料庫,那麼可以考慮使用 YubiKey 這樣的物理保護措施當作第二層鎖(也就是「二階段驗證」的概念),它如同實體鑰匙,外觀像 USB 隨身碟,只能在實體插入、手動接上電腦時解鎖打開 KeePassXC 密碼庫。但是,使用者須負擔購買此裝置的費用,且若裝置遺失,就沒有任何機會可打開密碼庫了。

    整體而言,我們推薦「一加一大於二」的作法,密碼管理器搭配亂數密碼作為主要工具,並以 Security token 實體金鑰做二階段認證為輔助,更完善地保護密碼。

    密碼管理器的原理是什麼?


    人的記憶力有限,對於複雜的密碼更有限。如果你的密碼很多,也許你曾考慮將所有密碼都寫在同一張紙上,鎖進櫃子裡,但因為使用上很不方便,而且要是紙張遺失,後果不堪設想,因此作罷。

    密碼管理器可說是為此而生,將複雜的思考與記憶工作交給軟體,「人」只要記住一組最關鍵的主要密碼(也可以再加上雙重驗證),就可以完成儲存、記憶眾多密碼的艱巨任務。

    圖上: 人腦記住所有密碼

    圖下: 由密碼管理器管理密碼

    具體而言,密碼管理器可以協助你從圖左一個大腦記憶不同帳密的情形,改善到僅須記得管理器入口密碼,再由管理器告訴你哪些帳號分別對應哪些密碼。每當你要輸入、登入時,只要五個步驟:

    1. 打開管理器並輸入密碼,解鎖資料庫。
    2. 點選你要登入的帳號。
    3. 複製密碼。
    4. 在欲登入的頁面貼上密碼。
    5. 關閉管理器。

    你只須在第一個步驟動腦解鎖,不必費心從記憶深處召喚複雜的密碼。 在本手冊撰寫過程中,我們多次與資安專家及數位科技愛好者討論,最終大家認為最好上手、最推薦的,是兩套以開源技術為基底的密碼管理器:KeePassXC 與 Bitwarden。以下將介紹這兩個好用的密碼管理工具:

    KeePassXC

    KeePassXC 是開放原始碼軟體 KeePass 家族的一員,它的程式碼透明、為任何人所知且可供檢驗,由網路社群的志願工程師集體開發與維護,降低了它隱藏惡意功能以竊取資料的可能性。

    與市面上商業密碼管理器不同的是,KeePassXC 不僅免費提供所有人使用,保護功能更不會因營利考量而打折,其密碼儲存與管理的位置並非在商業公司經營的伺服器裡,而是在你所擁有的電腦裝置中,大大降低潛在的密碼洩露、或是因網路斷線而無法同步下載使用的風險。

    KeePassXC 功能多樣,可跨裝置在手機、平板共用,網路上有相關教學,例如:開源密碼管理軟體:KeePass/KeePassXC 免費密碼管理軟體圖解教學,信用卡、瀏覽器、手機都能快速輸入 ,於此不再贅述。不過,跨裝置使用意謂你要四處搬遷密碼資料庫,甚至將資料庫上傳到雲端硬碟,如果擔心搬遷過程遺失、出現無法預料的問題,或是存放密碼資料庫的網路空間遭竊,請慎選跨平台的功能。

    想知道如何第一次安裝 KeePassXC 就上手嗎? 請見下方附錄:KeePassXC 使用方式〉。

    Bitwarden

    Bitwarden 是一款自由且開源的密碼管理服務,它的程式碼公開且可供檢驗,提供多種跨平台應用程式,包含網頁與命令列介面、桌面應用、瀏覽器擴充套件、行動裝置應用程式。Bitwarden 有提供雲端代管服務,如有資安考量或資料保存規範,亦可自己架設密碼儲存伺服器,支援自行部署解決方案,自己管理密碼又可保有不同裝置同步密碼的便利性。

    Bitwarden 主要分為「Personal」跟「Business」兩個方案。個人方案內又區分為「Free」、「Premium」和「Families」三種方案,如果需要讓多人存取相同密碼庫,必須選擇「Families」才有多用戶功能,單人使用選「Free」即可。免費、付費在功能上差異不大,主要差別為一些進階功能,對一般用戶而言,免費方案其實足以勝任大部分工作,包括無限制的密碼儲存數量、在所有裝置同步密碼、密碼產生器等等。

    KeePassXC 跟 Bitwarden 在使用上與其他密碼管理器相同,卻更加安全。它可以幫助你輕鬆保管多組帳號密碼,或使用亂數自動產生更難破解的密碼,讓你再也無須為創造新密碼想破頭。

    小撇步


    1. 使用獨立運作的密碼管理器,而非讓瀏覽器記憶你的密碼
    2. 瀏覽器本身承載了很多使用者的網路瀏覽紀錄、使用習慣,已經是相當容易被駭客盯上的目標,因此,建議密碼只交給獨立運作的密碼管理器,避免與瀏覽器有直接關聯。如同將不同功能事務交由不同瀏覽器處理的分隔原則,減少雞蛋集中在同一個籃子裡的風險,密碼只交給獨立運作的密碼管理器雖然沒那麼便利,但是密碼管理器大多已提供直接複製帳號名稱、密碼的功能,仍可省下使用者輸入帳密的時間,且密碼管理器還可以在市面上絕大多數的電腦作業系統 Windows、蘋果作業系統 MacOS,或開源作業系統 Linux 跨平台使用,甚至也適用 Android 、 iOS 手機或平板,協助你做到跨裝置的密碼管理。

    3. 使用不同帳號及密碼,更妥善保護重要資訊
    4. 大多數的人會在不同的網路服務、帳號使用同樣或相似的密碼,以確保自己不會忘記。然而,使用相同密碼,意謂一旦某一個網路服務商被竊取資料,惡意人士可以僅靠取得其中一次外洩事件中的密碼,就盜取你所有不同服務的帳號。例如,檢測個資是否遭外洩的線上服務 Have I Been Pwned 或 Firefox Monitor 每隔一段時間發布某些知名服務外洩事故,範圍包含雲端硬碟 Dropbox、健身服務、線上設計軟體 Canva 的帳號密碼。只要你使用過的服務其中一種遭駭,其他帳號也可能會遭殃,導致損害範圍擴大。

      為了保障基本的帳號使用安全,大多數人都知道要設定複雜密碼、經常更換密碼、不要四處使用同一組密碼,但實際執行極其困難。畢竟,每想一套複雜的密碼,都要需要花時間與心力去記憶,而且也不見得能夠及時更換所有帳號的密碼。密碼管理的成本會隨著工作內容的敏感程度而增加,這也是本章節特別要介紹密碼管理器的原因,讓一套系統為你記得這些分散的帳號密碼,既不怕忘記,更可降低帳號外洩的可能性。

    5. 別偷懶讓全組織共用一組密碼
    6. 全組織共用一組密碼不是好作法,因為無法完全掌握組織裡每個人保護密碼的程度,所以若密碼外洩,無法有效找出外洩原因,也難以提出修正或提升安全防護的對策。組織不僅不該共用同一組帳號,也應針對業務需求給組織成員不同程度的權限帳號,以提升整體的安全等級。

    7. 設定「好密碼」
      • 長度足夠:通常建議至少包含 12 個字符以上。
      • 複雜性:密碼應包含不同類型的字符,如大寫字母、小寫字母、數字和特殊符號,或選擇一個容易記住但不容易猜測的句子,或結合多個句子來建立更長的密碼。避免使用易於猜測的常用單詞或簡單的數字序列。
      • 不易猜測與被社交工程攻擊:密碼應該避免使用與個人資訊相關的單詞、日期或其他易於猜測的模式,因為這樣的密碼遭社交工程攻擊、破解的風險較高。最好採用隨機生成的密碼。
      • 不重複使用:每個帳戶都應該使用獨特的密碼,避免多個帳戶共用同一個密碼。
      • 定期更新:密碼應該定期更改,以降低被破解的風險。建議每 3~6 個月更換一次密碼。

    如果對本文的介紹有任何疑義,可以閱讀我們以前寫過的 如何:使用 KeePassXC | 監控自我防衛,或是聯繫 hi@ocf.tw 開放文化基金會詢問。

    附錄:KeePassXC 使用方式


下載/安裝流程


  • 在電腦安裝

    切記,下載工具程式務必要從官方網站下載,以避免下載到來路不明、被暗藏後門的軟體。KeePassXC 的官方網站是 https://keepassxc.org/ ,在首頁就可以看見下載的連結,選擇你的電腦作業系統下載即可。記得,KeePassXC 與其它商業密碼管理器不同,是免費提供下載的,如果你發現要註冊、付費,那就肯定搞錯軟體了。

  • 在手機或平板安裝

    如果你想安裝 Android 或 iOS (蘋果)的版本,它們跟電腦版本的名稱不一樣。官方網站的指引 https://keepassxc.org/docs/建議在 Android 使用 KeePassDXand KeePass2Android,在 iOS 則是 Strongboxand KeePassium。他們都是 KeePass 家族的成員,所以可以互通使用,管理密碼的方式也相近。但是本文後續以介紹電腦裝置上面的 KeePassXC 為主。

首次設定


  1. 為新的密碼資料庫命名,可以加上描述,以免自己遺忘內容
  2. 為這個資料庫提高加密層級,這可以阻礙有人將資料庫檔案盜走後的解密工作,提高他們需要解鎖的時間成本
  3. 為這個資料庫設定主要密碼,可以說是最重要的事情,如果遺忘主要密碼,裡面的東西就再也無法取出

開始使用


  1. 首頁裏頭條列各個帳號的管理項目,點擊要尋找密碼的帳號,就可以觀看或準備複製貼上密碼
  2. 如果要新增某個網站或服務的帳號密碼,就要到工具列「新建項目」:

    1. 輸入標題(例如某購物網站)
    2. 使用者名稱(也就是你在該服務註冊的帳號)之後,
    3. 產生新的密碼。可以自行輸入,也可以隨機產生
  3. 也是在工具列「編輯項目」:更改項目的標題、使用者名稱、修改密碼
  4. 最後則是工具列的「刪除項目」:可以將所選的項目刪去
  5. 如果需要修改 KeePassXC 的設定,可以到工具列的最後一個「設定」進行:
    1. 例如在「通用」的地方可以設定開機後可以啟動管理器
    2. 或是在「安全」的地方設定複製密碼之後自動消除的時間,可以避免使用者不小心在公開的聊天訊息貼上自己的密碼。
    3. 想在瀏覽器裡面直接連結密碼管理器,可以到「瀏覽器整合」為 Firefox, Google Chrome, Brave, Edge 等等主流的瀏覽器下載並安裝外掛。這可以讓你直接在瀏覽器裡面複製貼上密碼。

在新電腦或是其他裝置上設定


  1. 換了新的電腦,要繼續用 KeePassXC,就要記得搬遷資料庫到新電腦裡面,也就是那個副檔名為 .kdbx 的檔案。
  2. 在新的電腦安裝 KeePassXC 之後,在初次開啟時選擇「開啟現有資料庫」。
  3. 輸入你原先為這個資料庫設定的主要密碼,即可開啟使用。

技術支援/求救方法


如果你希望再加一道主要密碼以外的保護措施,確保即使你的整台電腦被盜走,也沒有機會開啟密碼資料庫。那麼可以考慮使用 YubiKey 這樣的物理保護措施當作第二層鎖(也就是「二階段驗證」的概念),它就如同實體的鑰匙一樣,外型跟一個 USB 隨身碟長得很像,只能在實體插入、手動接上電腦時候解鎖打開 KeepassXC 密碼庫。但使用者必須自行負擔另外購買這個裝置的價格,而且遺失裝置的話,就會沒有任何機會打開密碼庫了。

KeePassXC 有相當多樣的功能,甚至可以跨裝置到手機、平板共用,網路上已經有相關的教學,例如 開源密碼管理軟體:KeePassKeePassXC 免費密碼管理軟體圖解教學,信用卡、瀏覽器、手機都能快速輸入 ,於此不再贅述。不過,跨裝置使用代表你要四處搬遷密碼資料庫,甚至將資料庫上傳到雲端硬碟空間。如果你會擔心搬遷過程遺失、出現無法預料的問題,或是存放的網路空間遭竊,請慎選跨平台的功能。

如果對本文的介紹有任何疑義,可以閱讀我們以前寫過的 如何使用 KeePassXC | 監控自我防衛 ​,或是聯繫 hi@ocf.tw 開放文化基金會詢問。

結語


在數位時代生活,密碼就如同鑰匙,保障每個人的各項資料。但也同時是駭客覬覦的重要目標,只要取得密碼,就能夠冒用身份、盜刷財務、竊取遊戲內的虛擬寶物,對生活造成大大小小的損害。 何況是身為捍衛人權的公民團體,如果帳號密碼為駭客所知,那恐怕就不只有一個人的生活遭殃,有可能導致組織名譽受損、重要的行動資訊洩露,甚至被極權國家鎖定人身資訊,有生命威脅之虞。

本文所介紹的KeePassXC源自開放原始碼軟體改良而成,KeePassXC 與市面上販售的商業密碼管理器不同,是由網路社群的志願工程師集體開發與維護,它不僅免費提供所有人使用,也更不會因為營利考量而對保護功能打折。其預設只在你所擁有的電腦裝置裡面進行密碼管理,完全由你掌握位置。更可以確保密碼檔案不會因為保管在商業公司經營伺服器上面,而導致潛在的洩露,或是因為網路斷線而無法同步下載使用的危險。