微信支付曝安全漏洞20天,百萬商戶「裸奔」,可不付款「0元購」

微信支付曝安全漏洞20天,百萬商戶“裸奔”,可不付款“0元購”

微信提示商家排查漏洞,“不必過度恐慌”,併發布安全問題指引與檢查修復建議。

文 | 張山

零售老闆內參獨家專稿 未經許可不得轉載

近日,關於微信支付存在安全漏洞的消息,引發商戶們的關注討論,甚至恐慌。

7月3日,有用戶在安全社區公佈了微信支付官方SDK(軟件工具開發包)存在的漏洞,此漏洞可導致商家服務器被入侵,一旦攻擊者獲得商家的關鍵安全密鑰,攻擊者可以竊取商家服務器的任何信息,通過發送偽造信息來欺騙商家,無需給商家付款即可白拿任何東西,也就是所謂的“0元購”。

漏洞消息曝出後,7月5日,微信支付官方對外表示漏洞已修復,商家不必過度恐慌。

至今,該安全漏洞被曝光已20天,有安全技術人員做了測試演示後發現,大量商戶依然暴露在漏洞下。由於該漏洞涉及安全技術問題非常專業,商戶不知道具體如何操作,及時更新修復漏洞、規避風險,因此產生疑慮,甚至恐慌。

微信支付曝安全漏洞20天,百萬商戶“裸奔”,可不付款“0元購”

對於商戶的疑慮和關切,微信方面昨日回覆《零售老闆內參》APP(微信ID:lslb168),稱“該漏洞為常見漏洞,此次問題服務器實際影響範圍不大,完全可控”,微信針對漏洞問題已經發布了《關於XML解析存在的安全問題指引》,並提供了《檢查及修復建議》。

然而,在一些討論此事的網絡社區和社群中,根據安全技術人員的提示,筆者從代碼託管平臺上搜索發現大量商戶漏洞依然存在,不少商戶的漏洞並未得到修復和控制。

- 1 -

安全漏洞:遭攻擊可不付款白拿,甚至洩漏商戶的消費者信息

上述安全漏洞問題,究竟是怎麼一回事呢?

安全技術專家、鬥象科技聯合創始人謝忱解釋,從當前被公開的漏洞信息來看,網絡攻擊者可利用了微信支付官方SDK(軟件工具開發包)存在的漏洞,將自己偽裝成“微信支付平臺”,繼而通過微信的漏洞實現偽造與商戶的直接通信,在篡改微信的正常通信信息後達到“偷樑換柱”的目的。

謝忱介紹,正常的支付流程應該是由用戶發起,經由微信支付平臺到達商家,商家會有一個與微信支付平臺確認支付結果的過程,而網絡攻擊者恰恰是利用了相關漏洞“騙”過了商戶。一些商家的安全防護水平較低,攻擊者獲取該商戶的密鑰,再通過這個漏洞就可以實現“0元購”等操作,嚴重者還可能會導致商戶的消費者信息等數據內容洩漏。

微信支付曝安全漏洞20天,百萬商戶“裸奔”,可不付款“0元購”

支付安全漏洞“0元購”等操作,嚴重者還可能會導致商戶的消費者信息等數據內容洩漏。

對於安全漏洞問題,微信方面回覆《零售老闆內參》APP(微信ID:lslb168)說,本次漏洞本質為商戶自身服務器後臺系統中存在XML外部實體注入漏洞(簡稱XXE),微信支付技術安全團隊第一時間關注及排查,並已對官方網站上受影響的服務器端SDK漏洞進行更新,修復了已知的安全漏洞,並已提醒商戶及時更新。

微信方面表示,“該漏洞為常見漏洞,只要在程序接收到XML數據進行解析之前,調用相關的函數關閉XML語言的上述特性即可有效防範和解決。目前已經啟動商戶的安全提示,提示商戶主動排查其自建系統是否存在該漏洞,並給出修復指引,進行協助。”

- 2 -

安全漏洞已修復?實測大量商戶仍暴露在漏洞下

微信表示修復了已知的安全漏洞,商家不必過度恐慌。

然而,在一些網絡社區和社群中,針對此漏洞的討論和疑慮仍在蔓延。筆者根據網絡社區和社群中參與討論的安全技術人員的提示,在代碼託管平臺Github、碼雲上,搜尋漏洞函數以及notify關鍵字等,很容易就能找到存在漏洞的商家。

