• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Android Broadcast的短信安全監(jiān)聽系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

      2017-05-08 13:15:11劉環(huán)
      關(guān)鍵詞:監(jiān)聽調(diào)用廣播

      摘要:在手機(jī)終端應(yīng)用軟件和移動(dòng)業(yè)務(wù)呈現(xiàn)出多樣化發(fā)展的同時(shí),針對手機(jī)短信進(jìn)行后臺(tái)監(jiān)聽與竊取的惡意軟件也大量出現(xiàn),已經(jīng)對手機(jī)信息安全構(gòu)成了嚴(yán)重的威脅。從Android系統(tǒng)的Broadcast運(yùn)行機(jī)制入手,設(shè)計(jì)一個(gè)具有捕獲第三方惡意軟件劫取短信行為的監(jiān)測軟件,全程對廣播進(jìn)行監(jiān)聽和行為捕獲,終止短信被劫取、轉(zhuǎn)發(fā)等惡意行為的發(fā)生。在經(jīng)過測試試驗(yàn)后效果良好,可以有效地解決短信被泄露的問題。

      關(guān)鍵詞:廣播; 監(jiān)聽; 注冊; 調(diào)用

      中圖分類號(hào): TP311

      文獻(xiàn)標(biāo)志碼:A

      文章編號(hào): 2095-2163(2016)06-0059-03

      0引言

      隨著智能手機(jī)的普及與風(fēng)靡,人們通過安裝手機(jī)軟件就可以隨意點(diǎn)選由智能手機(jī)提供的網(wǎng)上購物、手機(jī)支付、手機(jī)銀行等電子時(shí)代e服務(wù)。但是就在人們?nèi)遮吚硐搿⒈憬莸貢诚碇悄苁謾C(jī)帶來的各項(xiàng)服務(wù)便利的同時(shí),許多捆綁有惡意行為的Android系統(tǒng)應(yīng)用軟件,也已通過各種免費(fèi)下載平臺(tái)自動(dòng)入侵并安裝至用戶的手機(jī)終端。這一類的應(yīng)用軟件可以在Android系統(tǒng)的后臺(tái)靜默運(yùn)行,任意劫取和轉(zhuǎn)發(fā)用戶的手機(jī)短信內(nèi)容,從而嚴(yán)重侵犯了手機(jī)用戶的個(gè)人隱私。目前,Android開發(fā)技術(shù)正呈現(xiàn)方興未艾的活力態(tài)勢,這一類的惡意軟件也正在朝著多樣化、復(fù)雜化以及日漸隱蔽化的方向發(fā)展,這就使得智能手機(jī)終端信息安全問題則日趨顯著突出,并亟待有效解決。本文即針對這一課題內(nèi)容展開研究論述。

      [BT4]1系統(tǒng)設(shè)計(jì)原則和目標(biāo)

      [BT5]1.1設(shè)計(jì)原則

      本系統(tǒng)是基于當(dāng)前較為流行的手機(jī)操作系統(tǒng)Android平臺(tái)構(gòu)建推進(jìn)預(yù)期設(shè)計(jì)與研發(fā)的,針對手機(jī)中惡意軟件可能操縱生成的短信劫取、轉(zhuǎn)發(fā)等行為進(jìn)行監(jiān)聽和攔截。在設(shè)計(jì)中,系統(tǒng)將按照可靠性、實(shí)用性、可實(shí)現(xiàn)性和二次開發(fā)性這4個(gè)方面作為原則出發(fā)點(diǎn)來支持確保后續(xù)方案的技術(shù)品級(jí)與領(lǐng)域價(jià)值。具體地,系統(tǒng)可靠性要求在系統(tǒng)中實(shí)時(shí)監(jiān)測短信廣播,監(jiān)聽惡意軟件劫取和轉(zhuǎn)發(fā)短信的行為,并終止這些危險(xiǎn)行為的發(fā)生;系統(tǒng)實(shí)用性要求系統(tǒng)操作過程簡單、運(yùn)行穩(wěn)定和監(jiān)聽過程準(zhǔn)確;系統(tǒng)可實(shí)現(xiàn)性要求對于開發(fā)技術(shù)要求和軟件目標(biāo)功能要求具有可實(shí)現(xiàn)性;二次開發(fā)性要求設(shè)計(jì)要采用模塊化,模塊功能要逐步細(xì)化,并能夠降低各個(gè)模塊的耦合性,從而提高系統(tǒng)的二次開發(fā)擴(kuò)展性。

      [BT5]1.2設(shè)計(jì)目標(biāo)

      系統(tǒng)設(shè)計(jì)目標(biāo)是在分析Android系統(tǒng)如何發(fā)送和接收短信的運(yùn)行過程、運(yùn)行原理的基礎(chǔ)上,通過判斷哪些應(yīng)用程序具有攔截、劫取短信的動(dòng)作行為,監(jiān)控并終止這些惡意行為,為手機(jī)終端用戶提供相對安全的使用環(huán)境,保護(hù)用戶的個(gè)人信息安全。

      [BT4]2Android系統(tǒng)短信監(jiān)聽機(jī)制

      [BT5]2.1系統(tǒng)廣播機(jī)制

      Android系統(tǒng)中短信的接收與回應(yīng)是通過Broadcast Receiver組件來定制完成的\[1\],Broadcast框架模型如圖1所示。Android中的廣播可以由系統(tǒng)或是其它程序根據(jù)當(dāng)前運(yùn)行的行為來調(diào)控生成,因此這些廣播不是以時(shí)間為驅(qū)動(dòng)的,也就是將具有明顯的異步性。為了能夠及時(shí)響應(yīng)某個(gè)廣播,在程序設(shè)計(jì)中大多數(shù)會(huì)采用2種方式。一種方式是讓監(jiān)聽程序長期駐留后臺(tái)內(nèi)存中,隨時(shí)監(jiān)聽廣播的發(fā)生,但是這種設(shè)計(jì)的弊端在于長期占用后臺(tái)內(nèi)存資源,對系統(tǒng)的資源造成了浪費(fèi)。另一種方式是對要接收的廣播類型在程序中進(jìn)行注冊,只要在Android中產(chǎn)生了注冊的廣播類型,監(jiān)聽程序就可以馬上捕獲。這種方式的突出優(yōu)點(diǎn)長處就在于即使程序不是運(yùn)行狀態(tài),也可以捕獲注冊的廣播類型,從而能夠高度可觀地節(jié)省下系統(tǒng)的資源。

      2.2廣播的注冊方式

      Broadcast Receiver就是指廣播的注冊方式,重點(diǎn)組成主要包括2種,分別是:靜態(tài)注冊與動(dòng)態(tài)注冊方式。在此,針對這2種方式分別給出如下的性能分析闡釋與概述。

      1)靜態(tài)注冊方式。是把接收廣播者的特征注冊到程序的配置文件中提供聲明,當(dāng)對應(yīng)廣播發(fā)生的時(shí)候,系統(tǒng)會(huì)按照一定的順序到程序的配置文件中去查找和確定該廣播的接收者。靜態(tài)注冊方式的廣播接收者存儲(chǔ)在程序的配置文件中,因此只要程序不被卸載或是刪除,注冊就保持一直有效。靜態(tài)注冊方式對預(yù)知類型的廣播有著非??焖俚捻憫?yīng),但是對于程序自定義產(chǎn)生的廣播類型監(jiān)聽效率卻不高[2]。

      2)動(dòng)態(tài)注冊方式。是通過在程序運(yùn)行過程中調(diào)用Register Receiver和UnRegister Receiver的方法來完成注冊的。動(dòng)態(tài)注冊方式的優(yōu)勢是可以隨時(shí)根據(jù)程序的需求來響應(yīng)、指定格式廣播,即時(shí)性較強(qiáng),同時(shí)動(dòng)態(tài)注冊方式的操作設(shè)定也較為靈活。動(dòng)態(tài)注冊方式的缺點(diǎn)是注冊過程相比靜態(tài)注冊方式的設(shè)置過程要更為復(fù)雜,同時(shí)注冊后監(jiān)聽過程的生存期與靜態(tài)注冊方式相比也較為短暫。

      [BT5]2.3監(jiān)聽發(fā)送短信過程

      研究可知,在Android系統(tǒng)中對Intent不會(huì)進(jìn)行廣播,因此對于發(fā)送短信的行為監(jiān)聽就將存在現(xiàn)實(shí)困難。根據(jù)Android平臺(tái)的系統(tǒng)規(guī)定,只有在后臺(tái)運(yùn)行或操作的行為Intent才能夠進(jìn)行廣播,發(fā)送短信是用戶的主動(dòng)行為,并不屬于廣播Intent的范圍,因而不會(huì)產(chǎn)生系統(tǒng)廣播消息,此時(shí)采用傳統(tǒng)的注冊Broadcast Receiver監(jiān)聽收發(fā)短信則不再具備技術(shù)發(fā)生基礎(chǔ)[3]。為了能夠?qū)崿F(xiàn)對收發(fā)短信的監(jiān)控,本系統(tǒng)在設(shè)計(jì)過程中是通過調(diào)用onChange函數(shù),來實(shí)時(shí)監(jiān)聽Content observer對象的變換,進(jìn)而觀察存儲(chǔ)短信的數(shù)據(jù)表狀態(tài)來確定是否發(fā)送短信。

      [BT5]2.4監(jiān)聽接收短信過程

      監(jiān)聽接收短信過程就是對Android系統(tǒng)自帶的收件箱,可將接收到短信之前的所有短信廣播接收者進(jìn)行跟蹤監(jiān)聽,并判斷有哪些程序具有劫取和轉(zhuǎn)發(fā)短信的行為。監(jiān)聽程序可以將偵測到的表現(xiàn)有惡意行為的軟件構(gòu)建形成完整記錄,并可以終止其運(yùn)行。在設(shè)計(jì)中,監(jiān)聽程序可以通過調(diào)用onReceive函數(shù)生成有序廣播來發(fā)送廣播消息。

      [BT4]3系統(tǒng)的實(shí)現(xiàn)

      [BT5]3.1功能實(shí)現(xiàn)

      監(jiān)聽系統(tǒng)的主要實(shí)現(xiàn)功能可綜述如下:

      1)Service組件將程序隱蔽在后臺(tái)運(yùn)行,綁定系統(tǒng)開機(jī)消息并能夠開機(jī)啟動(dòng)。

      2)Service可以掃描和監(jiān)聽具有劫取短信惡意行為的進(jìn)程,并終止惡意進(jìn)程的運(yùn)行。

      3)檢測各個(gè)應(yīng)用程序的系統(tǒng)權(quán)限,有效遏制惡意程序?qū)Χ绦艔V播的接收。

      4)對手機(jī)短信收發(fā)過程進(jìn)行不間斷監(jiān)聽,全程監(jiān)聽用戶收發(fā)短信過程。

      5)監(jiān)聽并記錄Android系統(tǒng)中應(yīng)用軟件獲取的危險(xiǎn)權(quán)限。

      6)對短信數(shù)據(jù)庫中短信表進(jìn)行監(jiān)控,及時(shí)發(fā)現(xiàn)非法讀取短信內(nèi)容的進(jìn)程,并終止該進(jìn)程的執(zhí)行。

      7)產(chǎn)生惡意劫取和轉(zhuǎn)發(fā)短信行為后,及時(shí)警告用戶并終止惡意行為的繼續(xù)發(fā)生。

      [BT5]3.2主要功能模塊實(shí)現(xiàn)

      [HT5”SS][ST5”BZ][WT5”BZ]3.2.1短信監(jiān)聽模塊

      短信監(jiān)聽模塊主要用于實(shí)現(xiàn)系統(tǒng)對目標(biāo)手機(jī)發(fā)送和接收短信動(dòng)作的不間斷監(jiān)聽,本系統(tǒng)采用了Service組件來提供功能效果設(shè)計(jì)支持。由于Service組件沒有交互界面,因而全部在系統(tǒng)后臺(tái)運(yùn)行實(shí)現(xiàn)。這也于無形中增強(qiáng)了系統(tǒng)的隱蔽性和抗干擾性。

      相對于權(quán)限設(shè)定而言,可在程序設(shè)置文件AndroidMainfest.xml中對接收短信廣播進(jìn)行注冊。為了能夠擁有更高的優(yōu)先權(quán)獲取廣播,研究可將android:priority的值設(shè)置為“1000”。權(quán)限設(shè)置代碼為:

      public void onReceive(Context context,Intent intent)

      {

      Object[]object=(Object[]) intent.getExtras().get(“object”);

      Intenti=new Intent(context,SMSHandle.class);

      i.putExra(“sms”,object);

      context.startService(i);

      }

      3.2.2監(jiān)聽?wèi)?yīng)用程序是否具有轉(zhuǎn)發(fā)短信行為

      Android系統(tǒng)中發(fā)送短信方式通常有3種。第1種是直接將要發(fā)送的數(shù)據(jù)與Intent綁定在一起,然后將Intent進(jìn)行廣播,這樣就可以正常調(diào)用系統(tǒng)本身自帶的短信程序來發(fā)送短信[4]。第2種方式是調(diào)用Android系統(tǒng)已有的短信程序來展開發(fā)送;隱蔽性最強(qiáng)的是第3種,該種短信發(fā)送是通過調(diào)用系統(tǒng)底層的短信發(fā)送接口來具體實(shí)現(xiàn),對第3種方式設(shè)定監(jiān)控,是本系統(tǒng)研發(fā)中的功能組成重點(diǎn)。具體實(shí)現(xiàn)代碼如下:

      public void onclick(View v){

      String num=((EditText)findViewById(R.id.num)).getText().toString().Trim();

      String sms=((EditText)findViewById(R.id.sms)).getText().toString().Trim();

      SmsManagermessages=SmsManager.getDefault();

      if(sms.1ength() >=100) {

      ArrayList msgs=messages.divideMessage(sms):

      messages.sendMultipartTextMessage(num, null,msgs,null,null);

      }

      Else {

      Messages.sendTextMessage(num,null,sms,null,null):

      }

      }

      3.2.3監(jiān)聽?wèi)?yīng)用程序讀取短信數(shù)據(jù)庫內(nèi)容

      通過對Content Observer對象的監(jiān)聽,捕獲并記錄訪問Content Observer對象的程序列表,為分析和判斷應(yīng)用程序是否劫取短信內(nèi)容提供依據(jù)。注冊短信變化主要代碼如下:

      SmsContent content = new SmsContent(new Handler());

      this.getContentResolver().registerContentObserver(Uri.parse("content://sms/"),true, content);

      捕獲應(yīng)用程序通過Content Observer對象訪問短信內(nèi)容主要實(shí)現(xiàn)代碼:

      Bundle bundle = intent.getExtras();

      Object msgs[] = (Object[]) bundle.get("msg");

      SmsMessage smsmsgs [] = new smsmsgs [msgs.length];

      smsmsgs[n] = smsmsgs.createFromPdu((byte[JP2][[KG-*5]][JP]) messages[n]);

      sender =smsmsgs [n].getOriginatingAddress();

      content =smsmsgs [n].getMessageBody();

      [BT4]4系統(tǒng)測試

      [BT5]4.1監(jiān)聽接收短信功能測試

      在程序界面中單擊“啟動(dòng)服務(wù)”按鈕啟動(dòng)監(jiān)聽程序。通過向手機(jī)發(fā)送短信,測試本系統(tǒng)在后臺(tái)監(jiān)聽接收短信功能是否可以達(dá)到設(shè)計(jì)要求。測試結(jié)果如圖2、3所示。

      [BT5]4.2發(fā)現(xiàn)惡意進(jìn)程劫取短信功能測試

      監(jiān)聽Android自帶短信程序以外的具有劫取和轉(zhuǎn)發(fā)短信行為的其它應(yīng)用程序,并及時(shí)預(yù)警、記錄、終止惡意程序執(zhí)行。測試結(jié)果如圖4所示。

      經(jīng)過測試實(shí)驗(yàn)后可知,本系統(tǒng)能夠?qū)崿F(xiàn)在后臺(tái)不間斷地監(jiān)聽收發(fā)短信過程,并能準(zhǔn)確、及時(shí)地捕獲具有劫取和轉(zhuǎn)發(fā)短信行為的惡意軟件,同時(shí)還能為用戶提供下一步操作指示,測試結(jié)果表明設(shè)計(jì)符合預(yù)期標(biāo)準(zhǔn),可以滿足實(shí)用需求。[FL)]

      [PS劉環(huán)2.EPS;S*2;X*2,BP#]

      [HT5”SS][ST5”BZ][WT5”BZ][FL(2K2]

      [BT4]5結(jié)束語

      以Broadcast組件收發(fā)短信的基本運(yùn)行原理為基礎(chǔ)、采用動(dòng)態(tài)注冊廣播監(jiān)聽器、獲取系統(tǒng)級(jí)短信監(jiān)聽高級(jí)權(quán)限,分析應(yīng)用程序是否具有劫取和轉(zhuǎn)發(fā)短信的行為動(dòng)作為設(shè)計(jì)思想,實(shí)現(xiàn)了對Android系統(tǒng)手機(jī)用戶的短信保護(hù),有效阻止了手機(jī)用戶短信內(nèi)容的泄露,系統(tǒng)設(shè)計(jì)完成并經(jīng)過測試后,達(dá)到、并取得了預(yù)期的功能和效果。

      [LL][HS1*2][HT5H]參考文獻(xiàn):[HT]

      [WTBZ][ST6BZ][HT6SS][1] [ZK(#〗

      [HJ*2]

      朱明. Android環(huán)境下隱私保護(hù)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 南京:南京理工大學(xué), 2014.

      [2] 韋強(qiáng)生. Android軟件安全與逆向分析[M]. 北京:人民郵電出版社, 2013.

      [3] 李寅,范明鈺,王光衛(wèi). 基于反編譯的Android平臺(tái)惡意代碼靜態(tài)分析[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用, 2012,21(11):187-189.

      [4] 高岳,胡愛群. 基于權(quán)限分析的 Android 隱私數(shù)據(jù)泄露動(dòng)態(tài)檢測方法[J]. 信息網(wǎng)絡(luò)安全, 2014(2):27-31.[ZK)]

      [FL)]

      [WT6HZ][HT6H][ST6HZ][JZ]圖2啟動(dòng)與關(guān)閉服務(wù)界面圖3短信內(nèi)容監(jiān)聽界面圖4報(bào)警界面

      [JZ]Fig. 2Startup and shutdown service interfaceFig. 3 SMS content monitor interfaceFig. 4 Alarm interface

      猜你喜歡
      監(jiān)聽調(diào)用廣播
      千元監(jiān)聽風(fēng)格Hi-Fi箱新選擇 Summer audio A-401
      STK及IGS廣播星歷在BDS仿真中的應(yīng)用
      航天控制(2020年5期)2020-03-29 02:10:28
      核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
      LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
      廣播發(fā)射設(shè)備中平衡輸入與不平衡輸入的轉(zhuǎn)換
      電子制作(2018年10期)2018-08-04 03:24:48
      網(wǎng)絡(luò)監(jiān)聽的防范措施
      電子制作(2017年20期)2017-04-26 06:58:02
      基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
      網(wǎng)絡(luò)在現(xiàn)代廣播中的應(yīng)用
      應(yīng)召反潛時(shí)無人機(jī)監(jiān)聽航路的規(guī)劃
      最早的無線電廣播
      河北遙感(2014年4期)2014-07-10 13:54:59
      富蕴县| 永仁县| 神池县| 龙山县| 仙桃市| 青河县| 屯昌县| 孝义市| 江口县| 江山市| 乌拉特前旗| 临城县| 郧西县| 瓮安县| 乌拉特后旗| 昌图县| 西华县| 右玉县| 阳谷县| 攀枝花市| 鞍山市| 于都县| 望谟县| 尼木县| 水城县| 巫山县| 潼南县| 重庆市| 应城市| 邹平县| 南陵县| 德兴市| 神木县| 阜南县| 遂溪县| 乌苏市| 饶平县| 桓仁| 蓝山县| 陇西县| 灌南县|