首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >共同的TLS和Cert钉钉解决同样的问题?

共同的TLS和Cert钉钉解决同样的问题?
EN

Security用户
提问于 2019-10-18 18:23:33
回答 2查看 2.8K关注 0票数 3

为了防止MITM从我的应用程序,我将使用证书钉扎。

为了防止未经批准的各方与我的服务器通信,我可以使用Mutal,它实际上接受来自可信来源的通信。

我是错过了什么还是听起来一样?

EN

回答 2

Security用户

发布于 2019-10-18 19:01:39

虽然互TLS和证书钉扎是针对不同的问题而设计的,但它们也可以用来解决检测活动MITM的具体问题。只有在使用互TLS时,才是检测MITM (客户端证书不是预期的)的服务器,而使用证书固定的是客户端(服务器证书不是预期的)。

执行要求也不同:

在(服务器)证书固定的情况下,客户端需要服务器的证书(或CA固定的情况下的CA )。证书的指纹(散列)或公钥(更灵活)也就足够了。所有客户端都可以共享有关服务器证书的相同信息。

但是,对于客户端证书,每个客户端需要一个证书和匹配的私钥。每个客户端还应该拥有一个具有不同密钥的不同证书,因为在客户端之间共享相同的私钥使得攻击者更有可能访问该密钥。当然,需要安装适当的撤销和重新颁发证书的进程,以防来自一个客户端的密钥被破坏。这使得它比服务器证书固定要复杂得多,可伸缩性更低。

换句话说,虽然可以使用服务器证书固定和客户端证书来检测活动的MITM,但服务器证书的使用要简单得多,而且扩展性更好。因此,仅仅使用客户端证书来检测MITM可能是个坏主意,但如果无论如何都需要它们,则可以使用防止活动MITM的副作用。

票数 6
EN

Security用户

发布于 2019-10-21 19:55:11

如果您担心客户端可能落入恶意的手中,请考虑到您的应用程序可以被检测,这样证书仍然有效,但是有效负载被操纵和/或被盗。

考虑两种不同的情景:

  1. 若要对应用程序进行测试,使用于交互TLS的证书仍然有效,但数据被操纵和/或被盗,攻击者不需要有根的设备。这涉及更改APK并安装此更改的APK。这可能是有意识地运行伪造应用程序的最终用户,也可能是被说服安装这种应用程序的人。我们可以尝试使用各种混淆技术,使这种攻击更加困难,但我们没有办法提供充分的保护,以抵御一个坚定和熟练的黑客。
  2. 在越狱设备上,恶意应用程序可以在不更改应用程序和重用(滥用)有效的客户端证书的情况下,接管您的流量并有效地执行MITM攻击。这种攻击可能发生,即使设备是越狱,不知情的所有者。在这种情况下,其他一些保护措施,如根和注入检测、保持所有数据加密等,可能有助于减轻或阻止攻击。
票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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