999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Android平臺安全防護系統的設計與實現

2015-05-30 10:48:04張楠滕英巖
軟件工程 2015年7期
關鍵詞:用戶功能系統

張楠 滕英巖

摘 要:研究基于Android平臺的安全防護軟件,使用Android SDK和Java Web技術實現了Android平臺安全防護系統的各項功能。系統支持手機防盜找回、騷擾攔截、緩存清理、病毒掃描等功能,實現了對惡意程序和騷擾程序有效地攔截,后臺服務器使用Servlet編寫部署在百度云平臺,擁有快速的響應和穩定等特點,給后期的維護工作帶來的極大的便捷。

關鍵詞:Android平臺安全防護系統;惡意程序;百度云平臺

中圖分類號:TP391 文獻標識碼:A

1 引言(Introduction)

近年來,Android平臺安全防護系統是目前市面上安卓平臺廣泛應用的軟件系統,然而信息安全領域在移動與嵌入式安全研究開發上的行動在過去幾年里過于緩慢),以至于移動安全在某種程度上仍然被認為是前沿研究,因為移動設備的消費者與用戶最近才開始察覺并理解日常使用移動設備所面臨的安全威脅。這些威脅也隨之為移動安全研究與安全產品創造了市場前景[1]。本文研究的安全防護系統采用最新的Android SDK開發,本著精簡高效的原則,對市面上流行的安全軟件的功能進行包含和實現,由于占用內存資源少,本系統兼容安裝Android 2.3.3到目前最新Android 4.2.2的所有智能手機。

2 關鍵技術介紹(The introduction of key

technology)

2.1 Android系統平臺簡介

Android是一種基于Linux的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統一中文名稱,中國大陸地區較多人使用“安卓”或“安致”。Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。2007年11月,Google與84家硬件制造商、軟件開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨后Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布于2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。2013年的第四季度,Android平臺手機的全球市場份額已經達到78.1%。2013年09月24日谷歌開發的操作系統Android在迎來了5歲生日,全世界采用這款系統的設備數量已經達到10億臺[2]。

2.2 手機惡意軟件

手機惡意軟件,一般是指在用戶不完全知情和認可(它包括未經用戶許可、強迫引導用戶許可或隱瞞關鍵信息等)的情況下強行安裝到用戶手機中,或者一旦安裝就無法正常卸載和刪除,但又具備一定正常功能的軟件程序。

惡意軟件是介于病毒和正常軟件之間的軟件,它與病毒的區別是:通常還具備一定的正常功能。

相比于正常軟件,判定是否是惡意軟件的兩個標準:

(1)是否被安裝到了用戶手機中。

(2)對于用戶而言,是否具有不可控制性:即用戶不完全知情和認可,或者是安裝后無法讓用戶用正常的手段卸載和刪除。

符合以下任意即可定義為惡意軟件:

(1)沒有任何提示,暗地里發短信、聯網、扣費,輕微的發一次,嚴重的重復發。

(2)雖然有提示,但提示很不顯眼,很容易讓新手用戶摁錯,誤導新手,導致發送短信、聯網、扣費。

(3)雖然有提示,但提示是虛假的,比如明明是CMNET,卻提示是CMWAP。

(4)沒有提示或者誤導用戶,暗地里收集用戶個人資料的。

(5)不經用戶同意,捆綁了快捷鍵、書簽等可恢復性內容。

(6)安裝很容易,刪除不簡單。

2.3 MD5算法簡介

MD5算法為計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護。MD5的作用是讓大容量信息在用數字簽名軟件簽署私人密鑰前被“壓縮”成一種保密的格式(就是把一個任意長度的字節串變換成一定長的十六進制數字串)。MD5就可以為任何文件(不管其大小、格式、數量)產生一個同樣獨一無二的MD5“數字指紋”,如果任何人對文件做了任何改動,其MD5值也就是對應的“數字指紋”都會發生變化。加密流程如圖1所示[3]。

圖1 MD5加密算法流程圖

Fig.1 Process of MD5 encryption algorithm

2.4 Android安全權限機制

Android本身是一個權限分立的操作系統。在這類操作系統中,每個應用都以唯一的一個系統識別身份運行(Linux用戶ID與群組ID)。系統的各部分也分別使用各自獨立的識別方式。Linux就是這樣將應用與應用,應用與系統隔離開。

