小議口令卡和U盾的安全性 ZT

2021-09-08 06:47:13 字數 1425 閱讀 2081

今天在別人的電腦上用網銀交支付寶充值,在網銀支付的時候出現了錯誤,錯誤提示很是籠統,只有乙個錯誤**,其他什麼也沒說,而且我以前用網銀時也沒出現過這樣的錯誤,由於不是自己的電腦,無法確保電腦安全,於是就起了懷疑。此前也聽說有一些專門盜竊網銀的木馬就是偽造乙個錯誤以騙取使用者的密碼。

我用的是工商銀行的網上銀行,使用口令卡的,沒去辦u盾。而且我覺得口令卡其實也足夠安全了。不過今天的事讓我重新思考了一下究竟口令卡是否真的安全,會不會有什麼隱患。工行的電子口令卡上面有是10 * 8的矩陣,一共80個格,每個格上面有以一組隨機的三位數字,每次使用網銀支付必須輸入兩組數字進行校驗。那麼一共存在的組合有80 * 80 = 6400種,而口令卡的最多只能使用2000次。對於一張卡可以產生6400個不同的密碼,而不同的卡上面的每個矩陣裡面的隨機數字是不一樣的,所以每張開的密碼都不一樣。

那麼假如製作乙個木馬,去盜取使用者網銀的口令卡資訊,有多困難呢?理論上,假如木馬取得了計算機上的最高許可權,並且不被發現,它可以偽裝任何東西,包括偽裝乙個ie瀏覽器,偽造乙個假的網銀**,而在**上完全看不出來,看起來也可以有ssl加密的提示。所以現在的網銀才有「預留資訊」這個使用者自定義的資訊,用以識別偽造的網銀**。偽造的**當然無法知道你預先設定的預留資訊,但是它可以先讓你登入一次真的網銀**,同時記下你的登入密碼及預留資訊,這些都是有可能做到的。雖然ssl無法破解,無法直接在網路傳輸層擷取有效的資料,但是可以通過螢幕捕捉,ocr等手段,或者記憶體監測等等,要拿到這些資料,都不是不可能的。

最後的保障便是口令卡了,因為口令卡上的密碼是隨機生成的,而且交易的時候系統隨機指定兩組資料作為密碼,就算你自己丟了那張口令卡也無法使用網銀了,別說是木馬。但是木馬有可能在你輸入口令卡密碼時自動記錄對應矩陣單元內的密碼,雖然一次只能記錄兩個格,並不實用,可是如果多次嘗試的話,一共也就80個格,只要這80個格所對應的密碼被木馬知道了,那麼它就可以直接任意使用這個網銀帳號了。

木馬完全可以偽造乙個假的網銀**,然後騙你輸入對應的口令卡密碼,當然即使你並沒有輸錯,它也會提示你口令卡密碼錯誤,或者其他系統錯誤之類的,總之給你乙個藉口,說是支付不成功,讓你再試,這時你再輸入另外一組,再出錯,如此重複,你的口令卡便漸漸地變得不再安全了。所以對於在使用網銀**現的各種錯誤,應該慎重對待,可能這些錯誤根本就是木馬程式偽裝的。目的是騙取你的資訊。

另外提一下的是另外乙個號稱更加安全的裝置u盾,其實u盾就等於一條鑰匙,電腦插上這條鑰匙時才能使用網銀支付,沒有這個鑰匙的時候誰都用不了,因為是硬體裝置,幾乎不可能被偽造,因為是數字證書,都用了甚高位數的非對稱加密,至於能否被複製這個我持懷疑態度,假設它不能被複製吧。但是有些人卻為了方便,長期把u盾插在電腦上面,這樣就好比把保險箱的鑰匙留在保險櫃上面一樣,這把鑰匙完全失去意義了。u盾本身是安全的,但是也需要好好保管好。u盾的保障在於,u盾存在的時候能交易,u盾不存在的時候不能交易,實際上u盾插著的時候,電腦上的軟體也可以自動完成交易(理論上),這個時候甚至比口令卡還脆弱。

所以實際上沒有絕對安全,最脆弱的系統是人自身。

strcpy和strncpy函式的安全性分析

兩者都是c c 裡面的字串拷貝函式,不同的是後者多了乙個引數,此引數可以指定從源拷貝多長。char strcpy char strdest,const char strsrc char strncpy char strdest,const char strsrc,int pos 以上為兩者原型 下面...

軟體系統的安全性和保密性

robert bk dewar 2007年7 月原文 譯者 logiciel 2009年8 月8日 在當今世界,我們越來越倚賴於軟體 系統的安全性和保密性。在新生產的轎車中,剎車和控制系統依賴於複雜的軟體。在公眾投票站中,計票機依賴於正確記錄投票的軟體。傳統觀點認為軟體安全性涉及避免引起人員 的邏輯...

HTTP方法的安全性和冪等性

銜山的部落格 http方法的安全性和冪等性 posted by 銜山 on 2012 年 05 月 26 日 下午 5 43 in 計算機網路 no comments http協議規定了不同方法的安全特性和冪等特性,作為服務提供者的伺服器必需為客戶端提供這些特性。安全性,僅指該方法的多次呼叫不會產生...