亚洲日本免费-啊轻点灬太粗太长了三男一女-麻豆av电影在线观看-日韩一级片毛片|www.grbbt.com

監(jiān)控網(wǎng)絡(luò)流量?支付寶安全控件“附贈”的可疑進(jìn)程

  阿里巴巴支付寶的一個進(jìn)程Alipaybsm.exe被懷疑監(jiān)控網(wǎng)絡(luò)流量,它會復(fù)制發(fā)送的數(shù)據(jù)到接收緩沖中。

  在接下來的篇幅中,我要講一個目前還沒結(jié)束的故事。故事可能還會繼續(xù)發(fā)展下去,也可能因為我的懶而就此打住。但至少我覺得目前已經(jīng)有足夠有意思的信息可以讓諸位知道了。這件事,跟支付寶有關(guān),跟(網(wǎng)絡(luò))信息安全也可能有一些關(guān)系。有興趣的朋友,可以接著看下去。

  我以前曾寫過一個服務(wù)器Ping值測試程序(參見這里《寫了個批量測試服務(wù)器Ping值的小工具》)。這個程序一直都能滿足我的需要,直到有一天在我老婆的筆記本W(wǎng)in7 x64系統(tǒng)上遇到了問題:對幾乎所有的IP,我這個程序的Ping都很快收到了回應(yīng),快得不正常,幾乎就像做了個本地調(diào)用一樣,與實際情況不相符。于是我打算看看這是怎么回事情。

  當(dāng)時我人在公司,VC6遠(yuǎn)程調(diào)試又不方便。最后靠著DbgView終于搞清楚了:接收到的數(shù)據(jù)中,多出來了一份不正常的東西。我之前的代碼,并沒有估計到這份不正常的數(shù)據(jù)可能會出現(xiàn),所以處理上出了些問題。

  OK,這算是我的Bug。可這“不正常的數(shù)據(jù)”到底是什么東西?我把它Dump出來一看,還真是有點奇怪!ICMP Type是8,源地址和目的地址則與預(yù)期的Echo回應(yīng)包剛好相反。算上sendto時候系統(tǒng)自己加上的IP包的包頭,跟我送去發(fā)送緩沖區(qū)里的數(shù)據(jù)那是一模一樣。

  要解決我程序里的這個問題非常簡單。但是另一個問題就不那么好回答了:為什么其它電腦上不會這樣,偏偏這臺電腦會出現(xiàn)這種奇怪的事情?

  直接答案很簡單——它一定跟別的電腦有什么地方不一樣!

  那么還有第二個問題:到底是什么地方不一樣呢?

  可以說是我的幸運,也可以說是阿里集團(tuán)的不幸。因為我的Taskmgr里面進(jìn)程列表設(shè)置為按ASCII字母序排升序的緣故,我很快就找到了這第二個問題的答案:Alipaybsm.exe。殺掉Alipaybsm.exe這個進(jìn)程,前面提到的那份“不正常的數(shù)據(jù)”就不再出現(xiàn)。而這個Alipaybsm.exe似乎由AlipaySecSvc.exe在守護(hù),過了一會兒就又自己啟動起來了。它一出現(xiàn)在進(jìn)程列表中,我一試,哈,那個奇怪的現(xiàn)象就又出現(xiàn)了。

  后來,我把這事情在Twitter上說了一下,還引發(fā)了一場小小的討論。

  我目前還沒完全想明白Alipaybsm.exe這樣做的目的是什么。初步感覺,有可能是跟背地里監(jiān)控網(wǎng)絡(luò)流量有關(guān)。畢竟,目的地址不正確的數(shù)據(jù),就算被放入Socket接收緩沖里面,在網(wǎng)絡(luò)層與傳輸層之間估計也被濾掉了。我這次是因為用了SOCK_RAW,需要自己下到網(wǎng)絡(luò)(IP)層來處理數(shù)據(jù),才碰巧發(fā)現(xiàn)了這個情況。如果只是在傳輸層(TCP/UDP)從事工作,估計不會有任何察覺。

  只不過,反過來講,如果能做到復(fù)制數(shù)據(jù)到Socket接收緩沖,那應(yīng)該完全可以做到監(jiān)控流量而不帶任何痕跡才對。所以我目前還只能理解為,Alipaybsm.exe想完全監(jiān)控網(wǎng)絡(luò)流量,所以利用了這個手段(復(fù)制發(fā)送的數(shù)據(jù)到接收緩沖中),但干這事屁股沒擦干凈(也可能沒法擦干凈),才產(chǎn)生了我遇到的這些情況。

  我本來以為當(dāng)時那個Alipaybsm.exe是個假貨。但看EXE的詳細(xì)信息,以及綁定的數(shù)字證書,都像是支付寶官方的真貨。我又以為那只是一個不成熟的版本,可能有Bug,但我前兩天為了轉(zhuǎn)一筆賬,又去下載并安裝了一個支付寶安全控件,然后它又出現(xiàn)了,帶著它那奇怪的行為又出現(xiàn)了。

  所以,我們來仔細(xì)看看這貨吧:

  看上去挺正常吧?

  在Twitter上討論的時候,有人表示,在Mac上用防火墻沒觀察到有這個現(xiàn)象。為此,我今天特意去確認(rèn)了一下:在Windows上抓包,也觀察不到這個現(xiàn)象。我估計,只有自己寫基于SOCK_RAW的程序,才能收到這些數(shù)據(jù)。為了檢查這種特殊的行為,我專門寫了個小程序AlipaybsmTester,基本上就是一個單地址單次單線程的PingTester。

  從這幅截圖中可以看到,Microsoft Network Monitor只抓到了一來一回共兩個包,但我的測試程序發(fā)了一個包收到了兩個,內(nèi)容各不相同。如果殺掉Alipaybsm.exe,那就只會收到后一個包了。

  接下來再看看這個Alipaybsm.exe的一些更好玩的事情:

  很奇怪的是,它其實并不是隨著“支付寶安全控件”(Aliedit.exe)裝上去的。當(dāng)你登錄支付寶,根據(jù)Web頁面上的提示安裝了“支付寶安全控件”時,只會在Program Files (x86)alipay下面建一個名字叫alieditplus的目錄。

  但是過一會兒(我這次過了30分鐘左右),在alieditplus下面會出現(xiàn)一個update目錄,并下載一個SafeTransaction_Setup.exe放在其“jobfile mpzip_1009_”子目錄中(不同時期不同環(huán)境中路徑可能會有所不同)。隨后Program Files (x86)alipaySafeTransaction目錄便出現(xiàn),里面就有Alipaybsm.exe(當(dāng)然還有一些別的)。

  我在網(wǎng)上想搜一下關(guān)于這個Alipaybsm.exe或SafeTransaction_Setup.exe的相關(guān)信息,發(fā)現(xiàn)少得可憐。Alipay官方完全沒有提到過這些東西,好像它們是感染了AIDS的私生子一樣。不過每個安裝了支付寶安全控件的電腦上,估計都會有這些個東西(還有個AlipayDHC也值得注意)。我認(rèn)為以這種方式進(jìn)行推廣的程序,很可能另有其目的,不見得真的是保障個瀏覽器安全這么簡單。如果真是為了保障瀏覽器安全,完全可以公開(乃至大張旗鼓地)宣傳,然后打包到安裝包里一起分發(fā)下去正大光明地安裝,不是嗎?

  PS: 我后來發(fā)現(xiàn),殺掉AlipaySecSvc.exe也會導(dǎo)致復(fù)制數(shù)據(jù)包的現(xiàn)象中斷,并且重啟該服務(wù)之后,恢復(fù)現(xiàn)象花的時間比單單殺掉Alipaybsm.exe要長。可見Alipaybsm.exe的角色大概只是一個行動的發(fā)起者和結(jié)果的分析者,具體對流量實施監(jiān)控的行為,很可能是它去調(diào)用AlipaySecSvc.exe中的某些個服務(wù)來完成的。這說明對于“支付寶安全控件”本身也不能掉以輕心。相關(guān)功能其實可能一直就放在AlipaySecSvc.exe中,只是沒有人來扣扳機(jī)而已。而這個扣扳機(jī)的可以是Alipaybsm.exe,也可以是別的誰,那誰誰誰。

 

上一篇:智能無懼挑戰(zhàn) 山石網(wǎng)科轟動RSA2015

下一篇:跟我學(xué)姿勢:極客教你如何科學(xué)的看電影