系統更多的安全功能通過權限機制提供。權限可以限制某個特定進程的特定操作,也可以限制每個URI權限對特定數據段的訪問。

Android安全架構的核心設計思想是,在默認設置下,所有應用都沒有權限對其他應用、系統或用戶進行較大影響的操作。這其中包括讀寫用戶隱私數據(聯系人或電子郵件),讀寫其他應用文件,訪問網絡或阻止設備待機等。

安裝應用時,在檢查程序簽名提及的權限,且經過用戶確認后,軟件包安裝器會給予應用權限。從用戶角度看,一款Android應用通常會要求如下的權限:撥打電話、發送短信或彩信、修改/刪除SD卡上的內容、讀取聯系人的信息、讀取日程信的息,寫入日程數據、讀取電話狀態或識別碼、精確的(基于GPS)地理位置、模糊的(基于網絡獲取)地理位置、創建藍牙連接、對互聯網的完全訪問、查看網絡狀態,查看WiFi狀態、避免手機待機、修改系統全局設置、讀取同步設定、開機自啟動、重啟其他應用、終止運行中的應用、設定偏好應用、震動控制、拍攝圖片等。

一款應用應該根據自身提供的功能,要求合理的權限。用戶也可以分析一款應用所需權限,從而簡單判定這款應用是否安全。如一款應用是不帶廣告的單機版,也沒有任何附加的內容需要下載,那么它要求訪問網絡的權限就比較可疑。

3 系統設計(System design)

3.1 系統結構

Android平臺安全防護系統采用Android原生SDK進行開發,客戶端主要由手機防盜、通訊衛士、軟件管理、進程管理、流量統計、病毒掃描、緩存清理、高級工具、設置中心這幾大模塊構成,系統結構如圖2所示。

圖2 系統結構圖

Fig.2 System architecture diagram

程序中各個模塊都有自己獨立的服務和廣播接收器為之提供支持,客戶端利用JSON數據格式和后臺服務器之間做數據交換,每個功能模塊之間相互獨立,但是由主頁面切換進入。以手機防盜功能模塊為例,一共有四個頁面對數據進行記錄,分別是設置密碼,綁定SIM卡,綁定安全號碼,啟動管理員模式,當數據記錄完畢后,后臺會有相應的服務和廣播接收器啟動,來記錄安全號碼發入目標手機的指令,從而可以啟動相關功能對目標手機執行一系列的操作。

3.2 數據庫設計

數據庫密碼列采用MD5加密算法存儲密碼,這樣可以避免明文密碼的泄露。數據庫設計表如表1所示。

表1 數據庫表設計

Tab.1 Design of database table

表名 類型 約束 備注

UserID Verchar(30) 唯一 用戶唯一的ID號

UserPass Varchar(30) 非空 用戶密碼

4 系統實現(System implementation)

本文著重對Android平臺安全防護系統子系統進行剖析,闡釋系統的運行原理。安全防護子系統主要包括手機防盜和病毒掃描模塊兩部分。

4.1 手機防盜模塊

手機防盜功能中包含手機定位、手機報警、手機鎖屏和手機數據清理功能。本模塊利用手機長駐后臺服務監聽短信內容,根據短信執行相關操作[4]。定位功能是程在序中加入了百度地圖定位功能,當用戶綁定了SIM卡和安全號碼后,如果手機丟失,用安全號碼手機直接編輯短信指令+密碼發送到丟失手機上,可以讓手機執行定位操作并回復短信當前手機所在坐標位置。以下是部分定位功能的實現代碼段。

public void initOption() {

LocationClientOption option=new LocationClientOption();

option.setLocationMode(LocationMode.Hight_Accuracy);//設置定位模式

option.setCoorType("bd09ll");//返回的定位結果疊加地圖使用bd09ll模式

option.setScanSpan(2000);//設置發起定位請求的間隔時間為5000ms

option.setIsNeedAddress(true);//返回的定位結果包含地址信息

option.setNeedDeviceDirect(true);//返回的定位結果包含手機機頭的方向

option.setOpenGps(true);

locClient.setLocOption(option);

}

public void TraceStart() {

locClient.start();

}

public void TraceStop() {

locClient.stop();

}

鎖屏功能是使用安全手機發送鎖屏指令,然后目標手機會自動執行鎖屏指令。

