首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在移动应用程序上可以执行哪些测试来确定它们是否安全?

在移动应用程序上可以执行哪些测试来确定它们是否安全?
EN

Security用户
提问于 2018-09-16 19:58:09
回答 2查看 150关注 0票数 0

我的公司希望与潜在客户的后端提供商合作,以便为他们制作一个应用程序。要做到这一点,我们需要使用他们的API。我们已经和这家公司谈过了,他们担心安全问题,所以他们说,只有在第三方测试了应用程序的渗透性之后,他们才会让我们发布这款应用。

该应用程序将允许用户登录并访问他们的财务信息,因此他们希望确保一切都是安全的是合理的,但据我所知,“渗透测试”对于移动应用程序来说并不真正有意义。这是正确的吗?我们能做些什么来让他们相信应用程序是安全的呢?是否有一种可以由第三方执行的标准应用程序安全测试的名称?

EN

回答 2

Security用户

发布于 2018-09-16 22:32:58

作为一名定期对第三方移动应用程序进行渗透测试的前安全顾问,这绝对是有意义的。实际上,与其他类型的应用程序(如web应用程序或内核模式驱动程序)相比,移动应用程序对黑匣子的抵抗力要低一些,但你甚至可以做很多事情--即使是黑匣子程序(而更多的是白盒应用,尽管逆向工程大多数Android应用程序都非常容易,几乎都是白盒的)。

我们发现了一些常见的安全问题:

  • 没有正确执行TLS验证的应用程序(例如,允许自签名证书,甚至允许任意无效证书)。
  • 具有易受攻击的入口点的应用程序(文件关联、URI方案、共享契约或其他方式以编程方式调用它们,然后让它们做一些不应该做的事情)。
  • 使用过时库或已知漏洞的SDKs的应用程序。
  • 使用带有不安全JavaScript桥的web视图的应用程序。
  • 有时使用HTTP而不是HTTPS的应用程序。
  • 使用web视图但没有锁定路径或JS执行的应用程序容易受到web应用程序的攻击和/或钓鱼。
  • 存储机密的应用程序(凭据、令牌、私有数据等)在纯文本和/或可读的位置。
  • 将密钥或其他秘密(例如,web服务的API密钥)存储在二进制文件中的应用程序,就好像攻击者无法反向工程应用程序来找到它一样。
  • 不安全地使用本机代码的应用程序,并且存在内存损坏错误。
  • 不正确地使用密码学的应用程序,因此是不安全的。

还有更多的东西可以出现,尽管这些是最常见和/或最严重的。移动应用程序肯定有安全漏洞,应该接受安全审查,包括渗透测试。

票数 4
EN

Security用户

发布于 2018-09-17 02:34:46

除了上面提到的渗透测试之外,您还可以让第三方执行安全代码检查,或者由同一个组织同时执行。如果您有任何静态分析工具,您可以提供结果以及工具检查的漏洞列表。

在我的角色中,我通常会分解应用程序,并找到在特定情况下由于设计决策而可以利用的代码。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/193861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档