宇软分享ios系统的一些安全防护措施,移动端相比服务器,更容易被进行攻击。尤其是IOS因其封闭系统给人感觉安全可靠,但实际上也是存在着安全隐患的。
1.程序文件安全:如果因Hybrid等原因打包了js文件或其他文件,攻击者在越狱手机上甚至可以修改js代码从而进行攻击。对此,可以通过将js源码进行混淆和加密,防止Hacker轻易阅读和篡改相关逻辑。、
2.ios应用的数据存储形式:Plist文件(主要存储APP的用户设置及配置信息)、SQLite数据库文件、Keychain文件、缓存文件、日志文件,对于本地重要数据,应加密存储或将其保存到Keychain中(使用更安全的kSecAttrAccessibleWhenUnlocked或kSecAttrAccessibleWhenUnlockedThisDeviceOnly选项),以保证其不被篡改。
3.通过class-dump、theos等反汇编工具,Hacker可以得到可读性很高的内容,从而制作注册机、机器人账号等。使用宏(#define)来混淆类名、替换易读的字符串;关键逻辑使用纯C实现
4.Hacker可能会使用调试器GDB来攻击app、篡改程序包加入一些广告或者修改程序逻辑,然后重新签名打包(检查embedded.mobileprovision文件是否被修改)
5.避免使用GET方式传递密码,因为GET的参数直接拼接到url中,被截获一眼就能知道密码,改用POST方式;避免使用有漏洞的第三方网络库;关键数据单独加密lApp内要对https证书做校验;使用非对称加密,事先生成一对用于加密的公私钥
宇软分享ios系统的一些安全防护措施