手機報警功能是收到安全號碼發來的指令后以最大聲音播放報警音樂。

手機數據清理功能是接收到數據清理指令后在后臺執行數據清理功能。觸發這些功能都是在后臺讓偷盜者無法察覺的情況下完成的。

4.2 病毒掃描模塊

病毒掃描模塊主要利用MD5特征匹配篩選安全程序和病毒程序,進入掃描進程后程序會在后臺將計算出每個程序的MD5值,然后利用云端同步的病毒特征庫進行比對,利用折半查找法加速了程序掃描大樣本數據庫的對比算法。當病毒程序被掃描出,程序會提示用戶是否清理,如果用戶點擊清理按鈕程序會強制卸載目標程序,掃描過程結束。

病毒掃描過程部分核心代碼段如下:

private void scanVirus() {

pm=getPackageManager();

tv_scan_status.setText("正在初始殺毒引擎......");

new Thread(){

@Override

public void run() {

Listinfos= pm.getInstalledPackages(0);

pb.setMax(infos.size());

int progress=0;

for(PackageInfo info:infos) {

//info.applicationInfo.dataDir; //數據文件保存地址

String apkPath=info.applicationInfo.sourceDir; //APK安裝包路徑

String md5=FileToMD5.GetFileMd5(apkPath);

//準備保存數據傳出讓UI線程更新

ScanInfo scanInfo=new ScanInfo();

scanInfo.Name=info.applicationInfo.loadLabel(pm).toString();

scanInfo.packName=info.packageName;

if(AntivirusTools.isVirus(md5)) {

//發現病毒

scanInfo.isVirus=true;

}else{

//掃描安全

scanInfo.isVirus=false;

}

//定義消息,把消息發到UI線程更新界面

Message msg=Message.obtain();

msg.obj=scanInfo;

msg.what=520;

handler.sendMessage(msg);

progress++;

pb.setProgress(progress);

}

Message msg=Message.obtain();

msg.what=0;

handler.sendMessage(msg);

}

}.start();

}

5 關鍵問題(Core question)

5.1 實現了病毒庫自動更新

程序在運行過程中,固定的時間會向服務器拉取一個XML配置文件,里面是用JSON格式記錄的病毒庫版本和病毒庫下載地址。當程序發現新版本病毒庫發布后,會自動去更新病毒庫,由于病毒庫只是一個txt格式的文檔,所有占用流量不會太多。當程序下載下新版本病毒庫后會自動將數據插入已有的病毒庫。從而完成了病毒庫的更新操作。

5.2 手機防盜模塊實現了手機自動定位回傳功能

當手機收到安全號碼發來的指令的時候,手機會自動啟動定位功能,程序會自動啟動GPS,利用網絡輔助定位確定手機當前坐標,并將坐標點和手機所處位置名稱以短信的形式回傳至安全手機,當用戶收到定位點后利用百度坐標拾取就可以輕松找到手機位置。這一定位和回傳過程都是在后臺完成的,前臺無任何痕跡,這也是為了保證用戶手機落入小偷手中定位過程不被小偷發現。

5.3 手機防盜模塊實現了手機數據清理功能

當手機收到安全號碼發來的指令的時候,手機會開始抹

去手機當前的數據,這一功能的開發主要是當用戶手機無法定位的時候最后可以操作的,這也可以最大限度的保護用戶的隱私不被盜竊。但是由于這一功能需要開啟管理員權限,同時也讓第三方軟件無法卸載本程序。如果用戶需要卸載只需要關閉管理員權限然后就可以正常卸載了。

5.4 安全防護系統自身安全性

系統自身安全性又是項目的另一個重點。安全性問題主要來自于以下兩方面:

(1)用戶密碼的安全性。如果用戶密碼被泄露,安全手機用密碼+指令就可以任意操作目標手機,所以在密碼的保存上面,程序使用MD5加密算法加密存儲至數據庫,用戶可以自己更改程序密碼。這樣安全手機只有在密碼正確的時候指令才有效。

(2)服務器端的安全性。為保證服務器安全穩定運行,我們將編寫好的Servlet部署在百度云平臺上,在百度提供的高性能的服務器上避免了服務器的故障和惡意入侵的問題,百度云平臺之間的項目獨立運行又不會相互影響。云平臺的智能性也大大減少了服務器端的維護成本和難度。

