紙錢包安全嗎?

發佈於 Jun 10, 2020 | 部落格

在加密貨幣的世界裡,錢包所對應的「私鑰」就相當於該錢包所儲存的資產,是唯一可以動用錢包內資金的令牌,若私鑰生成或管理不善將造成極大的資安漏洞,幾乎所有的加密貨幣被盜事件都與私鑰生成或管理不當有關。而比特幣的錢包除了用來交易以外,通常還肩負私鑰生成的工作,有些安全意識較高的用戶會採用「離線生成私鑰」的方法,只有在動用比特幣時,才將私鑰導入錢包進行交易。而離線生成私鑰的方法中,「紙錢包」受到許多人推崇,用戶只需要準備一台乾淨安全的電腦,連上「紙錢包生成網站」,進行斷網的動作後,直接使用網頁上的生成私鑰功能,就能取得一組新的私鑰與對應的錢包地址。

究其原理,生成私鑰本就不需要連接網路,私鑰本身就是一串亂數,生成過程只需要有一個 “夠隨機” 且符合標準的亂數種子。「紙錢包生成網站」通常會提供一個可離線作業的 JavaScript 程式,在您電腦斷網並點擊生成私鑰時,該程式會利用一些亂度因子(例如:滑鼠軌跡、鍵盤輸入及系統時間等資訊)作為部分參數,並跟系統亂數嫡池取得符合標準的亂數後生成私鑰。但這樣生成的私鑰真的安全嗎?以下的分析您將發現,即便您的電腦是乾淨安全的、您生成私鑰的過程也沒有連上網路、而且您用來印出紙錢包的印表機服務中也沒有驅動攔截,即使在這樣完全安全的環境下,透過「紙錢包生成網站」生成出來的私鑰,依然有可能是危險的!

前 CYBAVO 特聘研究員也是台灣密碼龐克(Cypherpunks Taiwan)創辦人陳伯韋與我司合作,查到有人使用特定網站的紙錢包出現私鑰被盜的問題,經我司進一步追蹤後發現,多數「紙錢包生成網站」都是採用與 BitAddress.org 相同的 JavaScript 原始程式碼進行二次開發。這些網站不乏知名的「紙錢包生成網站」,如 WalletGenerator.net 及 BitcoinPaperWallet.com 等都已經被證實有後門存在。多數「紙錢包生成網站」會將程式碼修改,有些手法粗糙,如果用戶生成私鑰時沒有斷網,它會將用戶隨機產生的私鑰訊息上傳;有些為了避免用戶在生成私鑰期間斷網,或在上傳私鑰時引起警覺,它只會修改亂數區間,讓私鑰只會在某個範圍內重複產生,意即不論用戶執行多少次生成私鑰,私鑰都只會是那幾百組重複產生。對此,作為提供原始程式碼的 BitAddress.org 作者目前也僅能在用戶回覆中聲明這些事件與其無關,但無法對此有效遏阻。雖然部分網站已經被列為可疑網頁,但仍有不少「紙錢包生成網站」換了網站樣貌跟地址後又再次重新上線,如 AmazonPowers.com(在百度搜索排名前三名),用戶需特別注意,千萬避免在這些惡意的「紙錢包生成網站」上生成私鑰。

我司在實際測試後已成功產生出重複私鑰,同時該私鑰的相對地址還有比特幣交易紀錄存在,相關地址清單列於下,如果您的錢包是透過「紙錢包生成網站」產生,且生成地址在列表中,請即刻將資金轉出並棄用該錢包。目前相當多地址都有交易紀錄,而且一旦有錢打入這些錢包就會被立刻轉出,顯然已有駭客利用此漏洞隨時監看這些地址,等有錢打進去就立刻轉走。若您是這些紙錢包的受害者,歡迎與我司聯繫,我司將嘗試協助您取回被盜的比特幣。以下為詳細地址清單:

