Android中的文件存储安全

APP在创建内部存储文件时,将文件设置了全局的可读或者可写的权限,攻击者可以恶意读取和修改文件的内容,造成信息泄露或者信息篡。



函数的第二个参数,代表文件的操作模式。在设置模式时如果设置成可读或者可写模式可能会造成安全问题。
第二个参数的模式 
MODE_PRIVATE 私有 只有自身能够访问,重复写入时会文件覆盖 
MODE_APPEND  私有   只有自身能够访问,重复写入时会在文件的末尾进行追加
MODE_WORLD_READABLE 公用  外部应用可读 
MODE_WORLD_WRITEABLE 公用 外部应用可写
MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE   公用 外部应用可读可写

常用的函数代码例子

openFileOutput函数
FileOutputStream outputStream = openFileOutput(fileName,Activity.MODE_PRIVATE);
outputStream.write(content.getBytes());
outputStream.flush();
outputStream.close();

SharedPreferences函数
SharedPreferences.Editor editor=getSharedPreferences("share",MODE_PRIVATE).edit();
editor.putString("name", "test");
editor.commit();


openOrCreateDatabase函数

db = SQLiteDatabase.openOrCreateDatabase("my.db", MODE_PRIVATE, null);
db.execSQL(sql);


应用内部文件权限一般设置成这个格式rw-rw----,外部即不可读和不可写权限

安全使用建议
1.使用MODE_PRIVATE模式创建应用内部文件。
2.避免应用内部文件敏感信息明文存储。

猜你喜欢

转载自blog.csdn.net/nextdoor6/article/details/52540496