1?????背景分析
互聯網時代到來時,人們曾經感慨,一切都在被數字化。而今天,一切都在移動化。在大街小巷民眾低頭忙著劃動屏幕成為一景。國外權威機構的數據顯示,中國智能手機已經占據了手機總銷量的96%,傳統功能手機基本上已經淡出了歷史舞臺。據美國市場研究公司emarketer最近的一個報告稱,權威市調機構gartner的數據顯示,在中國,智能手機在手機中銷量的占比位96%,而美國也是96%。換言之,在移動互聯網的硬件層面,中國和美國已經在一個水平上。
智能手機的普及隨之推動了手機app的快速發展,當前手機app可涉及小到溝通聊天、外賣預定、車票預定、旅游預定、購物、新聞瀏覽等,大到銀行投資理財、醫院掛號、支付交易等,一個人的一天活動基本可依賴手機完成。正因為對app的大量普及,很多軟件開發商都看到了這塊市場帶來的利益,隨著利益的驅動,各種各樣的app層出不窮,app的市場也是魚龍混雜。由于速成化的app安全性無法得到充分保障,近些年來,個人信息泄露事件在通過app發生的頻率很高。
通過大數據分析,對當前手機手機上常用app做了統計數表如下:
?
從圖表統計不難看出,幾乎每個手機上都安裝有聊天、視頻娛樂、購物等相關app,那這些app是怎樣在手機上工作的呢?又會不知不覺獲取手機的哪些信息呢?
2?????手機app的常見安全問題
伴隨著技術的發展,手機的功能還遠遠不只這些,大數據時代已經到來,智能家居物聯網時代也隨之而來,此處以安卓app即apk來進行分析,下載任意apk,修改其后綴為tar,即可查看部分apk的相關文件
AndroidManifest.xml為Android應用的入口文件,它主要描述了安裝包中暴露的組件、各個類的實現、軟件的相關讀取權限等。下面是您可以在此處獲取的AndroidManifest.xml文件的詳細內容:
通過對AndroidManifest.xml文件的具體分析,可得知當前app獲取到的手機權限如下:
其中主要的權限包括允許讀取手機狀態、允許撥打電話、允許讀取聯系人、允許修改系統全局設置、允許創建藍牙連接、允許定位、允許開機自動啟動等等相關權限。如果用戶在使用該應用程序時選擇了默認安裝模式,可能會導致其個人信息泄露。
熟悉Android開發的都了解,Android應用有四大組件,即Activity,Service服務,ContentProvider內容提供者,BroadcastReceiver廣播接收器。
先來說下activity組件,activity組件之間通信是通過Intent進行通信,為用戶操作展示可視化界面,一個Android應用必須通過activity組件來運行和啟動。Application之間雖然相互獨立,但是可以通過app中的activity組件進行互相通信、調用、訪問等,該app的activity組件如下:
通過該apk進行分析可發現,其入口activity組件是com.meiyou.pregnancy.ui.welcome.WelcomeActivity,app在啟動時調用 了其他的activity組件,當activity組件可以進行導出時,可被第三方app任意調用,造成敏感信息泄露還可能受到認證繞過、惡意代碼注入、頁面劫持等風險。
BroadcastReceive使應用對外部事件進行過濾只是對需要的事件進行接收并做出響應,并且其沒有用戶界面,但是卻可以啟動一個activity或service來響應收到的信息,使得不同組件或不同應用之間進行通信,首次啟動app時,系統會自動實例NotificationProxyBroadcastReceiver,并注冊到系統中。注冊動態廣播時需要進行注銷操作,否則可能會造成內存泄露;重復進行注冊或注銷也是不被允許的。
Service服務即后臺服務,當使用service服務時,需要在AndroidManifest.xml中聲明,本次測試的apk在AndroidManifest.xml中聲明如下,
service是獨立于activity組件的,在后臺執行一些操作,如當需要從服務器定期獲取數據時,此時就需要用到service。
除了四大組件中存在安全漏洞,在調用web接口時同樣會出現各種web漏洞,如sql注入漏洞、xss漏洞、越權、未授權等相關漏洞,截圖為某個app的http請求數據包,通過測試發現其post數據包中含有越權訪問的漏洞,可通過某個參數越權查看他人的賬戶信息。
總之app的漏洞可能出現地方有很多,值得我們關注的地方還有很多,如數據傳輸過程中是否加密,數據在本地存儲中又是否加密、intent啟動activity組件是否安全等等。
3?????安全建議
這么多app,作為普通用戶使用者還是沒法對app做到安全檢測的,那么應該如何去防止個人信息因為app遭到泄露呢?
l?首先建議在正規的渠道去下載app,防止下載到的app被修改編譯過,不是原版應用;
l?如果沒特殊要求不建議將手機進行root處理;
在安裝應用程序時,請注意其所需的開放權限,并關閉不必要的權限,例如位置信息、讀取手機聯系人等
l?可在手機上安裝合適的殺毒軟件,定期進行查殺并清理沒用的軟件、程序包等;
l?定期升級相關app,修復老版本存在的bug。