大數(shù)據(jù)時(shí)代,移動(dòng)應(yīng)用數(shù)量快速增長、應(yīng)用領(lǐng)域也廣泛擴(kuò)展。據(jù)工信部統(tǒng)計(jì),截至2021年4月底,我國國內(nèi)市場上監(jiān)測到的App數(shù)量突破302萬款。隨之而來的移動(dòng)應(yīng)用盜版情況日益突出,一些披著“官方App”外衣的盜版山寨App也層出不窮,它們“肆意作亂”,危害著用戶信息安全、財(cái)產(chǎn)安全。
在某應(yīng)用商店上搜索“12306”,發(fā)現(xiàn)一大批類似應(yīng)用,這些App不僅名字類似、圖標(biāo)、顏色也大同小異,下載量從幾萬到幾十萬、幾百萬、上千萬。
圖1 類似12306火車票應(yīng)用
高仿、山寨、盜版這些詞我們并不陌生,幾年前就有各種盜版,盜版App絕不是個(gè)例。再看一個(gè)例子,搜索“12123”查詢違章應(yīng)用,結(jié)果又是一推類似應(yīng)用,你能正確辨別真?zhèn)螁?
圖2 類似12123應(yīng)用
現(xiàn)在的盜版 App已經(jīng)深入到各行各業(yè),據(jù)國家互聯(lián)網(wǎng)金融風(fēng)險(xiǎn)分析技術(shù)平臺(tái)發(fā)布的監(jiān)測數(shù)據(jù),截至2020年2月底,發(fā)現(xiàn)互聯(lián)網(wǎng)金融盜版網(wǎng)站4.81萬個(gè),受害用戶達(dá)12萬人次,互聯(lián)網(wǎng)金融盜版App2801個(gè),盜版APP下載量3343.7萬次。
盜版App已然形成了一套完整的產(chǎn)業(yè)鏈,這些App是怎么來的?大家可能普遍認(rèn)為開發(fā)一款盜版App成本很高,但當(dāng)你打開某寶搜索“App定制”,就會(huì)明白定制一款A(yù)pp竟是如此簡單。
圖3 定制App
這些定制App的店鋪,只用告訴他App的類型、所需功能,他們就能幫你找到一款合適的成品App ,價(jià)格只要幾千塊,高仿定制App僅需要2、3萬。以上定制高仿App的方式還是需要成本的,如果您的App沒有經(jīng)過合適的安全保護(hù),通過逆向技術(shù)手段,只需要簡單幾個(gè)步驟就能篡改您的App,二次打包后在應(yīng)用市場上架。原包反編譯—>篡改代碼(加入自己的元素)—>生成新的安裝包—>重新簽名—>上架運(yùn)行,App可謂是分分鐘被盜版。記得幾年前,有一群人專門將國外應(yīng)用市場的App下載下來,通過逆向二次打包將廣告插件加入到App中,在國內(nèi)各大應(yīng)用商店上架,賺取了大額的廣告費(fèi)用。
事實(shí)上不僅僅是存在定制App的店鋪,為了騙取用戶信任并下載,很多盜版App還會(huì)在上架后刷下載量、評(píng)分及評(píng)論,因此也存在著大量刷評(píng)分、下載量的店鋪和專業(yè)團(tuán)隊(duì)。
圖4 App刷評(píng)論
盜版App產(chǎn)業(yè)的水太深了,盜版App背后的灰色產(chǎn)業(yè)鏈非常成熟。盜版App不僅給最終用戶帶來了傷害,也給App企業(yè)開發(fā)者帶來了極大的損失。作為企業(yè)開發(fā)者該如何防止自己的App被盜版呢?目前市場App加固技術(shù)已經(jīng)非常成熟,加固技術(shù)可以保護(hù)App不被逆向,通過逆向二次打包的方式盜版一個(gè)App已不太可能,但通過找專業(yè)團(tuán)隊(duì)定制高仿App的方式簡單又方便,針對(duì)這種現(xiàn)狀,通付盾北斗團(tuán)隊(duì)建議在盜版App監(jiān)測上投入時(shí)間,監(jiān)測到盜版App及時(shí)進(jìn)行下架處理,盡可能減少損失。下文重點(diǎn)描述如何在市場上監(jiān)測盜版APP。
一般盜版APP與正規(guī)APP的名稱、圖標(biāo)以及功能體驗(yàn)等都十分相近,大多數(shù)用戶很難辨別。同時(shí)國內(nèi)存在幾十個(gè)應(yīng)用商店,再加上各類論壇、小網(wǎng)站、非法盜版網(wǎng)站,App的分發(fā)渠道眾多,還有很大一部分盜版App在國外,盜版App的監(jiān)測難上加難。目前就算發(fā)現(xiàn)了盜版 App,也難以處置,在正規(guī)應(yīng)用商店上發(fā)現(xiàn)的盜版App處理下架還算容易,如果是自己建立的分發(fā)渠道,要下架處置就不容易了。
基于以上難題,盜版App監(jiān)測需要依賴自動(dòng)化掃描程序24小時(shí)不間斷掃描各類應(yīng)用商店、分發(fā)渠道,監(jiān)測是否出現(xiàn)同名稱、同包名、圖標(biāo)相似、功能相似App,最關(guān)鍵的是檢測開發(fā)者證書指紋是否與正版App開發(fā)者證書指紋一致,若指紋不一致,但同名稱、同包名這一定是個(gè)盜版App, 這也是最有效的判定方式,詳細(xì)原理將在下文中介紹。下表列出了國內(nèi)常見的應(yīng)用分發(fā)渠道。
表1 常見應(yīng)用分發(fā)渠道
要理解如何正確判斷App是否為盜版,需要先理解一個(gè)正規(guī)App發(fā)布上架前要做好哪些準(zhǔn)備。
Android App以它的包名(packageName)作為唯一標(biāo)識(shí),如果在同一部手機(jī)上安裝兩個(gè)包名相同的App,后者就會(huì)覆蓋前面安裝的應(yīng)用。為了避免Android App被隨意覆蓋,Android要求對(duì)App進(jìn)行簽名。Android系統(tǒng)也不允許安裝一個(gè)未被簽名的App,這一點(diǎn)很重要,App簽名的過程實(shí)際上也是開發(fā)者在證明這個(gè)App是我開發(fā)的(雖然有被二次簽名的風(fēng)險(xiǎn),本文先不討論這類情況)。
Android使用Java數(shù)字證書相關(guān)的機(jī)制來給App加蓋數(shù)字證書,數(shù)字證書的私鑰則保留在App開發(fā)者手中,數(shù)字證書的公鑰以及簽名信息、證書指紋被打包進(jìn)了App中。重點(diǎn)來了,證書指紋是判斷盜版的關(guān)鍵依據(jù),證書指紋在數(shù)字證書生成的時(shí)候就被確定,同時(shí)經(jīng)過證書私鑰簽名,私鑰被保留在App開發(fā)者手中,因此想要偽造App中的證書指紋幾乎是不可能的。
實(shí)際上App的簽名過程就是PKI技術(shù)的應(yīng)用,App大致簽名原理如下。
1.計(jì)算App安裝包(Apk)中數(shù)據(jù)文件,形成信息摘要。
圖5 形成信息摘要
2.利用證書私鑰對(duì)信息摘要簽名。
圖6 數(shù)字簽名
3.將數(shù)字簽名、證書公鑰信息、證書指紋附在Apk文件中,證書私鑰保留在開發(fā)者手中。
圖7 完成簽名
App完成簽名后就能正常發(fā)布到應(yīng)用市場,供用戶下載安裝。手機(jī)安裝時(shí)會(huì)對(duì)App各類簽名信息、證書信息逐一進(jìn)行驗(yàn)證,沒有被篡改或破壞則安裝成功。
結(jié)論:App的包名和證書指紋能唯一確定一款A(yù)pp。
通過上文核心原理介紹,不難理解App盜版監(jiān)測的核心就是App證書指紋、App應(yīng)用名稱、App包名的比對(duì)驗(yàn)證,其中App證書指紋起關(guān)鍵性作用,再借助自動(dòng)化掃描程序24小時(shí)不間斷掃描全網(wǎng)各類應(yīng)用商店、分發(fā)渠道就能完成App渠道監(jiān)測任務(wù)。下表給出了盜版、相似應(yīng)用的判斷邏輯。
表2 盜版、相似應(yīng)用的判斷邏輯
通付盾云渠道監(jiān)測覆蓋超過500家應(yīng)用發(fā)布渠道,包括第三方應(yīng)用市場、論壇等方式。該服務(wù)從渠道分布、應(yīng)用版本及其盜版率、下載量、盜版渠道來源等多方面對(duì)App應(yīng)用進(jìn)行實(shí)時(shí)監(jiān)測,并對(duì)獲取的信息進(jìn)行全方位深入分析,最終將分析數(shù)據(jù)形成完備的監(jiān)測報(bào)告。開發(fā)者可以通過通付盾云渠道監(jiān)測服務(wù)第一時(shí)間發(fā)現(xiàn)盜版應(yīng)用,針對(duì)性地進(jìn)行處置。
圖8 渠道監(jiān)測服務(wù)效果展示
近日,通付盾云對(duì)新注冊(cè)用戶提供了優(yōu)惠服務(wù),完成注冊(cè)即能免費(fèi)享受渠道監(jiān)測服務(wù)1次及其他安全合規(guī)產(chǎn)品線安全檢測加固服務(wù)2次、灰應(yīng)用檢測服務(wù)1次。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )