E礦大獲取密碼測試

寒假自學安卓安全,東西看了不少,例子都看了看試了試,自己動手就是另一碼事了,這也是寒假弄得東西,現在都過了兩個月了我也沒弄新的= =真是慚愧

測試環境:win8.1+華爲MATE7手機(5.1.1已root)

測試目的,在登錄界面獲取密碼

 


對登陸界面下面顯示的文字進行定位,參數爲”login_info”。在public.xml文件中搜索可得到R.java文件中所定義的id值0x7f0601b2。搜索所有的smali文件可定位到登陸頁面是
LoginActivity.smali。進入該文件查看samli格式語言,閱讀查找輸入密碼的EditText。


不過因爲代碼沒有經過混淆,所以我們可以很方便的定位到經過dex2jar後的java源代碼中查看相應實現,可以看出是通過doLogin()方法實現的將輸入的用戶名和密碼讀入。


通過在smali文件中找尋代碼我們可以找到如下代碼,可以看出
v0即我們想要的密碼。


先將寄存器修改爲4個,然後添加如下代碼

 

         const-stringv3,"PW"

        

         invoke-static{v3,v0},Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I

會在調試時用log輸出我們想要的v0的值,即密碼。

(特別注意,華爲手機默認關閉log日誌,我之前試了半天沒正常輸出但是換到模擬器上正常,百度後,進入撥號界面:*#*#2846579#*#*,進入projectmenu--後臺設置--LOG設置)

重新編譯後安裝在手機上,打開DDMS,設置過濾規則,Tag設爲PW。

可以看出成功的獲取到了密碼。


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