微信支付曝安全漏洞20天,百萬商戶“裸奔”,可不付款“0元購”

安全技術人員介紹,如代碼中出現“notify_url=http://xxx”,出現這個以後不用看代碼邏輯,可進行黑盒批量測試進行撿漏;發現notify接口函數調用了微信sdk存在漏洞版本的WXPayUtil.xmlToMap函數,或者商戶自己實現xml解析函數但未禁用外部實體,這樣的商戶依然存在漏洞。經搜索和對比,發現了大量的商家漏洞仍然存在。

- 3 -

商戶如何規避風險?微信發佈安全問題指引及修復建議

由於微信支付接入的商家數量達到上百萬,使用微信支付老版本的商戶自然不在少數。雖然微信官方更新了系統,不過,《零售老闆內參》詢問一些零售商戶瞭解到,由於商戶平臺並非需要每天登錄,目前還有不少商戶並不知曉有此更新,甚至有些集成商戶由於集成商沒有通知,導致他們至今不知道該如何是好。

這些安全技術問題對小微商戶來講,普遍有一定難度,他們不清楚具體該如何操作才能規避漏洞和風險。這也是目前商戶存在恐慌情緒的原因。

對此,微信方面向《零售老闆內參》表示,微信目前已經啟動商戶的安全提示,提示商戶主動排查其自建系統是否存在該漏洞,並給出修復指引進行協助,“正在加快客服與商戶的溝通,主要是引導規避漏洞”。

此外,微信支付會協助商戶發現和排除安全問題,共同提升移動支付整體安全性,並已發佈了《關於XML解析存在的安全問題指引》(可以點擊進入微信支付商戶平臺查看:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=23_5

《安全問題指引》向商戶強調,“如果你在使用支付業務回調通知中,存在以下場景有使用XML解析的情況,請務必檢查是否對進行了防範。”

其中,包括以下5大主要場景:

場景1:支付成功通知;

場景2:退款成功通知;

場景3:委託代扣簽約、解約、扣款通知;

場景4:車主解約通知;

場景5:掃碼支付模式一回調;

(注:APP支付的用戶端SDK不受影響,但APP支付成功回調通知裡面要檢查。)

同時,由於微信支付商家用戶數量規模龐大,一些小微商戶和零售老闆們反映,不知道在哪些渠道獲取具體操作信息。如何告知商戶,如何確保商戶都能確實收到更新通知信息?

微信方面回覆稱,微信支付會通過以下幾個系統號碼,通知商戶進行安全周知和詢問是否授權平臺進行安全掃描:(0755)36560292、(0755)61954612、(0755)61954613、(0755)61954614、(0755)61954615、(0755)61954616。

此外,微信方面還提示了“檢查及修復建議”:

1.如果您的後臺系統使用了官方SDK,請更新SDK到最新版本 SDK的鏈接:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1

2.如果您是有系統提供商,請聯繫提供商進行核查和升級修復;

3.如果您是自研系統,請聯繫技術部門按以下指引核查和修復:

- 4 -

如商戶遭攻擊造成資金損失是否賠償?微信尚未明確回覆

隨著消費零售行業移動互聯網應用的普及,越來越多的線下商戶開始向網上遷移,而實際上,使用了大平臺提供的接口和工具的這些商戶“互聯網+”水平非常有限,尤其是應對網絡安全等技術能力。

由於需要商家自己來完成排查和更新的操作,也不少商戶還是提出了新的疑問:如果沒有接到通知的商戶,或者在接到通知更新期間被攻擊了,以及更新操作未成功等,致使安全漏洞問題依舊存在,微信是否會承擔相應的責任?如果因為安全漏洞問題造成資金損失的話,微信是否會給予商戶賠償?微信是否針對這一安全漏洞風險制定了相應的賠償機制?

對於商戶的這一疑問和顧慮,目前,微信方面尚未給出明確答覆。

鑑於當前“0元購”的安全漏洞和風險依然暴露,在此提醒廣大商戶和老闆們趕緊自查更新,微信平臺通知並協助商戶修復漏洞,以免商戶遭受攻擊而造成資金和財產損失。


分享到:


相關文章: