1. 程式人生 > >揭祕蘋果內購的大漏洞和內購訂閱的黑陷阱

揭祕蘋果內購的大漏洞和內購訂閱的黑陷阱

中文網路上關於蘋果內購簡直是怨聲載道,除了它那嚴格的稽核政策及坑爹坑爹坑爹的30%提成,還有各種簡單粗暴的體驗以及致命漏洞。我研究了相關資料,做了點總結。

我們通過百度搜索“Apple store訂閱黑陷阱” 得到1,130,000個結果。我認為這些知識鳳毛麟角。還有很多不懂這個黑陷阱的使用者。他們才是蘋果產品使用的主流使用者。要知道蘋果每年的營收是多少嗎?蘋果2016年的淨營收為2156億美元。一個生產平板電腦和手機的公司,他的技術含量能比過華為嗎?能必過愛立信嗎?華為2016年銷售額不過300億美元左右,要知道華為的產品線涵蓋了IT,CT的所有領域。

圍繞蘋果內購的漏洞,已經形成了一個完整、龐大的黑色產業鏈。正邪難兩立,對付這些隱蔽的邪門歪道,只能是把這條路揭露出來,讓它坍塌掉。

一、蘋果IAP簡介

國內的第三方支付行業非常發達,常見的快捷支付、閘道器支付、代付代發等產品,都是廣大支付產品經理所熟知的。這些支付產品的標準化程度很高,接入起來相對容易。而蘋果應用內購(In App Purchase)就沒那麼流行,主要是電商、O2O等常見行業,是可以直接不走蘋果內購的。

但是對於虛擬類商品、可以在應用內完全滿足使用者需求的商品,這些商品的支付行為,蘋果是要求必須採用IAP的。關於這個標準的劃分,以及如何規避這個標準,網路上有一些討論,感興趣的讀者可自行搜尋,本文不再贅述。

二、IAP的主要流程

以充值購買虛擬幣舉例,蘋果IAP合理的步驟如下:

1、使用者點選充值按鈕

2、客戶端獲取內購列表(從App內讀取或從自己伺服器讀取),向用戶展示內購列表

3、使用者在內購列表上選擇某商品,選擇購買

4、客戶端向服務端傳參,使用者ID,商品ID等

5、服務端建立訂單,訂單ID,使用者ID,訂單內容等

6、客戶端呼叫蘋果支付介面(蘋果也會建立訂單,略)

7、使用者通過AppStore賬戶驗證

8、蘋果伺服器驗證使用者請求

9、蘋果伺服器從使用者賬戶扣款

10、蘋果向客戶端返回購買成功資訊receipt

11、客戶端接收receipt並通知服務端

12、服務端校驗訂單(使用者ID,商品ID,商品售價,商品數量),並向蘋果伺服器校驗receipt,交易憑證驗證通過,則告知客戶端,並通知賬戶系統執行加幣操作

13、客戶端收到驗證結果,給使用者返回交易結果

網上關於蘋果內購的流程圖很少,我結合網上的資料與自己的思考,整理了一份流程圖:

僅從上述流程,可知幾個坑:

1、蘋果伺服器主要是與客戶端發生互動。即使是甫入門的產品經理,都知道客戶端傳輸的資訊很容易被篡改,至少要以服務端校驗為準,儘管後者也不是完全可靠。有些商戶不注意這點,那些使用IAP破解外掛的使用者就爽了。

2、蘋果打著為使用者隱私和利益考慮的旗號,對訂單支付結果返回的資訊非常摳門,商戶只能拿到一個可以驗證有效性的交易憑證,卻不知道對應的使用者到底是誰。這就為對賬埋下了深坑啊。商戶的訂單號和蘋果的訂單號無法關聯(至少我沒研究清楚如何關聯起來,知道的同學歡迎指出),使用者提交過來的收據,無法判定是否真實,無法與系統裡的交易記錄相關聯

3、除了提供交易憑證,對交易其他資訊的校驗是沒有的,如果商戶自己不驗證,那就準備哭吧。

三、黑產最愛之“蘋果36技術”

對於常見的首單退款、匯率套利、IAP破解外掛等漏洞,我們不細說了。重點說說現在最為猖獗的蘋果36技術。

大概從2016年5、6月份以來,蘋果內購“對30元以下交易延時扣款、實時返回扣款成功”的漏洞,被黑產人員發現併發揚光大了。形成了從養號、申卡到接單完整黑色產業鏈。其基本原理就是:既然你延時扣款,那我就讓你扣款失敗;既然你對扣款失敗的AppStore賬號做禁用處理,那我就批量註冊賬號。這樣操作的後果是:蘋果沒損失照樣拿30%提成,打掉牙齒和淚吞的是商戶,得承受鉅額的壞賬虧損,不僅拿不到訂單的70%收益,那30%的渠道成本還要被蘋果野蠻地扣除。此處我有一句話不知道當講不當講?誰能幫我把喬布斯的棺材蓋按著先。

