宋春
摘要:隨著移動互聯(lián)網(wǎng)的普及,移動安全問題日益突出,針對手機(jī)的木馬病毒等軟件迅速發(fā)展,其中,短信攔截馬為互聯(lián)網(wǎng)傳播最為廣泛的一種手機(jī)木馬病毒。本文針對短信攔截馬主要功能進(jìn)行了簡要的分析與研究,期望能對打擊此類木馬病毒案件有所幫助。
關(guān)鍵詞:短信攔截馬;MainActivity;SMSservice;加固;反制
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)24-0020-02
隨著移動互聯(lián)網(wǎng)的普及,移動安全問題日益突出,針對手機(jī)的木馬病毒等軟件迅速發(fā)展,利用手機(jī)木馬病毒進(jìn)行網(wǎng)絡(luò)犯罪的事件呈現(xiàn)爆發(fā)式增長趨勢,手機(jī)用戶面臨前所未有的安全風(fēng)險(xiǎn)。其中,短信攔截馬作為一個功能簡單、開發(fā)成本低、獲利頗高的非法牟利手段,很快就成為互聯(lián)網(wǎng)傳播最為廣泛的一種手機(jī)木馬病毒。
1 短信攔截馬傳播過程
短信攔截馬,顧名思義是一種可以攔截受害者手機(jī)中短信內(nèi)容的木馬,并通過網(wǎng)絡(luò)秘密的將受害者手機(jī)中的短信內(nèi)容發(fā)送到攻擊者的手機(jī)或者郵箱中。
短信攔截馬的主要傳播過程如下:首先,攻擊者通過偽基站或者短信貓的方式定向發(fā)送社工欺詐短信;然后誘導(dǎo)用戶點(diǎn)擊欺騙短信中包含的短鏈接,當(dāng)用戶點(diǎn)擊惡意鏈接后,就會從遠(yuǎn)程服務(wù)器上下載安裝用于攔截用戶手機(jī)短信的短信攔截馬;當(dāng)用戶手機(jī)安裝此木馬程序后,該用戶手機(jī)就變成了一個“肉雞”,此時(shí)木馬程序就會在后臺默默地向攻擊者指定的郵箱中發(fā)送用戶手機(jī)上的所有短信息內(nèi)容。
2 短信攔截馬主要功能與分析
2.1短信攔截馬主要功能
短信攔截馬的主要功能如下圖1所示。經(jīng)分析可見,一般的短信攔截馬及其“變種”大都提供了以下幾種基本功能:
1)激活設(shè)備管理器防止被用戶正常卸載;2)禁用MainActivity組件隱藏圖標(biāo);3)短信通知攻擊者中招肉雞已上線;4)異步郵件發(fā)送受害者通訊錄以及短信記錄;5)啟動后臺服務(wù)進(jìn)程實(shí)時(shí)監(jiān)控用戶短信和系統(tǒng)行為。
2.2具體的短信攔截馬簡要分析
短信攔截馬通常偽裝成中國移動10086掌上營業(yè)廳、聚會相冊、車輛違章、校訊通等手機(jī)APP客戶端方式誘導(dǎo)用戶安裝。
下面以一個具體的校訊通短信攔截馬為例,具體分析一下該類木馬的主要功能。首先,利用APKKiller逆向分析查看“校訊通.apk”的總體結(jié)構(gòu),經(jīng)過反編譯后的短信攔截馬程序,主體結(jié)構(gòu)由META-INT文件夾下的簽名文件,res資源文件夾下各類資源,smali代碼,以及配置文件AdroidManifest.xml等組成。
根據(jù)配置文件AdroidManifest.xml,發(fā)現(xiàn)校訊通短信攔截馬主要申請了短信收發(fā)、讀取聯(lián)系人、開機(jī)自啟動、聯(lián)接互聯(lián)網(wǎng)等權(quán)限。由這些權(quán)限,基本可以判定這是一款典型的短信攔截馬,因?yàn)榇祟惗绦艛r截馬及其變種基本上都需要申請這些權(quán)限。
接著,繼續(xù)分析短信攔截馬的主入口點(diǎn)MainActivity,由圖2可以看出,此攔截馬程序主要包含兩個Activity,一個程序的主入口點(diǎn)MainActivity,另一個DeleteActivity。 MainActivity的主要功能有: 1)禁用MainActivity組件隱藏圖標(biāo);2)激活設(shè)備管理器防止被用戶正常卸載;3)短信通知木馬使用者肉雞已上線;4)異步郵件發(fā)送受害者通訊錄以及短信記錄;5)啟動后臺服務(wù)進(jìn)程實(shí)時(shí)監(jiān)控用戶短信和系統(tǒng)行為。
下面,進(jìn)一步分析此短信攔截馬的Service,校訊通短信攔截馬共包含有3個Sevice, BootService、SecondService、SmsService。其中BootService和SecondService的主要功能是:(1)為了保持短信攔截馬程序的兼容性,該攔截馬同時(shí)注冊了短信廣播接收器和觀察者模式,如下圖3所示;(2)被Destory后重新自啟動。
其中,SmsService的主要作用是木馬使用者通過發(fā)送遠(yuǎn)程控制命令(ALL,SOME和NO命令)來控制受害者手機(jī)是否或者部分轉(zhuǎn)發(fā)短信內(nèi)容的功能,另外還可實(shí)現(xiàn)攔截馬到期時(shí)間查詢(命令TIME),以及獲取受害者設(shè)備信息等功能。此外,SmsService還實(shí)現(xiàn)了短信息收發(fā)服務(wù)功能。
3 對短信攔截馬加固后的反制
木馬制作者為了逃避公安機(jī)關(guān)的打擊,許多新型的短信攔截馬往往通過多種措施來對木馬進(jìn)行加固處理。
1)通過加殼方式加固
木馬編寫者為了對抗反編譯技術(shù),通常對木馬進(jìn)行加殼處理。加殼的基本原理就是在對源APK程序進(jìn)行加密,然后再套上一層殼即可。由此可知,對Android的apk木馬程序進(jìn)行加殼處理,需要三個對象(1)需要加密的源apk木馬程序;(2)殼apk程序;(3)對源apk進(jìn)行加密的加密工具。
對apk木馬程序進(jìn)行加殼的主要過程為:首先通過加密算法對源apk進(jìn)行加密處理,再將殼程序apk與加密后源apk程序進(jìn)行合并得到新的apk程序。此時(shí)得到的apk程序已經(jīng)不是嚴(yán)格意義上的apk程序了,它多了一些功能,負(fù)責(zé)解密源apk程序,然后加載apk,讓其正常運(yùn)行起來。目前,市面上比較流行的加殼工具有APKProtect加殼工具。
那么如何對加殼的apk木馬程序進(jìn)行反編譯。對于常見的加殼方式, JEB或者APKKiller反編譯工具,一般會自動檢測出加殼工具,并自動進(jìn)行脫殼處理。而對于使用動態(tài)鏈接庫對apk程序進(jìn)行加殼的情況,例如使用libcore.so動態(tài)連接庫對apk程序進(jìn)行加殼處理后。此時(shí)脫殼處理就比較麻煩,往往需要使用IDAPro進(jìn)行反匯編,逐行分析源代碼,再從中找出可疑的郵箱帳號和密碼。
2)通過加密方式加固
木馬編寫者除了使用加殼程序?qū)υ碼pk程序進(jìn)行加固外,往往木馬編寫者還會對木馬中的敏感數(shù)據(jù)進(jìn)一步進(jìn)行加密處理。常見的加密方式有利用DES、AES等算法對攔截馬中的回傳郵箱帳號與密碼,以及通知木馬使用者肉雞上線的手機(jī)號碼進(jìn)行加密處理。
當(dāng)遇到此類加密后的敏感字符串時(shí),通常的處理方式是先查找到解密算法類,而后通過交叉引用查看哪些類調(diào)用了這些解密算法類;通常,那些調(diào)用了解密算法類的類中基本都會向解密算法類傳遞解密密鑰,如圖4所示;當(dāng)有了解密密鑰,就可以利用網(wǎng)上的解密工具對攔截馬中加密的敏感字符串進(jìn)行解密了。
4 總結(jié)
通過以上分析我們基本了解了短信攔截馬的技術(shù)原理及實(shí)現(xiàn)方式。由于短信攔截馬制作簡單,不斷的產(chǎn)生變種,然后在社會廣泛傳播,使廣大群眾深受其害。在此,真切期望廣大用戶能夠?qū)須v不明的短信提高警惕,不要隨便點(diǎn)擊,以便在最大程度上避免自己的隱私和財(cái)產(chǎn)受到此類木馬病毒詐騙的威脅。
參考文獻(xiàn):
[1] 李維強(qiáng).電信詐騙犯罪的規(guī)律特點(diǎn)及治理對策問題研究[D]. 蘭州大學(xué),2012 .
[2] 戴剛,郝俊華,李少華. 垃圾短信實(shí)時(shí)攔截系統(tǒng)建設(shè)研究與探討[J]. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2010(11).
[3] 王明. 基于實(shí)時(shí)流技術(shù)的詐騙短信預(yù)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].軟件,2015(1).
[4] 宮路,潘超. 手機(jī)短信詐騙犯罪偵查研究[J].廣州市公安管理干部學(xué)院學(xué)報(bào),2009(01) .