这次我们看看程序在设备上存储了什么敏感信息
(server-env)sartre:AndroidLabs2 maxim$ adb shell
# cd /data/data/com.securitycompass.androidlabs.base
# ls
lib
shared_prefs
# cd shared_prefs
# ls
preferences.xml
com.securitycompass.androidlabs.base_preferences.xml
查看preferences.xml文件如下:
# cat preferences.xml
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="serverpass">password</string>
<string name="localpasssalt">+tm+vXQuNL01T2caEwlG6XBj9ZrS9w5XfVk5EFV15SQ=
</string>
<string name="serveruser">jdoe</string>
<boolean name="firstrun" value="false" />
<string name="localpasshash">vt8O7P2Y1dPYjRJG/F7QXADtpc2/DxlvpYya2b/oSIA=
</string>
</map>
可以看到他明文保存了用户名和密码,这种敏感数据应该加密存储,或者不存储,由backend验证