主要的步驟如下:

1)申卡

目前有很多銀行卡都支援在實體卡基礎上開立虛擬銀行卡。像農業銀行、工商銀行、光大銀行等。每張虛擬卡廢掉後,可以登出再次申請。

2)支付寶綁卡

自從蘋果接入了支付寶,黑產人員綁卡可是更順溜了。畢竟AppStore經常抽風連不上。每個支付寶可以繫結三張虛擬卡(還是8綁?),然後把支付寶繫結AppStore賬戶上。至於支付寶賬戶和AppStore賬戶因為有未支付訂單被禁用?那時候遊戲道具或虛擬幣早就被花出去了,這兩個賬戶有人批量註冊售賣的。

3)接單

有淘寶賣家專門接單,各種遊戲等玩家在萬能的淘寶上聯絡他們。接單者接到後,獲得使用者的遊戲賬號和密碼,丟到相應的qq群裡,有人會負責接單支付。

4)其他

蘋果雖然也有一些防範措施,但是這些智障的措施在黑產面前簡直是漏洞百出。例如蘋果會禁用有未支付訂單的AppStore賬戶,那他們就批量註冊;蘋果會記錄裝置號,那他們就用改裝置號軟體。這個漏洞需要裝置用的是iOS8.1-8.?系統,黑產們就在淘寶上租用、購買這些裝置。

如何防範36技術?蘋果36技術的關鍵點:只能針對30元以下的交易。那麼很簡單,把30元以下的商品下架掉。如果出於對新使用者付費率的考慮,可以適當保留小金額的商品,同時做相應的風控措施,針對當日小額筆數過多的使用者進行監控。

由於36技術具備較高的自動化水平,國內有很多這種所謂的充值工作室,找幾個小弟,買幾臺裝置,兩三百塊錢學會技術,基本上每人日均盈利在2000元以上。有些接單的往qq群裡找單子時的廣告語都是“20個小弟24小時無休接單,十七八歲的小夥那手速你懂得”。

因為我只是瞭解了大概,上述步驟不盡準確。感興趣的同學可以去搜 蘋果36技術 相關的QQ群,花個兩三百塊學習下,學以致用賺點錢。

一個漏洞,只有被更多的人知曉、學會、利用,才能降低這個黑產的平均利潤率,才能引起更多商戶的警覺,才能讓這條路徹底坍塌掉。某種程度而言,黑產是網路安全的鯰魚,攻防相輔相成。

四、瞞天過海之篡改訂單

如果說蘋果36技術還是需要較大的成本,這條產業鏈上這麼多人分贓,使用者實際還需要付出大約六折的成本。那篡改訂單的成本就幾近忽略了。

在上面的流程圖中,有個綠色的節點,表示服務端在接到蘋果伺服器返回的交易憑證驗證結果之後,在驗證交易憑證是否使用過之前,需要對交易訂單進行二次驗證。這個節點主要就是要防範訂單被篡改。二次校驗通過後才可以進行發貨。

如果有人發起一筆600元的訂單(注意:藉助36技術,這600元也是無需真正付款的),獲得蘋果的有效交易憑證,然後將訂單中的product ID篡改為高金額的,而此時如果服務端不對訂單金額進行校驗,完全相信蘋果的交易憑證驗證結果,那這筆訂單自然是校驗通過,後續如果有疑問,再次驗證憑證,發現憑證還是有效的,不知道問題出在哪裡,百撕不得其姐。

除了對訂單金額校驗以攔截篡改訂單行為,商戶也可以同時客戶與使用者資訊,即校驗付款者的使用者ID和收貨者的使用者ID,或許能堵一下無需使用者賬號和密碼的代充值行為。

蘋果App Store被不法者鑽空子,植入大量詐騙應用

APP市場迅猛發展,開發商獲利頗豐

在今年的蘋果全球開發者大會上,蘋果公司宣佈,由於世界各地的人們都喜歡應用程式,使用者正以創紀錄的速度下載,其公司已經支付了開發商700多億美元,而去年僅支付了210億美元。

蘋果表示,遊戲和娛樂類別中的應用程式帶來的收入最多,主要來自流行的免費增值遊戲,包括內部程式購買以及內容訂閱。同時,照片及視訊類別程式在2016年發展最為迅猛,增幅接近90%。App Store主動付費訂閱量同比增長58%。生活、健康和健身類程式下載量強勢上漲70%。

但是,這裡我們有一個疑問,是不是上面提到的所有的錢都流進了合法應用程式開發人員的口袋呢?

實際情況可能並非如此!作為黑客兼應用程式開發人員,Johnny Lin於上週對蘋果的App Store進行了分析,發現應用商店中大部分的熱門應用程式都是完全虛假的,並正在通過“應用程式購買和訂閱機制”為開發商月賺數十萬美元。

詐騙者使用“搜尋廣告”平臺來提升應用程式排名

