支付寶Cookie高危漏洞引起的思考

背景:當時我在作公司的網站支付接入,在調試支付寶WAP支付時,發現一些匪夷所思的事情:
一、我想要切換帳號時退到須要輸入登陸信息時,原帳號並無退出,我按一下後退鍵又回來了;
二、我關閉瀏覽器也沒有退出帳號,整個調試過程有差很少一個星期只登陸過一次,能夠認爲登陸的帳號是沒法退出的,除非成功另一個帳號; 算法

由此,我開始懷疑,支付寶WAP支付接口的Cookie有問題,應該是爲了方便性設定存了好久時間。瀏覽器

因而我打開用Firebug的Cookie頁面一探究竟,我對其中一條名爲 ALIPAY_WAP_CASHIER_COOKIE 的Cookie產生的興趣,就是下圖紅色箭頭所指的那一條,這是一條64個只含大寫字母和數字的字符串,有經驗的人都會知道,這通常就是哈希算法產生的密文(多是MD五、SHA等的組合吧);安全

我抱着試一試的心態,我在隔壁同事的電腦打開了支付寶的WAP支付頁,而後把這條Cookie複製到了過去,奇蹟果真產生了,個人帳號直接在他那裏登陸成功了,不用輸登陸密碼也不須要手機號碼短信認證。就是下圖這個樣子。網站

 

到這裏,能看到的隱患就是黑客經過把木馬安裝在店家的WIFI,用來竊取Cookie信息,把上述這個Cookie拿走,而後慢慢試錯,直到把6位密碼破解出來(6位密碼能夠算是弱口令了),若是採集的Cookie比較多,能暴力破解成功仍是能夠考慮的。加密

然而還有一種更恐怖的攻擊方法,注意到這條Cookie是 64個只含大寫字母和數字的字符串,也就基本能夠判定這個是哈希算法加密的,而對於那些有豐富經驗的黑客來講,簡單哈希加密的密文跟明文沒有太大區別,不信你能夠看看 這個網站,兩到三級的哈希加密基本都能被查出來,而這已是公開的技術了,私密的民間高手技術有多高能夠想象了吧。他們只須要用幾個帳號在支付寶網站生成幾個這種Cookie,而後還原出加密方法。他們能作的有兩件事:spa

一、使用大批量帳號,可能達到數百萬級別,自動生成Cookie而後僞造登陸,暴力破解密碼。雖然每一個帳號在三次試錯機會中能撞對的概論很小很小,但他們能夠延長試錯時間,並且基數這麼大,成功的機會仍是不少的。調試

二、第二個利用方法雖然沒有直接經濟效益,但卻可讓整個支付寶系統陷入癱瘓。由於支付寶密碼輸入錯誤超過3次就會帳號被凍結,能夠想象數千萬甚至上億的支付寶帳號被凍結能給阿里帶來多大的衝擊嗎?這種攻擊最受益的應該是阿里的競爭對手們吧。blog

 由於此危害十分大,所以我經過烏雲報告給阿里巴巴,然而在通過了一個星期的漫長審覈後,它給了這樣一個答覆接口

呵呵。。。md5

然而當我放完國慶長假回來,再次打開支付寶的WAP頁,卻發現這個Cookie漏洞被修復了,已經沒有了幾條可能有問題的Cookie!!!

烏雲平臺裏的廠商規則裏有這樣一條嚴禁行爲:「a)消極處理安全問題包括不負責任的評估安全問題的嚴重性和後果,忽略後又悄悄修復等」。所以我屢次用郵件以及微博的方式同烏雲溝通,要求嚴肅處理此事情,不要傷害小白帽(之後可能要成黑帽子了)的一片心思。然而並無獲得什麼有實際意義的答覆。

前段時間看的一篇文章《一個iOS漏洞值多少錢?》,裏面有這樣一句話「大多數白帽子對於蘋果這種高冷的行爲感到受傷,從高雪峯苦笑的臉上彷佛也找到一樣的答案。」。一樣,我也對阿里巴巴以及烏雲的這種行爲感到受傷。

既然漏洞已經修復了,烏雲不願公開,我就在博客園裏給你們攤開來講吧,僅以拋磚引玉,望各位前輩多多指教。

相關文章
相關標籤/搜索