支付寶Cookie高危漏洞引發(fā)的思考

責任編輯:editor005

作者:batsing

2015-10-13 14:43:39

摘自:博客園

2、我關(guān)閉瀏覽器也沒有退出賬號,整個調(diào)試過程有差不多一個星期只登錄過一次,可以認為登錄的賬號是無法退出的,除非成功另外一個賬號;

背景:當時我在做公司的網(wǎng)站支付接入,在調(diào)試支付寶WAP支付時,發(fā)現(xiàn)一些匪夷所思的事情:
1、我想要切換賬號時退到需要輸入登錄信息時,原賬號并沒有退出,我按一下后退鍵又回來了;
2、我關(guān)閉瀏覽器也沒有退出賬號,整個調(diào)試過程有差不多一個星期只登錄過一次,可以認為登錄的賬號是無法退出的,除非成功另外一個賬號;

由此,我開始懷疑,支付寶WAP支付接口的Cookie有問題,應該是為了方便性設(shè)定存了很久時間。

于是我打開用Firebug的Cookie頁面一探究竟,我對其中一條名為 ALIPAY_WAP_CASHIER_COOKIE 的Cookie產(chǎn)生的興趣,就是下圖紅色箭頭所指的那一條,這是一條64個只含大寫字母和數(shù)字的字符串,有經(jīng)驗的人都會知道,這一般就是哈希算法產(chǎn)生的密文(可能是MD5、SHA等的組合吧);

我抱著試一試的心態(tài),我在隔壁同事的電腦打開了支付寶的WAP支付頁,然后把這條Cookie復制到了過去,奇跡果然產(chǎn)生了,我的賬號直接在他那里登錄成功了,不用輸?shù)卿浢艽a也不需要手機號碼短信認證。就是下圖這個樣子。

到這里,能看到的隱患就是黑客通過把木馬安裝在店家的WIFI,用來竊取Cookie信息,把上述這個Cookie拿走,然后慢慢試錯,直到把6位密碼破解出來(6位密碼可以算是弱口令了),如果采集的Cookie比較多,能暴力破解成功還是可以考慮的。

然而還有一種更恐怖的攻擊方法,注意到這條Cookie是 64個只含大寫字母和數(shù)字的字符串,也就基本可以斷定這個是哈希算法加密的,而對于那些有豐富經(jīng)驗的黑客來說,簡單哈希加密的密文跟明文沒有太大區(qū)別,不信你可以看看 這個網(wǎng)站,兩到三級的哈希加密基本都能被查出來,而這已經(jīng)是公開的技術(shù)了,私密的民間高手技術(shù)有多高可以想象了吧。他們只需要用幾個賬號在支付寶網(wǎng)站生成幾個這種Cookie,然后還原出加密方法。他們能做的有兩件事:

1、使用大批量賬號,可能達到數(shù)百萬級別,自動生成Cookie然后偽造登錄,暴力破解密碼。雖然每個賬號在三次試錯機會中能撞對的概論很小很小,但他們可以延長試錯時間,而且基數(shù)這么大,成功的機會還是很多的。

2、第二個利用方法雖然沒有直接經(jīng)濟效益,但卻可以讓整個支付寶系統(tǒng)陷入癱瘓。因為支付寶密碼輸入錯誤超過3次就會賬號被凍結(jié),可以想象數(shù)千萬甚至上億的支付寶賬號被凍結(jié)能給阿里帶來多大的沖擊嗎?這種攻擊最受益的應該是阿里的競爭對手們吧。

因為此危害十分大,因此我通過烏云報告給阿里巴巴,然而在經(jīng)過了一個星期的漫長審核后,它給了這樣一個答復

  呵呵。。。

然而當我放完國慶長假回來,再次打開支付寶的WAP頁,卻發(fā)現(xiàn)這個Cookie漏洞被修復了,已經(jīng)沒有了幾條可能有問題的Cookie?。?!

烏云平臺里的廠商規(guī)則里有這樣一條嚴禁行為:“a)消極處理安全問題包括不負責任的 評估安全問題的嚴重性和后果,忽略后又悄悄修復等”。因此我多次用郵件以及微博的方式同烏云溝通,要求嚴肅處理此事情,不要傷害小白帽(以后可能要成黑帽 子了)的一片心思。然而并沒有得到什么有實際意義的答復。

前段時間看的一篇文章《一個iOS漏洞值多少錢?》,里面有這樣一句話“大多數(shù)白帽子對于蘋果這種高冷的行為感到受傷,從高雪峰苦笑的臉上似乎也找到同樣的答案。”。同樣,我也對阿里巴巴以及烏云的這種行為感到受傷。

既然漏洞已經(jīng)修復了,烏云不肯公開,我就在博客園里給大家攤開來說吧,僅以拋磚引玉,望各位前輩多多指教。

鏈接已復制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號