在去年6月份的全球開發者大會(WWDC)上,蘋果公司正式公佈了在App Store內嘗試“搜尋廣告”模式的戰略方針。而狡猾的開發人員正是利用“搜尋廣告”和一些搜尋引擎優化(SEO)來推廣其App Store中的應用,提升排名。

Johnny Lin在他發表的一篇名為《如何利用蘋果應用商店月入八萬美金》的帖子中寫道,

詐騙者們正在利用廣告沒有過濾和審批流程這一事實來實施非法活動。這些廣告看起來和實際結果幾乎沒有任何區別,有些廣告甚至佔據了整個搜尋結果的第一頁。而在進一步分析後,我發現,很不幸的是,這些並非孤立事件,它們在應用商店的暢銷應用(Top Grossing)列表中相當常見。而且這種情況不僅僅侷限於與安全相關的關鍵字,看起來詐騙者正在擴充套件其他關鍵字。

App Store搜尋廣告的具體內容

蘋果高階副總裁Phil Schiller表示,

每週App Store上有幾億搜尋,65%的應用下載都由搜尋帶動。對使用者和開發者來說,搜尋是很寶貴的工具。對開發者來說,這種推廣效率很高。

AppStore推出的搜尋廣告,可以從展示形式、條數、計費方式以及展示人群這四方面進一步瞭解。

1. 展示形式

蘋果App Store被不法者鑽空子,植入大量詐騙應用

搜尋廣告將作為第一個顯示結果出現在搜尋結果頁中。蘋果希望,通過它幫助開發者更有效地推廣自己的App。Phil Schiller說:使用者不會對搜尋引擎或社交媒體中的廣告陌生。與搜尋結果關聯度很高的才會出現在廣告位置上,搜尋結果只是App,不能通過搜尋得到別的東西。

2. 條數 

蘋果還是相對剋制,搜尋結果中的廣告有且僅有一條,並且會用藍色背景和圖示,清晰標識出這是一個廣告。

3. 計費方式 

定價系統採用CPC模式(Cost Per Click網路廣告的收費計算形式),只有使用者點選廣告才會計費。對營銷人而言,第二價格競價系統,是從其iAd引薦過來的技術,開發者只需要在使用者點選廣告時付費。蘋果認為,這是一套對開發者十分公平的系統。對一些小型獨立開發者來說,這套搜尋系統也會很高效。

4. 展示人群 

蘋果明確表示,13歲以下的青少年不會看到搜尋廣告。

注意!不要掉入虛假蘋果“應用內訂閱/購買”的陷阱 

Johnny Lin發現,在應用商店“暢銷應用”中有一款名為“Mobile protection :Clean & Security VPN”的應用程式,使用者只需將其拇指放在Touch ID上,就可以完成每週需要支付99.99美元訂閱費的垃圾服務。

蘋果App Store被不法者鑽空子,植入大量詐騙應用

根據Lin的說法,從移動應用資料分析公司Sensor Tower得到的資料顯示,單單這款應用程式每個月就可以為開發商帶來大約80000美元的盈利。

帶有拼寫和語法錯誤以及虛假評論的“Mobile protection :Clean & Security VPN”應用程式聲稱自己是一款病毒掃描器,並通過“提供免費使用服務”來吸引使用者安裝該程式,進而誘導使用者進行應用內支付。

但是一旦受害者點選免費試用,Touch ID螢幕上就會顯示:是否使用Touch ID來獲取一個7天的免費病毒/惡意軟體掃描服務?從2017年6月9日起,您將需要支付99.99美元/7天的訂閱費用。

蘋果App Store被不法者鑽空子,植入大量詐騙應用

通常,登入Touch ID螢幕的使用者都會無意中用手指輕觸Touch ID,如此一來,詐騙者每月僅從一個使用者身上就能賺取將近400美元。

根據Lin的統計發現,狡猾的應用程式開發人員已經至少騙取了200個人完成虛假的蘋果“應用程式內訂閱/購買”服務,按照每人每月需支出近 400美元計算,他們可以輕鬆月賺80000美元,這就意味著,每年有96萬美元的收入。

此訊息出來之後,蘋果公司已經將Mobile Protection從App Store上移除了,再搜尋這款 App也只是顯示該應用已從美國區 App Store下架。不過這只是中治標不治本的方式,其App Store中仍然存在大量使用“應用內訂購”和誤導性描述的虛假應用,來誘騙使用者花費大量資金購買垃圾應用服務。

如何取消應用程式訂閱? 

如果你也不幸地下載了任何有問題的虛假應用程式並需要支付昂貴的訂閱費用,可以通過下述步驟取消訂閱服務:

開啟設定APP並轉到iTunes & App Store→Apple ID → 檢視 Apple ID;
輸入您的Apple ID密碼,或根據提示指紋解鎖Touch ID;
點選訂閱,然後點選你要取消的訂閱服務,再點選確認;

完成上述步驟後,一旦當前的訂閱期限結束,你將不必繼續支付任何費用。