Android常見漏洞

來源:互聯網
上載者:User

標籤:註冊   使用者資訊   name   ast   惡意代碼   oid   表單   添加   配置   

 

Android常見漏洞

漏洞名稱: Log敏感資訊泄露

漏洞描述: 程式運行期間列印了使用者的敏感資訊,造成泄露

修改建議: 建議禁止隱私資訊的log

 

漏洞名稱: web https校正錯誤忽略漏洞

漏洞描述: 漏洞可導致中間人攻擊

修改建議: 建議不要忽略ssl認證錯誤

 

漏洞名稱: sql注入漏洞

漏洞描述: 漏洞可能導致使用者資料庫中的資訊泄露或者篡改

修改建議: 建議使用安全sqlite,如sqlcipher

 

漏洞名稱: https空校正漏洞

漏洞描述: 漏洞可導致中間人攻擊

修改建議: setHostnameVerifier介面請設定安全選項層級

 

漏洞名稱: Provider組件暴露漏洞

漏洞描述: 沒有許可權限制的匯出組件可以使其他app訪問本程式的資料,導致資料泄露

修改建議: 建議增加許可權限制

 

漏洞名稱: Fragment注入漏洞

漏洞描述: 漏洞導致通過intent輸入適當的extra就可以調用其內部的任意fragment

修改建議: 不要匯出PreferenceActivity

 

漏洞名稱: WebView遠程代碼執行(CVE-2014-1939)

漏洞描述: 在4.0至4.2的Android系統上,Webview會增加searchBoxJavaBredge_,導致遠程代碼執行。攻擊者可以向頁面植入JavaScript,通過反射在用戶端中執行任意惡意代碼

修改建議: 在Webview中調用removeJavascriptInterface("searchBoxJavaBredge_")

 

漏洞名稱: ContentResolver暴露漏洞

漏洞描述: 通過暴露的ContentResolver可以繞過provider的許可權限制

修改建議: 對使用ContentResolver的組件不匯出或者添加許可權限制

 

漏洞名稱: https通訊沒有校正伺服器憑證

漏洞描述: 應用沒有校正伺服器憑證,可導致中間人攻擊,泄露通訊內容

修改建議: 不要重寫TrustManager類,或者實現checkServerTrusted,增加對伺服器憑證的校正

 

漏洞名稱: https通訊允許所有的伺服器憑證

漏洞描述: 應用沒有校正伺服器憑證,可導致中間人攻擊,泄露通訊內容

修改建議: 不要調用setHostnameVerifier設定ALLOW_ALL_HOSTNAME_VERIFY標誌位

 

漏洞名稱: Activity安全性漏洞

漏洞描述: Activity存在崩潰或者異常,任意其它應用可導致存在此漏洞的應用崩潰或者功能調用

修改建議: 對傳給Activity的intent中的參數進行嚴格的檢測,如無必要不要匯出這個Activity

 

漏洞名稱: WebView遠程代碼執行(CVE-2012-6636)

漏洞描述: JavascriptInterface允許攻擊者向頁面植入javascript,通過反射在用戶端中執行任意惡意代碼。所有應用在4.2以下的應用會受影響,編譯API level 小於17的應用在全部系統中都受影響

修改建議: 若應用編譯時間API level小於17,需要提升SDK版本。如果希望4.2以下的手機不受影響,可以參考替代方案https://github.com/pedant/safe-Java-js-webview-bridge

 

漏洞名稱: Service安全性漏洞

漏洞描述: Service存在崩潰或者異常,任意其它應用可導致存在此漏洞的應用崩潰或者功能調用

修改建議: 對傳給Service的intent中的參數進行嚴格的檢測,如無必要不要匯出這個Service

 

漏洞名稱: 使用不安全的加密模式

漏洞描述: 使用AES或者DES加密時,使用的預設加密模式或者顯式指定使用ECB模式.容易受到選擇明文攻擊(CPA),造成資訊泄露

修改建議: 顯式指定使用CBC模式加密

 

漏洞名稱: Receiver安全性漏洞

漏洞描述: BroadcastReceiver存在崩潰或者異常,任意其它應用可導致存在此漏洞的應用崩潰或者功能調用

修改建議: 對傳給BroadcastReceiver的intent中的參數進行嚴格的檢測,如無必要不要匯出這個Receiver

 

漏洞名稱: 加密時不能指定IV

漏洞描述: CBC加密時,使用了常量作為IV,可被進行BEAST攻擊,造成資訊泄露

修改建議: 動態產生IV的數值

 

漏洞名稱: 存在外部可訪問的表單

漏洞描述: 應用中存在外部可訪問的表單,造成資訊泄露

修改建議: 審核這些表單的存取權限,如果非必要不要匯出

 

漏洞名稱: 私人檔案遍曆漏洞

漏洞描述: 通過存在漏洞的URI,可以遍曆讀取應用的私人資料檔案,造成資訊泄露

修改建議: 修改存在檔案遍曆漏洞的URI的ContentProvider的實現,對輸入進行嚴格的檢測和過濾

 

漏洞名稱: Selection SQL注入漏洞

漏洞描述: 應用存在Selection SQL注入漏洞,會導致儲存在ContentProvider中的資料被泄漏和篡改

修改建議: 修改存在注入漏洞的URI的ContentProvider的實現,對輸入進行嚴格的檢測和過濾

 

漏洞名稱: Projection SQL注入漏洞

漏洞描述: 應用存在Projection SQL注入漏洞,會導致儲存在ContentProvider中的資料被泄漏和篡改

修改建議: 修改存在注入漏洞的URI的ContentProvider的實現,對輸入進行嚴格的檢測和過濾

 

漏洞名稱: 存在可被惡意訪問的表單

