首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当客户端禁用证书固定时,服务器能检测到吗?

当客户端禁用证书固定时,服务器能检测到吗?
EN

Security用户
提问于 2016-05-17 17:05:09
回答 1查看 1.2K关注 0票数 2

许多移动应用程序执行证书钉扎,以使中间人的攻击难以完成。但是,有了一个越狱/根设备,就有可能禁用客户端上的证书。例如,通过在SSL灭电开关上使用iOS。

一个前一个问题问到如何“防止绕过证书钉扎”。我明白如何有效地预防是不可能的,因为只要客户端有根在客户端设备上,任何预防都被限制在“默默无闻”的安全范围内,只能玩猫捉老鼠的游戏。

但是,我感兴趣的是,是否可以从服务器端检测客户端何时禁用了证书钉扎。

具体地说:

1)是否可以仅使用较低级别的SSL功能来检测客户端何时禁用了证书定位?

2)如果不具备较低级别的SSL功能,那么服务器是否需要客户端提供一些信息,以证明证书钉扎仍然启用?

EN

回答 1

Security用户

回答已采纳

发布于 2016-05-17 17:15:31

不,无法确定SSL固定在客户端的状态。SSL定位是仅在客户端内进行的证书验证的一部分,服务器获得的唯一反馈是验证是否成功(连接是否继续)(连接已关闭,可能是TLS警报)。

此外,服务器无法完全可靠地“询问”客户端钉扎状态,因为您不能期望运行在由“攻击者”完全控制的设备上的应用程序得到真正的响应。

但是,在不被发现的情况下,使钉扎失效变得更加困难。如果您正在构建一个应用程序,并且希望检测是否禁用了定位,您可能会连接到两个不同的主机。对于其中一个主机,您需要一个有效和固定的证书,而对于另一个主机,则需要一个有效但不是固定的证书。如果这两种连接都成功了,你可以得出结论,有人篡改了钉扎。当然,如果“攻击者”知道应用程序的这种行为,他可以绕过您的检测,但不知道它会变得更难。而更复杂的(甚至是动态的)计划应该有可能使它变得更加困难。

但是问题仍然是,你从知道钉扎是否被禁用得到了什么。如果你确保固定是不可能的,你可能会阻止在中间嗅探的男人。这仍然留下了在应用程序中嗅探数据的选项,即在数据被加密之前和解密之后。这意味着控制设备的攻击者仍然可以分析甚至修改数据。

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

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

复制
相关文章

相似问题

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