如果可以进行逆向工程,如何保护应用IPA免受攻击

Vin*_*Vin 30 iphone ipad ios4 ios

最近,我们在应用商店开发并发布了一个移动银行应用程序,供大型银行机构使用.该银行聘请了一家安全公司对该应用程序进行道德黑客攻击,以确定它是否会泄露机密数据.

我们最近收到了该公司的黑客报告,尽管该报告没有出现严重的安全问题,但它包含了所有类文件,方法名称和项目汇编代码的列表.

现在,客户端坚持要求我们修复这些安全循环漏洞并重新发布应用程序.但是我们不知道他们是如何设法从应用程序的IPA中获取所有这些细节的.我搜索了这个,发现了一个特别的帖子,提到这个链接,声明你不能保存你的应用程序不被黑客入侵.

请帮助我如何解决这些安全漏洞,或者如果不可能,如何说服客户端.

编辑:最近碰到过这个页面.似乎来自Arxan的EnsureIT可以阻止应用程序IPA进行逆向工程.有经验的人吗?

Toa*_*tor 11

总是涉及的风险.即使您没有自己引入漏洞,该平台也可能允许利用漏洞,最终可能为恶意攻击者提供入口点.

至于你的问题:它是不是安全的假设,一个硬编码的URL,即使混淆超越信仰,不能去皮你的产品的.始终设计您的应用程序,以确保(尽可能)保证用户数据的安全,即使内置的资源受到损害.如果仅知道该URL会带来安全威胁,那么您的整个方法和客户端API本身就是不安全的.请记住,此类信息也可能被中间人攻击(以及其他攻击模式)捕获.

默默无闻地避免安全.如有必要,仅将敏感数据存储在磁盘上.通常不允许PIN/TAN存储.

一些想法可能(或可能不)让您的客户相信您的应用程序尽可能安全:

  • 只要应用程序在非越狱设备上运行,攻击者即使了解您的应用程序内部设备也无法获取任何用户数据,因为iPhone通常不会提供干扰您的应用程序的机会
  • 如果攻击者能够获取您的用户数据,并且您已经使用iOS下可用的所有方法保护该数据( - > keychain - > crypto chip - > ...),那么这不是您的错.这意味着该设备要么已越狱,要么系统本身存在已被利用的漏洞,您无法对这两种可能性做任何事情.
  • 无法阻止您的应用进行逆向工程.即使你更加努力地进行模糊处理,具有强烈动机的攻击者仍然能够得到他想要的东西.您的客户需要习惯这一点,因为这是事实.
  • 其他平台也存在类似的漏洞,但至少在iPhone上你有一个有些封闭的环境,并且降低了受到特洛伊木马等攻击的风险.
  • 政府和安全公司定期被黑客入侵,尽管他们现在应该如何保护自己.这意味着生命本质上是不安全的,应对它.

  • 当然我不能假设该设备没有越狱.但我可以假设拥有该越狱设备的用户知道他或她在越狱时正在做什么,并且他可能会损害他或她设备的安全性.因此,如果由于越狱,用户会向攻击者丢失关键的个人数据,这是他/她自己的责任. (3认同)