Android靜態安全檢測 -> WebView明文存儲密碼

WebView明文存儲密碼 -WebSettings.setSavePassword方法


一、API


1. 繼承關係


【1】java.lang.Object

【2】android.webkit.WebSettings


2. 主要方法


【1】setJavaScriptEnabled(boolean flag):是否支持js


【2】setPluginsEnabled(boolean flag):是否支持插件


【3】setSavePassword(boolean save):是否保存密碼


【4】其他方法


參考鏈接:http://www.apihome.cn/api/android/WebSettings.html


二、觸發條件


1. 調用getSettings方法,獲取WebSettings對象


【1】對應到smali語句中的特徵:;->getSettings()Landroid/webkit/WebSettings;


2. 調用WebSettings.setSavePassword方法,設置setSavePassword(true)或沒有顯示設置(默認爲true)


【1】對應到smali語句中的特徵:

  Landroid/webkit/WebSettings;->setSavePassword(Z)V

  判斷對寄存器的賦值:const v1 0x1


三、漏洞原理


【1】在使用WebView的過程中忽略了WebView setSavePassword,當用戶選擇保存在WebView中輸入的用戶名和密碼,則會被明文保存到應用數據目錄的databases/webview.db中。如果手機被root就可以獲取明文保存的密碼,造成用戶的個人敏感數據泄露


【2】參考鏈接:http://wolfeye.baidu.com/blog/webview-setsavepassword/


四、修復建議


【1】使用WebView.getSettings().setSavePassword(false)來禁止保存密碼


轉自:

http://blog.csdn.net/u013107656/article/details/51690821

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章