漏洞描述: 存在可以利用SQL注入方式訪問的表單,造成資訊泄露

修改建議: 修複相關的SQL注入漏洞

 

漏洞名稱: 同源繞過漏洞

漏洞描述: activity接收使用file://路徑的協議,卻沒有禁用Javascript的執行,通過此漏洞可以讀取應用的任意內部私人檔案,造成資訊泄露

修改建議: 禁用file協議或禁止file協議載入的檔案執行Javascript

 

漏洞名稱: 本地代碼執行漏洞

漏洞描述: Activity接受外部傳入的url參數,且存在WebView遠程代碼。攻擊者可從本地或者遠程對用戶端進行注入,執行任意惡意代碼

修改建議: 不要匯出此Activity,或者對接受的url參數進行嚴格判斷

 

常見風險

 

風險名稱: app備份風險

風險徵兆: 允許程式備份,可能導致使用者資訊泄露

修改建議: 如果不需要備份則添加allowBackup=false,或者實現加密備份

 

風險名稱: Log資訊泄露

風險徵兆: 程式運行期間的log資料可能泄露

修改建議: 建議發布版去掉log資訊

 

風險名稱: Intent泄露使用者敏感資訊

風險徵兆: Intent資料包含使用者的敏感資訊,可能導致泄露

修改建議: 將敏感資訊加密,採用許可權限制Intent的範圍

 

風險名稱: Receiver組件暴露風險

風險徵兆: 廣播可被外部調用導致敏感資訊泄露

修改建議: 無需暴露的組件請設定exported=false;若需要外部調用,建議添加自訂signature或signatureOrSystem層級的私人許可權保護;需要暴露的組件請嚴格檢查輸入參數,避免應用出現拒絕服務。進程內動態廣播註冊建議使用LocalBroadcastManager;或者使用registerReceiver(BroadcastReceiver, IntentFilter, broadcastPermission, Handler)替代registerReceiver(BroadcastReceiver, IntentFilter)

 

風險名稱: 廣播資訊泄露風險

風險徵兆: 廣播可以被其他惡意程式進行接收,導致使用者資訊泄露或者終止廣播

修改建議: 建議使用顯式調用方式發送Intent;進程內發送訊息建議使用LocalBroadcastManager;或者使用許可權限制接收範圍,如使用sendBoardcast(Intent, receiverPermission)替代sendBoardcast(Intent)

 

風險名稱: 外部儲存使用風險

風險徵兆: 儲存在外部空間的資料可能造成資訊泄露

修改建議: 建議敏感性資料不要採用外部儲存,外部儲存做好許可權限制和加密處理

 

風險名稱: app調試風險

風險徵兆: 允許程式被調試

修改建議: 將debugable的值修改為false

 

風險名稱: 私人設定檔讀風險

修改建議: 建議禁用全域讀操作,改為MODE_PRIVATE

 

風險名稱: 使用者自訂許可權濫用風險

風險徵兆: 以下許可權為normal許可權,可能導致敏感資訊泄露

修改建議: 建議修改為signature或者signatureOrSystem

 

風險名稱: 私人設定檔讀寫風險

修改建議: 建議禁用全域寫操作 改為MODE_PRIVATE

 

風險名稱: 私人設定檔寫風險

修改建議: 建議禁用全域讀寫操作 改為MODE_PRIVATE

 

風險名稱: 私人檔案泄露風險

風險徵兆: 存在敏感檔案泄露風險

修改建議: 建議禁用MODE_WORLD_READABLE和MODE_WORLD_READABLE選項開啟檔案

 

風險名稱: Activity組件暴露風險

風險徵兆: Activity介面可被其它應用調用,用於執行特定的敏感操作或釣魚欺騙,建議添加android:exported=false,若需要外部調用,需自訂signature或者signatureOrSystem層級的許可權

修改建議: 無需暴露的組件請設定exported=false;若需要外部調用,建議添加自訂signature或signatureOrSystem層級的私人許可權保護;需要暴露的組件請嚴格檢查輸入參數,避免應用出現拒絕服務。

 

風險名稱: 全域可讀檔案

風險徵兆: 應用記憶體在其它任何應用都可以讀取的私人檔案,可能造成資訊洩漏

修改建議: 將檔案屬性改為只有所屬使用者或同組使用者可以讀取

 

風險名稱: 全域可寫檔案

風險徵兆: 應用記憶體在其它任何應用都可以修改的私人檔案,可能造成應用行為被修改甚至是代碼注入

修改建議: 將檔案屬性改為只有所屬使用者或同組使用者可以修改

 

風險名稱: Uri使用者敏感資訊泄露

風險徵兆: Uri中包含使用者敏感資訊,導致逆向分析者很容易獲得相關資訊

修改建議: Uri路徑做轉換

 

風險名稱: 嘗試使用root許可權

風險徵兆: 如果程式具有root許可權,且沒有對調用做限制的話,可能被惡意利用

修改建議: 禁用不必要的高許可權,並對關鍵許可權加上校正限制

 

風險名稱: Url使用者敏感資訊泄露

風險徵兆: Url中包含使用者敏感資訊,可能導致資訊泄露

修改建議: 資料加密處理

 

風險名稱: 外部URL可控的Webview

風險徵兆: Activity可被其它應用程式掉用並載入一個外部傳入的連結,可被用來進行釣魚攻擊,或者進一步進行漏洞利用

修改建議: 減少不必要的Activity的匯出

 

風險名稱: KeyStore風險

風險徵兆: Android系統KeyStore金鑰儲存區組件存在敏感資訊洩漏漏洞

修改建議: 建議禁用android.security.KeyStore

 

轉:http://blog.csdn.net/zhangcanyan/article/details/51347629

 

Android常見漏洞

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.