(金融行業(yè)移動 APP 受漏洞影響如圖所示)
?
高危占比23%:數(shù)據(jù)傳輸不安全導(dǎo)致盜取用戶錢財損害平臺利益。
中危占比40%:用戶敏感信息泄露,應(yīng)用被重打包后加入惡意代碼和廣告。
低危占比37%:應(yīng)用崩潰,APP主要邏輯被逆向。
支付安全問題位列金融行業(yè)移動 APP 安全問題之首。
安全問題種類繁多,但其究竟是如何給廣大 APP 用戶造成危害的,我們選取一枚案例共同深入分析。
?
金融行業(yè)移動 APP 所遇到的安全問題
案例說話
1.客戶端與服務(wù)器傳輸安全
中間人攻擊原理:中間人攻擊主要發(fā)生在客戶端與服務(wù)器通信過程中,黑客利用網(wǎng)絡(luò)協(xié)議的漏洞,進(jìn)行數(shù)據(jù)監(jiān)聽數(shù)據(jù)竊取以及數(shù)據(jù)篡改等違法行為。
正常通信過程如下所示 :
在android的https協(xié)議中,若自定義的X509TrustManager不校驗證書或?qū)崿F(xiàn)的自定義HostnameVerifier不校驗域名接受任意域名,就會觸發(fā)中間人攻擊漏洞。
非正常通信過程如下圖所示: ? ??
樂固團(tuán)隊分析發(fā)現(xiàn)大部分銀行和理財類APP,都存在此漏洞。
(某銀行 APP?反編譯代碼截圖)
?
2.用戶輸入數(shù)據(jù)傳輸安全
用戶手機(jī)如果 root過,病毒軟件就可以通過監(jiān)聽系統(tǒng)鍵盤或第三方輸入法等方式來獲取用戶輸入的信息,并轉(zhuǎn)發(fā)到不法分子手中。
著名漏洞平臺上曾經(jīng)曝光過著名輸入法的輸入漏洞。
(某電商 APP?鍵盤記錄漏洞)
?
3.本地數(shù)據(jù)安全
安卓 Shared Preferences 本地存儲方式是開發(fā)者常用的存儲本地信息的方式,但在 root 過的手機(jī)上,黑客可以輕松查閱這些明文保存的信息。
而 android 自帶的 SQLite 數(shù)據(jù)庫,也是以明文的形式存儲在本地文件中的。黑客同樣可以在 root 過的手機(jī)中查看這些信息。
(手機(jī)里存儲的明文文件)
?
金融行業(yè)移動 APP 安全問題
解決方案
1.安全支付解決方案
采用高強(qiáng)度的加密鍵盤,嚴(yán)格的雙認(rèn)證傳輸通道,從輸入層到傳輸層保護(hù)了每一筆交易每一次數(shù)據(jù)傳輸?shù)陌踩?/span>
2.本地安全存儲方案
對本地文件進(jìn)行加密保護(hù)。防止本地文件被竊取盜用的風(fēng)險。
3.高級 APP 安全防護(hù)方案
能在 APP 代碼層面進(jìn)行加密加花,可防破解,防盜版,防注入,防調(diào)試等。
4.安全身份認(rèn)證體系
專為金融客戶量身打造,包括人臉核身,短信認(rèn)證等多重方案??蓭椭鹑诳蛻粼谏矸菡J(rèn)證這一層打擊不法分子。
?
電商行業(yè)移動 APP安全
現(xiàn)狀概述
2016年移動電商APP總用戶數(shù)量約6.3億,其中約2.7億用戶遭受過不同程度安全問題,占比約43%。
(電商行業(yè)移動 APP 受漏洞影響如圖所示)
?
高危占比14%:數(shù)據(jù)傳輸不安全導(dǎo)致用戶訂單泄露、篡改。
中危占比55%:本地數(shù)據(jù)存儲不安全、用戶隱私泄露。
低危占比29%:APP 業(yè)務(wù)邏輯被破解、算法剽竊。
支付安全問題依舊位列電商行業(yè)移動 APP 安全問題之首,而被“薅羊毛”問題當(dāng)屬電商行業(yè)移動 APP 安全問題的代表。
本篇報告我們針對電商行業(yè)移動 APP 代表性安全問題——被“薅羊毛”共同深入分析。
電商行業(yè)移動 APP 所遇安全問題
圖示說話
與傳統(tǒng)零售相比,用戶網(wǎng)購體驗流程區(qū)別較大,基本遵循下圖所示的網(wǎng)購流程。
(?網(wǎng)購流程圖)
?
每一個環(huán)節(jié)都可能引致重大的安全問題,電商 APP 也不例外。下面談?wù)劸W(wǎng)購流程中較容易出現(xiàn)安全問題的三個環(huán)節(jié):
1.賬號注冊–登錄
電商 APP 的使用流程中,注冊–登錄過程都可以通過一些自動化工具來完成——批量注冊賬號、掃號?!把蛎h”們則利用了這一點(diǎn),?刷取了大量的活動資源。因此,電商APP賬號注冊–登錄系統(tǒng)則是電商平臺打擊黑產(chǎn)以及薅羊毛的第一道防線。
(“羊毛黨”們批量注冊、掃號流程圖)
PS:掃號是指使用掃號器對賬號、密碼進(jìn)行批量驗證。
2.商品瀏覽
移動電商行業(yè)中,商家通過“平臺活動”吸引用戶、促進(jìn)銷量。而“羊毛黨”則是通過“強(qiáng)占”商家的這種優(yōu)質(zhì)資源并轉(zhuǎn)手真正的用戶來謀利。損害了商家與用戶的雙向權(quán)益。
(薅羊毛關(guān)系鏈)
3.訂單支付
支付系統(tǒng)是電商 APP 必不可少的一個模塊,涉及到用戶的賬戶密碼、資金安全。用戶在 APP 上支付時,數(shù)據(jù)如果不做有效保護(hù),隨時會被不法分子利用。?
?
電商行業(yè)移動 ?APP 所遇安全問題
案例說話
?
國內(nèi)著名移動運(yùn)營商遭黑卡薅羊毛,流量平臺一月被搶8.2萬G
2016年12月10日至2017年1月6日期間,某運(yùn)營商的“有獎答題”營銷活動被羊毛黨瘋狂利用,導(dǎo)致活動開始時網(wǎng)頁崩潰,活動福利一搶而空。
參考鏈接:
http://tech.qq.com/a/20161214/003524.htm
?
上述案例全過程分析
1.薄弱環(huán)節(jié):無法鑒別真實(shí)用戶
爆發(fā)這場“薅羊毛”大戰(zhàn)的技術(shù)原因在于運(yùn)營商(客戶端APP、APP后臺)無法有效識別出哪些是真實(shí)用戶、哪些是羊毛黨,也就是缺少圖中所示的強(qiáng)大、高效的用戶身份鑒別模塊。
(身份鑒別模塊作用示意圖)
?
2.突破關(guān)鍵:手機(jī)號驗證已經(jīng)不是門檻
為提高注冊用戶身份的真實(shí)性、過濾出高價值用戶以及防止惡意注冊、掃號,案例中的運(yùn)營商使用了短信驗證碼。為此,如何突破短信驗證碼就成為薅羊毛的關(guān)鍵一步。如下圖手機(jī)打碼關(guān)系鏈圖。
(手機(jī)打碼關(guān)系鏈)
?
3.“薅羊毛”的產(chǎn)業(yè)鏈:分工有序
整個“薅羊毛”有著完備、成熟的產(chǎn)業(yè)體系。羊毛黨們經(jīng)過精心的準(zhǔn)備,接下來的攻擊和套現(xiàn)就變得簡單化、便捷化。羊毛黨們利用打碼平臺和卡商提供的海量手機(jī)號以及提供的打碼服務(wù)在運(yùn)營商的流量平臺上批量注冊賬號,并用注冊到的賬號采用自動化的軟件參與運(yùn)行商的“有獎答題”活動。整個薅羊毛關(guān)系鏈暴露出這樣的核心問題:單純依據(jù)手機(jī)號碼來鑒別用戶已不足以滿足電商 APP 被“薅羊毛”的安全需求??纯春诋a(chǎn)在這個方向的專業(yè)分工:
(“薅羊毛”過程圖示)
?
電商行業(yè) APP 安全問題
解決方案
隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,網(wǎng)購已經(jīng)成為居民生活消費(fèi)不可獲取的重要部分。除了移動應(yīng)用通用安全問題外,電商 APP 在業(yè)務(wù)安全方面存在的問題較大,騰訊云樂固針對電商 APP 提供了定制的安全解決方案。
1.支付安全解決方案
采用高度定制的安全鍵盤,嚴(yán)格的雙認(rèn)證傳輸通道,確保輸入數(shù)據(jù)安全以及輸入層到傳輸層的數(shù)據(jù)安全,有效防止截屏、輸入信息竊取等威脅。
2.應(yīng)用安全解決方案
樂固安全產(chǎn)品在源碼、資源文件、運(yùn)行時內(nèi)存、逆向破解等方面對電商 APP 進(jìn)行全方位保護(hù)。
3.業(yè)務(wù)安全解決方案
在 APP 集成短信驗證碼安全 SDK,與騰訊云樂固&天御防刷后臺配合,有效防止批量注冊、掃號以及“薅羊毛”等惡意行為,避免企業(yè)被刷帶來的巨大經(jīng)濟(jì)損失。
(多維度聯(lián)合防刷–防薅)
?
小結(jié)
對抗“羊毛黨”,根源上是識別用戶是否真實(shí),是否可靠。電商平臺需從多維度去鑒別、過濾。
?
游戲行業(yè)移動 APP安全
現(xiàn)狀圖示
據(jù)統(tǒng)計,2016年游戲類移動 APP 款數(shù)約2.6萬,2015年游戲類移動 APP 款數(shù)約1.5萬,2016年相比2015年增長約73%。
(游戲行業(yè)移動 APP 受漏洞影響如圖所示)
?
高危占比29.9%:游戲客戶端與服務(wù)器數(shù)據(jù)傳輸不安全導(dǎo)致游戲數(shù)據(jù)可篡改、可泄露等;
中危占比29.2%:游戲客戶端本地存檔數(shù)據(jù)未加密,導(dǎo)致存檔可篡改、隱私泄露;
低危占比40.9%:應(yīng)用內(nèi)存在部分邏輯不嚴(yán)謹(jǐn),導(dǎo)致在某些情況下應(yīng)用崩潰。
APP 破解問題位列游戲行業(yè)移動 APP 安全問題之首。
?
游戲行業(yè)移動 APP 安全問題
案例說話——重打包
如同傳統(tǒng)的互聯(lián)網(wǎng)黑產(chǎn)一樣,手機(jī)游戲黑產(chǎn)主要目的是獲取非法收益,其手法多種多樣,主要包括插入惡意代碼、插入廣告、破解等。
首先,插入惡意代碼主要的方法是黑客對下載的游戲安裝包進(jìn)行反編譯,在其中加入惡意代碼,再將游戲重新打包為安裝包,進(jìn)行二次發(fā)布。相對于原始游戲應(yīng)用,插入惡意代碼的游戲應(yīng)用可以進(jìn)行惡意扣費(fèi)、讀取用戶的隱私數(shù)據(jù)、破壞用戶的設(shè)備,極大損害游戲廠商與游戲玩家的利益;
其次,插入廣告作為獲取收入的最直接方式,經(jīng)常出現(xiàn)在手機(jī)游戲應(yīng)用中。普通用戶可能不知道這些廣告中大部分來自于“打包黨”的二次插入,“打包黨”們通過反編譯工具向應(yīng)用中插入廣告代碼與相關(guān)配置,再在第三方應(yīng)用市場、論壇發(fā)布;
最后,破解作為直接破壞游戲平衡性的最佳方法一直是游戲開發(fā)者深惡痛絕的一種安全問題。眾所周知,很大一部分游戲的收入來自于游戲中出售的虛擬物品,而黑客可以使用反編譯的手段修改游戲邏輯代碼繞過付費(fèi)驗證邏輯,達(dá)到不付費(fèi)即可體驗游戲收費(fèi)功能的目的。這不僅損害了游戲廠商的利益,更破壞了整個游戲體系的平衡,對整個游戲運(yùn)營系統(tǒng)是暴擊。
與此同時,部分渠道被重打包的盜版游戲代碼內(nèi)除了游戲本身的邏輯代碼外還包含了一些發(fā)送短信的惡意代碼,相關(guān)的模塊在原始的正版應(yīng)用中并不存在,如下圖:
游戲行業(yè)移動 APP 所遇安全問題
案例說話——外掛
外掛作為破壞游戲平衡性的常規(guī)手段對單機(jī)游戲與網(wǎng)絡(luò)游戲均具備較大的破壞力,對于單機(jī)游戲來說,外掛可以協(xié)助玩家以較低成本完成游戲,破壞游戲本身的平衡性與可玩性;對于網(wǎng)絡(luò)游戲來說,外掛在破壞游戲平衡性的同時也會增加服務(wù)器端的計算壓力。也正因為外掛對于游戲的破壞力驚人,外掛通常被游戲開發(fā)者、運(yùn)營商認(rèn)定為主要安全問題。
騰訊云樂固團(tuán)隊對市場上比較流行的一款消除類游戲進(jìn)行調(diào)查發(fā)現(xiàn),該游戲外掛以輔助工具的名義存在于各大游戲論壇中,其使用方法簡單粗暴,并且配以圖文教程。其主要手段是提示消除路徑、增加道具使用次數(shù)、篡改消除單元排列,通過這些“輔助”方法,游戲難度大大降低,游戲平衡性蕩然無存。
下圖是篡改消除單元排列的效果圖:
游戲行業(yè)移動 APP 安全問題
解決方案
通過上文的分析可以看出,手游行業(yè)所存在的安全問題主要包括重打包與外掛兩大類,騰訊云樂固推出一套完善的移動游戲安全解決方案。
1.游戲反重打包解決方案
針對手機(jī)游戲行業(yè)中存在的插入惡意代碼、插入廣告、破解等問題,樂固制定了高強(qiáng)度的反重打包方案。在游戲開發(fā)者完成開發(fā)后,樂固對游戲安裝包進(jìn)行反重打包處理,處理后的游戲安裝包內(nèi)的任何代碼、資源文件發(fā)生改動均無法正常運(yùn)行游戲。
2.游戲反外掛解決方案
針對市場上出現(xiàn)的外掛進(jìn)行分類對抗,提高游戲?qū)ν鈷斓拿庖吡ΓWo(hù)游戲平衡性。
?
移動 APP 安全行業(yè)現(xiàn)狀總結(jié)
移動 APP 在安全方面存在較多的問題,并且問題分布與應(yīng)用所在的行業(yè)具有密切的關(guān)系。比如金融行業(yè)的 APP 主要存在的安全問題大都跟數(shù)據(jù)相關(guān),包括通訊數(shù)據(jù)安全、本地數(shù)據(jù)存儲安全、運(yùn)行時數(shù)據(jù)安全等;電商行業(yè)的APP對注冊、登錄、賬戶密碼安全相關(guān)的方面需求更為強(qiáng)烈,包括密碼撞庫、業(yè)務(wù)防刷、密碼泄漏等;游戲類APP所存在的安全問題根據(jù)游戲類型的不同而千差萬別,但究其本質(zhì)主要包括重打包、外掛兩大類。
對于APP開發(fā)團(tuán)隊來說,在復(fù)雜的外部環(huán)境中保護(hù)團(tuán)隊的開發(fā)成果是必要的,應(yīng)盡可能采取針對行業(yè)的專業(yè)安全解決方案防范安全問題的出現(xiàn)。
對于APP用戶來說,使用盜版應(yīng)用存在的風(fēng)險較大,建議從正規(guī)的應(yīng)用市場下載應(yīng)用。
移動 APP 安全行業(yè)報告暫告一段落。在移動 APP 安全方向我們將繼續(xù)推出技術(shù)揭秘系列文章。