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

一種安卓系統非正常程序的檢測方法實證研究

2019-03-11 06:29:10李清煬
關鍵詞:程序分類檢測

李清煬

一種安卓系統非正常程序的檢測方法實證研究

李清煬

華東政法大學 刑事司法學院, 上海 201620

針對安卓系統非正常程序較多的現狀,提出一種新的檢測方法,結合了應用程序分類以及系統調用法,目的是提高安卓系統非正常程序檢測的準確性。計算分類的數據采自谷歌商店,非正常程序樣本采自安卓病毒共享庫,通過系統調用值和閾值的計算對比,判斷實驗樣本的正常性。實驗結果表明:本文提出的方法能夠準確檢測出安卓系統中的非正常程序,有一定的推廣價值。

安卓系統; 非正常程序; 檢測; SMO

隨著安卓應用軟件的不斷增多,非正常程序也在快速增長。安卓用戶使用的第三方應用程序主要是從谷歌商店搜索、購買和下載的,但是谷歌商店的非正常程序檢測機制存在一定的缺陷,使得程序安全性難以得到完全保障。非正常程序往往帶有惡意攻擊的目的,而且會產生變種,攻擊手段也變得越來越豐富。當前關于安卓系統非正常程序檢測使用較多的有靜態法和動態法。靜態法是依靠純技術手段對檢測目標的特征進行抽取和分析,無需運行目標軟件;動態法則需要運行目標軟件,通過動態分析對目標軟件的行為進行檢測。Shawn Powers用靜態法抽取目標軟件的特征樣本,根據提前構建的函數調用表進行對比分析,結合分類法判斷程序的正常與否[1]。但是靜態法只能識別以往出現過的不正常程序特征,對于新型的不正常程序難以檢測。Chanajitt等通過動態法記錄目標軟件的運行日志,利用日志信息對不正常程序進行檢測,并用回歸分析法以及決策樹法分類不正常事件[2]。動態法會占用較多的手機系統資源,而且代碼覆蓋率并不高,經常有漏報現象出現。針對兩種方法存在的局限性,本文提出了一種新型的檢測方法,通過SMO算法進行分類學習,檢測工作由遠程服務器進行,并使用優化算法細分應用程序,最后調用系統數據實現非正常程序的準確檢測。

1 安卓系統非正常程序的檢測過程

1.1 安卓系統非正常程序的檢測流程

本文檢測安卓系統非正常程序的流程如圖1所示。首先按照已經收集好的權限信息情況,對權限向量進行提取,采用SMO分類器實現分類學習,并構建分類模型,然后采集各類別中的應用程序調用頻數,準確計算系統調用閾值。當新安裝的應用程序開始運行時,會將程序權限信息發送給服務器,并在類別判定之后每隔1 min上傳調用數據,計算出調用值的大小,并與調用閾值相對比,判斷程序的正常與否,如果程序非正常,則整個監控過程結束。在10 min里面,如果沒有發現非常行為,則可以定性為正常程序,整個監控過程結束。檢測結果會反饋給用戶,如果用戶發現分類有誤,還可以對分類進行修改,然后重新開始監控。

圖 1 安卓系統非正常程序檢測流程圖

1.2 基于SMO算法的分類學習

在谷歌商店里,全部應用程序總共分成了26個大類別。本文通過Python腳本獲取每一個大類別中一定數量程序的權限使用情況,同時結合AAPT提取訓練集中的安卓顯示文件,該文件為XML格式,在自動化分析下可以抓取相關的權限標簽,得到每一個程序的權限使用情況。

程序1:讀取安卓顯示代碼

