美文网首页我爱编程iOS逆向工程破解
iOS 应用如何防止被反编译

iOS 应用如何防止被反编译

作者: 这人很懒 | 来源:发表于2018-04-16 20:20 被阅读1290次

    众所周知,iOS系统安全性非常高,很少出现漏洞,几乎不会中毒的情况。然而随着技术的不断的进步和各位工程师的不懈努力,iOS的漏洞被发现的越来越多。随着各种iOS安全隐患的出现,人们逐渐认识到,iOS跟Android一样也面临严重的安全问题。那么iOS应用都有哪些安全性问题呢?作为一名iOS开发工程师我们该怎么做才能把隐患降到最低,才能使自己的应用不会轻易的被竞争对手反编译呢

    iOS应用安全风险

    1. 内购破解

    风险之一:越狱(插件)、存档破解(iTools工具替换文件)、第三方软件修改(八门神器等)

    2.网络安全风险

    风险之二:截获网络请求,破解通信协议并模拟客户端登录,伪造用户行为,对用户数据造成危害

    3.应用程序函数PATCH破解

    风险之三:利用FLEX 补丁软件通过派遣返回值来对应用进行patch破解

    4.源代码安全风险

    风险之四:通过使用ida等反汇编工具对ipa进行逆向汇编代码,导致核心代码逻辑泄漏与被修改,影响应用安全

    iOS应用加密防止反编译技术

    1.本地数据加密

    iOS应用防反编译加密技术之一:对NSUserDefaults,sqlite存储文件数据加密,保护帐号和关键信息(Base64、MD5、MD5加盐、时间戳/动态密码、DES、存储到钥匙串、Cookie(网络信息块))

    2.URL编码加密

    iOS应用防反编译加密技术之二:对程序中出现的URL进行编码加密,防止URL被静态分析

    3.网络传输数据加密

    iOS应用防反编译加密技术之三:对客户端传输数据提供加密方案,有效防止通过网络接口的拦截获取数据

    4.方法体,方法名高级混淆

    iOS应用防反编译加密技术之四:对应用程序的方法名和方法体进行混淆,保证源码被逆向后无法解析代码(第三方或用脚本)

    5.程序结构混排加密

    iOS应用防反编译加密技术之五:对应用程序逻辑结构进行打乱混排,保证源码可读性降到最低

    相关文章

      网友评论

        本文标题:iOS 应用如何防止被反编译

        本文链接:https://www.haomeiwen.com/subject/gpxykftx.html