App的安全问题
根据网上所查的资料,罗列了一些App的安全问题,主要有以下几点:
1. 隐私数据
- 外部存储安全和内部存储安全
- 用户名、密码、聊天记录、配置信息等隐私信息是否被保存在本地,是否加密保存
- 使用数据前都判断信息是否被篡改
2. 权限攻击
- 检查App所在的目录,其权限必须为不允许其他组成员读写
- 检查系统权限是否受到攻击
3. 数据通信
- 软件与软件的通信安全,主要是意图不被其他程序截获
- 软件与网络服务器的通信安全,即检查敏感信息在网络传输中是否做了加密处理
- 防止暴力破解用户名、密码
4. 运行时解释保护
- 对于嵌有解释器的软件,检查是否存在XSS、SQL注入漏洞
- 使用webiew的App,检查是否存在URL欺骗漏洞
5. Android组件权限保护
- 禁止App内部组件被任意第三方程序调用
- 禁止Activity被任意第三方程序调用
- 禁止Activity劫持
- Broadcast的接收和发送安全,只能接收本程序发出的广播,发送的内容不想让第三方获得
- 禁止恶意的启动或者停止service
- Content provider的操作权限
- 若需要供外部调用的组件,应检查对调用者是否做了签名限制
6. 升级
- 检查是否对升级包的完整性、合法性进行了校验,避免升级包被劫持
7. 第三方库
- 如果使用了第三方库,需要跟进第三方库的更新并且检查第三方库的安全性
8. ROM安全
- 使用官方ROM或者权威团队提供的ROM,避免ROM中被添加了植入广告、木马等
9. 对抗反破解
- 对抗反编译,即无法通过反编译工具对其进行反编译,或者反编译之后无法得到正确的反汇编代码
- 对抗静态分析,采用代码混淆技术,代码加密
- 对抗动态调试,在软件中加入检测调试器和模拟器的代码
- 防止重编译,检查签名、校验编译之后dex文件的Hash值
时间: 2024-10-10 20:13:41