騰訊QQ令牌的安全性分析
騰訊QQ令牌是騰訊推出的一項保護QQ帳號及游戲帳號安全的密保產品,該令牌是一款鎖扣型的實物產品,可掛在鑰匙扣上隨身攜帶。當QQ用戶完成令牌綁定后,按下QQ令牌的按鍵,會在液晶屏上顯示6位動態密碼用于QQ身份驗證,用戶在電腦上輸入正確密碼才能繼續操作。
在幾年前,騰訊曾經推出類似的“QQ密保卡”免費服務,通過紙質的卡片模擬動態密碼形式登錄,月光博客曾經分析過,“QQ密??ā彪m然節省了成本,但是安全性卻遠遠低于動態密碼鎖,QQ密保卡并沒有使得QQ的登錄安全性發生本質的變化,要想實現真正的網絡安全,具有硬件介質的動態密碼鎖和USB Key才能使得安全性得到一個質的突破,而現在,騰訊終于推出了具有硬件介質的動態密碼鎖產品:QQ令牌,那么QQ令牌的安全性到底如何呢?
QQ密保卡
QQ令牌
動態密碼認證技術
QQ令牌使用的是動態密碼技術,這是目前較為流行的身份認證硬件產品,可以實現較為安全的身份認證。
動態密碼(Dynamic Password)也稱一次性密碼,它指用戶的密碼按照時間或使用次數不斷動態變化,每個密碼只使用一次。動態密碼采用一種稱之為動態令牌的專用硬件,內置電源、密碼生成芯片和顯示屏。下圖是這種產品的外觀,其中數字鍵用于輸入用戶PIN碼,顯示屏用于顯示一次性密碼。每次輸入正確的PIN碼,都可以得到一個當前可用的一次性動態密碼。
動態密碼鎖
這種產品的密碼生成芯片運行專門的密碼算法,根據當前時間以及使用次數生成當前密碼并顯示在顯示屏上。認證服務器采用相同的算法計算當前的有效密碼。由于每次使用的密碼必須由動態令牌來產生,只有合法用戶才持有該硬件,所以只要密碼驗證通過,系統就可以認為該用戶的身份是可靠的。而用戶每次使用的密碼都不相同,即使黑客截獲了一次密碼,也無法利用這個密碼來仿冒合法用戶的身份,因為下一次登錄必須使用另外一個動態密碼。
基于PIN碼保護的動態密碼
動態密碼鎖需要兩個密碼要素,一個要素是靜態PIN碼,由用戶自行設置、保管。另一個要素是動態密碼,由密碼令牌動態生成,不可預測,并且與后臺服務器的接入控制保持同步,由后臺服務器進行檢驗。因此,用戶必需輸入正確的靜態PIN碼和動態密碼,才能通過身份認證。
動態密碼鎖本身需要輸入PIN碼才能使用,靜態PIN碼的安全要素在于,這個PIN碼不是在電腦上輸入的,而是在密碼鎖上輸入的,這樣,所有的黑客木馬程序從理論上講都全部失效,因為這些木馬根本不可能在另外一個硬件密碼鎖上運行。
黑客要想破解用戶密碼,首先要從物理上獲得用戶的動態密碼鎖,其次還要獲得用戶的PIN碼,這樣,黑客必須潛入用戶家中(電腦黑客還需要學習普通竊賊的技術),偷取了動態密碼鎖,然后再破解PIN碼。沒有用戶PIN碼依舊無法使用,而通常情況下動態密碼鎖本身具有一定安全保護功能,錄入PIN碼錯誤10次就會自動鎖死而無法使用。這也保證了動態密碼鎖物理上的安全性。
動態密碼技術可以完美解決客戶端用戶的安全性問題,因為黑客無論使用什么方法,也無法方便的竊取用戶的密碼,即使黑客竊取了一次密碼也無法登錄使用。
動態密碼的類型
動態口令硬件令牌從技術角度分析包括以下三種形式:基于時間同步、基于事件同步、挑戰應答方式。
時間同步:基于動態口令令牌和服務器的時間同步,通過運算來生成一致的動態口令,一般更新率為60秒,每60秒產生一個新口令,要求服務器能夠十分精確的保持正確的時鐘,同時對其令牌的晶振頻率有嚴格的要求。
從另一方面,基于時間同步的令牌在每次進行認證時,服務器端將會檢測令牌的時鐘偏移量,相應不斷的微調自己的時間記錄,從而保證了令牌和服務器的同步,確保日常的使用,目前可以通過增大偏移量的技術(前后10分鐘)來進行遠程同步,確保其能夠繼續使用,降低對應用的影響。
事件同步:基于事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作為輸入,通過加密算法運算出一致的密碼,不受時鐘的影響,由于其算法的一致性,其口令是預先可知的,通過令牌,你可以預先知道今后的多個密碼?;谑录降牧钆仆瑯哟嬖谑ネ降娘L險,例如用戶多次無目的的生成口令等,事件同步的服務器使用增大偏移量的方式進行再同步,其服務器端會自動向后推算一定次數的密碼,來同步令牌和服務器。
挑戰應答方式:常用于客戶端軟件,在軟件上輸入服務端下發的挑戰碼,客戶端上生成一個隨機數字,這個動態口令只能使用一次,可以充分的保證登錄認證的安全。
QQ令牌動態密碼的優點
QQ令牌
價格低:從技術上講,動態密碼技術是比較完美的方案,然而可惜的是,動態密碼鎖的成本過高,不太利于大規模使用?;跁r間同步的“QQ令牌”相比而言價格較低,比較易于批量使用,QQ令牌就是使用的基于時間同步的動態令牌,這種動態令牌由于成本限制,就沒有保護PIN碼,別人偷盜這張卡片即可冒名登錄,其安全性相比具有PIN碼的動態密碼鎖還有一定差距。
使用簡便:在使用上,QQ令牌較為簡單易用,當正常啟動時,會在液晶屏上顯示6位動態密碼,在一分鐘后,動態密碼自動消失,用戶需要再次按下按鍵,重新獲取動態密碼。
跨平臺:QQ令牌無需安裝,無需USB接口,沒有驅動,可在任何平臺上使用,相比USB Key來說安裝和使用很簡單。
QQ令牌動態密碼的缺點
缺少PIN碼:QQ令牌因為節省成本,沒有鍵盤,因此也就沒有PIN碼保護,用戶每按一次按鈕就可以生成一個密碼,一旦QQ令牌被盜,用戶的密碼即被破解,用戶需要努力保護自己的QQ令牌在物理層面不被他人盜取,一旦被盜,也應該及時掛失。相比來說有PIN碼保護動態密碼鎖,硬件和PIN碼構成了的兩個安全因素。如果用戶PIN碼被泄漏,只要密碼鎖本身不被盜用即安全。即使密碼鎖被盜,黑客不知道PIN碼也無法使用,破解PIN碼并不容易,大部分動態密碼鎖對于多次錯誤輸入PIN碼后,都會自動鎖定,無法使用,需要管理員來解鎖。
單鑰加密的認證安全:雖然動態密碼鎖的安全性的確不錯,然而,動態密碼技術也有一個安全隱患,就是服務器端的安全性。動態密碼的本質是單鑰加密,密鑰只有一個。在服務器端的認證系統里,可以計算出所有動態密碼,因此黑客如果將精力放在破解認證服務器系統,那么還是有可能對系統造成一定安全威脅,另外這個系統也依賴于服務器的管理員,服務器的管理員可以在服務器端修改動態密碼鎖的規則,模擬用戶登錄,也具有一定的安全隱患。而USB Key通過雙鑰加密的技術實現安全的認證,將私鑰保存在USB Key中,服務器端無法模擬,就可以彌補動態密碼鎖的某些安全性的隱患。
USB Key
結論
總的來說,“QQ令牌”的安全性遠遠高于“QQ密??ā?,但因為節省成本而缺少PIN碼,其安全性還是低于常規的動態密碼產品,因此,“QQ令牌”應隨身攜帶,并盡量避免“QQ令牌”被他人借用或通過其他方式獲得,否則會給自己的QQ帳號帶來很大的安全問題。一旦“QQ令牌”丟失,應該在第一時間內登錄系統掛失,以免賬戶安全受到威脅。
【編輯推薦】