假設當前的應用程序數量為個,任意一個程序的權限使用情況記錄成:A(1,2,…136。A(1≤≤)為程序名稱,136表示安卓系統根據字母表進行順序排列的136個權限,如果程序使用該權限則記成1,否則記成0。盡管安卓應用程序的全部權限達到了136個,但這些權限并不會同時使用。據相關統計,安卓應用程序能夠申請到的權限一般為10~25個[3]。Rajivkumar等在研究中證明了SMO算法對安卓應用程序權限分類有著較好的效果[4]。Elbert等采用了SMO以及其它三種算法,分別驗證安卓應用程序的權限分類結果,實驗結果證明SMO算法的查全率和準確率更高[5]。本文通過SMO算法進行分類學習,最終實現對安卓應用程序權限的準確分類。

假設訓練數據為個,所有訓練數據統計成:(1,1)(2,2),…(A,S),用A(1≤≤)代表權限使用情況,用S(1≤≤)代表分類標簽,標簽值用1或-1表示,其中1表示一類,-1表示另一類。通過SMO算法兩兩比較訓練數據類別,按照程序權限進行分類學習,由此判斷出權限類別。當應用程序新安裝并運行時,程序權限使用情況會傳給遠程服務器,在服務器端分析處理之后,得出權限向量并進一步比較與確定。

圖 2 Financial statistics應用程序系統調用頻數

1.3 基于系統調用的安卓非正常程序檢測

在Linux3.10內核中,系統調用達到了290個。按照Kirubavathi等的研究結果,對于安卓應用程序行為的反映,能夠使用到的系統調用并不多[6]。為盡量提升結果的精確性,并且降低運算量,本文使用的系統調用有18個,包括文件打開和讀取、子進程創建、可執行文件運行等系統調用。以Financial statistics財務管理應用程序為例,檢測這一分鐘內調用系統的頻數,如圖2所示。

程序2:獲取系統調用的代碼

Financial statistics表面是一款財務管理的應用程序,但非正常程序發布者可以利用該程序對用戶隱私信息進行主動收集。根據圖2顯示的系統調用頻數,I/O總控制函數(ioctl)調用數最高,超過了2000次。Gaviria等認為正常運行于Linux內核中的進程,系統調用頻數相對比較穩定,但有非正常行為產生時,則系統調用頻數會出現較大的波動[7]。本文使用的18個系統調用頻數在正常情況下較穩定,但出現非正常行為時將導致頻數改變。在基于SMO算法的分類學習之后,本文基于系統調用對安卓非正常程序進行檢測。

第一步:計算每分鐘內應用程序的系統調用權值:(S,R)=U×(1-(S,R))2(1)

在上式中,S(1≤≤18)代表第個系統調用;R(1≤≤26)代表谷歌商店根據英文字母順序進行排列的第個類別;U(1≤≤18)代表第個系統調用的實際情況,如果已使用記成1,如果未使用記成0;(S,R)是系統調用的出現頻率;(S,R)是1 min時間里產生的系統調用權值。

第二步:確定每一個類別下面系統調用的閾值。抽取訓練集每一類別中個正常程序,在-1至(1≤≤10,?) min里面連續操作,總耗時10 min,系統調用值計算如公式(2)所示,系統調用閾值計算如公式(3)所示。

對比分析系統調用值與系統調用閾值,如在10 min里面系統調用值≥系統調用閾值,則可以判斷為非正常程序,10 min里面系統調用值<系統調用閾值,可以判斷為正常程序。

2 實驗分析

2.1 安卓系統應用程序分類結果與分析

本實驗通過Python腳本抓取谷歌商店中不同類別下面的應用程序,抓取量為2096個,這些程序組合成訓練集,在每個類別中的分布情況如圖3所示。

通過Python腳本讀取每個程序的安卓顯示代碼,分析出程序的權限向量,然后隨機選擇10個大分類,采用SMO分類器進行分類學習,結果如表1所示。

圖 3 被抓取程序在每個類別中的分布情況

表 1 應用程序分類結果

根據應用程序分類結果,準確率和查全率都比較高,證明SMO分類器可以進行較好的分類學習。

2.2 安卓系統非正常程序檢測結果與分析

本實驗從谷歌商店選取與SMO分類學習相同的10個大分類,每一個分類選取20個程序,依次在安卓手機中安裝,并對程序功能操作10 min,通過Python腳本分析系統調用數據,使用公式(3)計算系統調用閾值,結果如表2所示。

本實驗從安卓病毒共享庫中提取20個不正常樣本,然后從谷歌商店中提取10個正常樣本,分別在安卓手機中安裝,通過Python腳本分析,并使用公式(2)計算10 min操作過程中的系統調用值,部分應用程序的非正常檢測結果如表3所示。

表 2 系統調用閾值統計

表 3 部分應用程序非正常檢測結果

3 討論

從實驗結果看,正確判斷應用程序類別將對檢測結果造成直接的影響。根據谷歌商店的分類,Financial statistics歸屬于財務分類,系統調用閾值為3.297,如果判斷為交通運輸類,則系統調用閾值為3.477,而Financial statistics系統調用值為3.386,則該程序會被判斷為正常,由此造成了檢測誤判。只有先正確判斷出程序類別,才能進一步進行檢測,程序類別是決定檢測準確率的主要因素。Coelho等提出一種基于系統調用的安卓系統非正常程序檢測法,將系統調用事件分成正常和非正常兩種,通過系統調用的頻數信息抽取和計算,對比兩種事件的相似度,由此判斷程序正常與否[8]。Avuclu等認為安卓系統非正常程序檢測需要以程序分類為基礎,提出一種調用程序分類參數的方法,為非正常程序檢測提供重要依據[9]。但這些方法都有一定的片面性,本文采用的檢測法綜合了程序分類和系統調用,對于安卓系統非正常程序檢測有著更高的準確率。

4 結論

本文提出的一種安卓系統非正常程序檢測方法,主要是以應用程序的分類為前提,同時結合系統調用法,通過安卓手機收集應用程序的權限信息以及系統調用數據,然后發送到遠程服務器,由遠程服務器按照權限信息實現應用程序的分類,以此為依據統計系統調用的頻數,檢測運行程序的正常與否。根據實驗結果,本文提出的方法能夠準確檢測出安卓系統中的非正常程序。

[1] Powers S. Android Candy: A Virtual Android[J]. Journal of business logistics, 2017(6):14-25

[2] Chanajitt R, Viriyasitavat W, Raymond Choo KK. Forensic analysis and security assessment of Android m-banking apps[J]. The Australian journal of forensic sciences, 2018,50(4):1-17

[3] 徐林溪,郭帆.基于混合特征的惡意安卓程序檢測方法[J].計算機工程與科學,2017,40(10):1837-1846

[4] Mente R, Bagadi A. Android Application Security[J]. Advances in computational sciences and technology, 2017,10(4):1207-1210

[5] Jan van Veldhuizen E. ESP8266 on the Elektor Android I/O Board Load new firmware yourself[J]. Elektor, 2018(1):100-104

[6] Kirubavathi G, Anitha R. Structural analysis and detection of android botnets using machine learning techniques[J]. International Journal of Information Security, 2018,17(2):153-167

[7] de la Puerta G, Borja JS. Using Dalvik opcodes for malware detection on android[J]. Logic journal of the IGPL, 2017,25(6):938-948

[8] Coelho R, Almeida L, Gousios G,. Exception handling bug hazards in Android[J]. Empirical software engineering, 2017,22(3):1264-1304

[9] Avu?lu E, Ba??ift?i F. A new approach to minimize the loss of life after natural hazards by using Android operating system[J]. Natural Hazards, 2018,90(2):1005-1016

Empirical Study on Detecting Abnormal Procedures in Android Systems

LI Qing-yang

201620,

Aiming at the current situation that there are many abnormal programs in Android system, a new detection method is proposed, which combines application classification and system call method. The purpose is to improve the accuracy of the detection of abnormal programs in Android system. The classified data were collected from Google Store, and the abnormal program samples were collected from Android virus shared library. The normality of the experimental samples was judged by comparing the system call values and thresholds. The experimental results show that the method proposed in this paper can accurately detect abnormal programs in Android system, and has certain popularization value.

Android system; abnormal procedures; detection; SMO

TP391

A

1000-2324(2019)01-0150-04

10.3969/j.issn.1000-2324.2019.01.034

2018-07-20

2018-09-22

李清煬(1999-),男,在讀本科,專業方向:計算機科學與技術. E-mail:1328526113@qq.com

猜你喜歡
程序分類檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
分類算一算
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
分類討論求坐標
數據分析中的分類討論
“程序猿”的生活什么樣
教你一招:數的分類
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 尤物精品视频一区二区三区| 国产精品观看视频免费完整版| a级毛片免费看| 国产丝袜无码一区二区视频| 超碰精品无码一区二区| 91成人免费观看| 亚洲六月丁香六月婷婷蜜芽| 国产av无码日韩av无码网站| 日本爱爱精品一区二区| 青青青草国产| 91麻豆久久久| 久久久久久久久亚洲精品| 免费a级毛片视频| 亚洲视频黄| 国产精品久久久久久影院| 91无码视频在线观看| 波多野结衣一二三| 午夜在线不卡| 手机在线看片不卡中文字幕| 国产高清不卡| 成人国产免费| 国产精品任我爽爆在线播放6080| 老司机午夜精品网站在线观看 | 欧美日韩中文国产| 日本高清有码人妻| 精品国产电影久久九九| 97久久超碰极品视觉盛宴| 中文纯内无码H| 成人国产精品2021| 99久久亚洲精品影院| 欧美中文字幕在线视频| 日韩在线网址| 久久久久久久97| 国产高清无码麻豆精品| 婷婷99视频精品全部在线观看| 一本大道香蕉高清久久| 欧美中文字幕一区二区三区| 欧美视频二区| 免费人成视网站在线不卡| 国产主播福利在线观看| 暴力调教一区二区三区| 久久免费观看视频| 色精品视频| 欧美爱爱网| 欧美日韩另类国产| 中文无码精品A∨在线观看不卡| 欧美日韩另类国产| 日韩av无码精品专区| 国产免费一级精品视频| 中文字幕在线日本| 亚洲视频免费播放| 456亚洲人成高清在线| 亚洲人成在线免费观看| 久久99国产综合精品女同| 欧美亚洲一二三区| 亚洲精品国产乱码不卡| 日韩第一页在线| 在线观看av永久| AV片亚洲国产男人的天堂| 日韩精品一区二区三区免费| 亚洲日韩精品无码专区97| 久久精品亚洲专区| 亚洲天堂网视频| 色色中文字幕| 国产精品一线天| 欧美成人精品一级在线观看| 57pao国产成视频免费播放| 亚亚洲乱码一二三四区| 国产尤物在线播放| 国产成人a在线观看视频| 色噜噜久久| 久久天天躁狠狠躁夜夜躁| 国产免费久久精品99re不卡 | 亚洲成肉网| 亚洲一道AV无码午夜福利| 91精品网站| 欧美一区国产| 国产亚洲精品91| 久久久国产精品无码专区| 国产特级毛片| 免费国产高清精品一区在线| 国产午夜精品一区二区三区软件|