6 結論(Conclusion)

本Android平臺安全防護系統的開發解決了目前安全軟件體積龐大弊端,目前360和金山手機助手安裝完畢就已經達到20MB左右,小內存的手機安裝后會導致手機假死或者死機的癥狀。而Android平臺安全防護系統安裝包只有3.9MB,開啟后運行服務也只有4MB左右,基本對手機的運行不會產生太大的影響。同樣的功能我們的可以占用更少的內存解決,這就是我們精簡系統的優勢。

然而系統還是有一些善待解決的問題,比如病毒特征庫的更新,比如程序執行效率的優化。因為安全類軟件最看重的就是病毒特征庫的數量,個人沒有辦法去獲取大量病毒特征庫特征值,所以本系統還是借鑒了最新版的金山毒霸的特征病毒庫才可以進行掃描。

參考文獻(References)

[1] Joshua J.Drake.Android安全攻防權威指南[M].北京:人民郵電 出版社,2013.

[2] 百度百科.android(Google公司開發的操作系統)[EB/OL]. http://dwz.cn/test_android.

[3] 百度百科.MD5加密[EB/OL].http://baike.baidu.com/view/ 1039631.htm.

[4] 李興華.Android開發實戰經典[M].北京:清華大學出版社, 2012:562-583.

作者簡介:

張 楠(1992-),男,本科生.研究領域:軟件開發及數據庫.滕英巖(1972-),女,碩士,教授.研究領域:嵌入式軟件及

應用.

猜你喜歡
用戶功能系統
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 在线观看国产精品第一区免费 | 九九久久精品国产av片囯产区| 操国产美女| 亚洲人成成无码网WWW| 国产97视频在线| 亚洲一区毛片| 无码高潮喷水在线观看| 草草影院国产第一页| 精品精品国产高清A毛片| 亚洲香蕉在线| 无码久看视频| 激情午夜婷婷| 亚洲av无码牛牛影视在线二区| 亚洲美女视频一区| 免费观看亚洲人成网站| 国产1区2区在线观看| 国产免费自拍视频| 一区二区三区精品视频在线观看| 永久免费无码成人网站| 毛片a级毛片免费观看免下载| 色噜噜狠狠色综合网图区| 99精品热视频这里只有精品7| 91综合色区亚洲熟妇p| 亚洲国语自产一区第二页| 国产jizzjizz视频| 日韩精品一区二区三区视频免费看| 精品无码一区二区在线观看| www.日韩三级| 国产簧片免费在线播放| 怡红院美国分院一区二区| 成人一区在线| 九九这里只有精品视频| 久久人人爽人人爽人人片aV东京热| 国产精品极品美女自在线网站| 亚洲国产成人在线| 亚洲伊人天堂| 91九色视频网| 99视频有精品视频免费观看| 久久永久免费人妻精品| 亚洲欧洲日产国码无码av喷潮| 亚洲a级在线观看| 亚洲中文字幕av无码区| 国内精品久久久久鸭| 亚洲国产天堂久久综合226114| 久久亚洲天堂| 亚洲男人的天堂视频| 91小视频在线| 91av国产在线| 爱爱影院18禁免费| 欧美精品影院| 2021国产精品自产拍在线| 91欧美在线| 国产微拍一区| 波多野结衣中文字幕一区二区| 午夜高清国产拍精品| 国产成人综合久久| 国产欧美视频综合二区| 伊人激情综合| 97精品久久久大香线焦| 亚洲中文字幕久久精品无码一区| 亚洲精品色AV无码看| 91久久夜色精品国产网站| 亚洲天堂自拍| 久久天天躁狠狠躁夜夜2020一| 伊人成人在线| 欧美一级特黄aaaaaa在线看片| 99视频在线免费观看| 欧美不卡在线视频| 国产成人亚洲日韩欧美电影| 黑人巨大精品欧美一区二区区| 999国产精品永久免费视频精品久久| 91久久国产成人免费观看| 福利视频久久| 久久免费视频播放| 成人av手机在线观看| a级毛片网| 99国产在线视频| 欧美特级AAAAAA视频免费观看| 99re在线观看视频| 国产精品第一区在线观看| 国产网站免费看| 欧美天堂在线|