1KGabGv4xwZCo6ebbFykKFPmdqNkYMmG4F
154SXM9EFqvxbvmuK87MYY6aAa3CNDcjFg
1BVaQaUHk46nXf1z7kBfgGG5pfPigUKU25
1L9xH7xU9YQ6p39pvNCnjM8A2Xjj1m8ZBS
1LswadF991seb6vYqWorGQd2dVvx6P2nAu
172bGAVUD7ZtJHEDLbBGCiG8uhSD9t7aPD
14rARDAY9UKY7TdgkWW9ULcZbj6u1bd4Vn
16WRqQsZQSWp7uD4Jhb1CrPvJq8D6ETuZA
1BQHKBxCeyMt7CJMSTiWXB74etuKhkDRpt
1CtF6gmdByQmxQ7JT43W63yt5taUgF4UVi
12ziu6dsjdZ7poY5LNxC8nDn1x7kKcQexv
1A8JZzxheW8mx1HbQKyJddbrECwPTXTQtk
133Bx5yWRgYHBv8YJVwVaR7TmsUHZmFSJa
1HGJEdzNHq89S96nJvkLdbj4NyPJM9qw3f
1MfPqSDiraPRBVyYASNkF8oc5Ja1ZkdsZn
16fUUF7GSF2GbVJig1KQrD4ksNMnUBX7Dq
1LjCLg4qU1X1Bd8xnaouNQthCAJpwqMZni
1LjiyXuYGYRs2Z8UKwTnLmomfJTsTBqwRh
1KzF87otzAW8FeVrWyiP5NA6dz39e6eaQ1
1EXG94GYR63F3ij8XKXpm2iGac2JFGTksp
14kFGdncu8NrVfPkWiK2TukYNEzPmQ2b3k
14rARDAY9UKY7TdgkWW9ULcZbj6u1bd4Vn
1NSyCbfGibf1mahXCKaiiGNEvmgsfntdq3
133Bx5yWRgYHBv8YJVwVaR7TmsUHZmFSJa
13qW3UrhTirJELFoXyjeeCZCPtTd3LYzt4
1RnLLGiXWkHFGRGmdraDb9rUUGtLeLrV9
1KYTAnNPoo2YtMVcywHsATR3mgffMwVphj
1GiQvuabtcNYSphXCQYH3dUCX88xnEifdA
1MNk9m9xuUYrvfdJLG8zxqPG7tfKBTn9Wx
1ECiYkHpgGyRJrs1aWW7bS6iyckubutSVZ
18cTBu3JhC7bBWrmEoT548TqLyKBkXnaT6
18JxFDL4oFFDVVHMXQvqJTDM73bQe1c2Vq
1P518UYVz6VbuPKgLPQjRUc2DYcaM6dQCf
1KkHiBAhkk3ZxoNiYZnTFLF4mTc5EnKDBb
1HdreMMZXY21U3ynoJqe4uE4J66q84c6oP
15DUoApHf5yq9kzHUekRzTNxhJWok9ZfG5
15uxEk954TSW3f7pSPSNdvDeEeTCPDHxip
14kFGdncu8NrVfPkWiK2TukYNEzPmQ2b3k
1DSRUf7PbvckdaB7YHakPUfBuwt22Zboyu
1F5vVpwfdDNNVbPZmQguNJqsdrkWpU7gFE
12TnGq99e18gFwT1svkhNsUVAReEC6ARoJ
16ZBadgmztS92Sas1CFSTfhnyfE1mRwjaz
15bKRPVGSqS5njS9WjZPPFDKbDSY2NTTDf
13TujBeyeVh8E8amvamsDdNszw5FSD19qz
16QumJh6hE3d5W4hX87BbxKs1aBGDbSaKs
13TvhrFK4X7Y84jEyzDMvXKmbjPg4Y6evT
1PAD114RCjcMcfBHzCQEBe7BvzL2J9FpiB
17vDMhe1Ym9XQMyaa6ahW4fvU5ibVCniBi
184WrJZa5A8K2KxiZdpdrBHaj63FdfAAjC
18372nnAvma9VGduvREHzovGdiiptnrrw5
127i4e35gL11pNRsZnr7QeajU8bvY4ZkqR
1E6VqRpH3X9zCLFSJyu2BJmyELRxGNzB1S
1HJmAumP6T9SXuNmaUm8z36KFLPPZ499z2
15L6yf28VH8bxP2Pmwgwuud5pbvYysPsPr
1PJKrag4e41LP691iNDgGKELLRcDdzN2FD
1GRnLqV31mNxUahSTwzmQ13sTzeZ82rEQz
16yx9juHqYtLruTRXDPmfDJENiqaMhWSCW
13TujBeyeVh8E8amvamsDdNszw5FSD19qz
13qW3UrhTirJELFoXyjeeCZCPtTd3LYzt4
1Gkat5DVDD8SBShdBytwekyfQqyEp5ES8K
1QAF2Mb5kmj1WhgBx1nQC5C8CiWyTqyak4


我司戰略合作夥伴 UnblockAnalysis 已經成功追蹤出相關金流,部分資金已進入交易所。多數遭竊地址的比特幣會被發往固定地址累積,待達特定金額以上就迅速轉移,透過混幣後售出。下圖為 Unblock Analysis 就其中一個地址分析後的金流資訊圖:

鎖定地址(Target Address):1RnLLGiXWkHFGRGmdraDb9rUUGtLeLrV9
(A) 1RnLLGiXWkHFGRGmdraDb9rUUGtLeLrV9
(B) 1BSZ6QW3kr2Cz8noutJo1hoa8sNybT4n25
(C) 34wvFXLBe55BKV1YiKNQz1m2Fk2maJ4TZo
(D) bc1qkr8gy0edcwwp2d3zdhtcf3gam42s9uvm4yx6sj

以上 (A) 為鎖定地址,(B)、(C) 及 (D) 為流向地址, 在 2019 年 12 月 6 日當天,資金從 (A) 轉帳到 (B)、(B) 轉帳到 (C)、再由 (C) 轉帳到 (D),90 分鐘內完成資金轉移,如此的資金流觸發了疑似「白手套(仲介)」的交易行為,更加確信駭客擁有該鎖定地址的私鑰,當資金進到錢包時隨即將資金移轉走。

最後,如果您個人或公司的錢包系統是採用上述程式碼產生私鑰的,也請您即刻檢視亂數產生的流程,請務必遵守以下三項原則:

  • 注意生成私鑰時隨機亂數的取得方式,亂數必須符合 NIST 標準。
  • 產生私鑰的種子長度至少要達到 256 bits。
  • 產生私鑰的過程中,如有任何錯誤發生必須馬上中止,以避免生成 “亂度不足” 的私鑰。

CYBAVO 是一家網絡安全公司,致力於為企業提供安全且易用的區塊鏈私鑰託管及免密碼身份驗證服務。我們的數位資產託管解決方案旨在為企業提供類似於企業銀行賬戶且符合監管的加密貨幣管理機制,利用最完善的加密技術和最嚴格的網絡安全標準,為用於數位資產或供應鏈應用的區塊鏈私鑰提供最佳的保護。此外,身份驗證是數據安全的重要組成部分,我們也為機構和服務供應商提供安全的免密碼身份驗證服務。

獲取關於 CYBAVO 數位資產託管解決方案及免密碼身份認證服務的更多信息,或立即申請免費試用