gpt4 book ai didi

security - Xamarin SSL/TLS 固定与 ServicePointManager

转载 作者:太空宇宙 更新时间:2023-11-03 13:06:45 25 4
gpt4 key购买 nike

我们正在使用 Xamarin 开发一个移动应用程序,该应用程序最初将在 Android 和 iOS 上运行,并计划在未来移植到 Windows 手机(如果使用它的 3 个人足够大声的话)。

传输数据的性质和此应用程序将允许的操作(SSO 到另一个读/写系统)我们希望采取一切可能的步骤来尽可能保护数据传输层。

自然而然,这让我们走上了 SSL/TLS 证书固定的道路(除了 API 调用本身的其他缓解措施),以保护客户端免于连接到 MITM 代理等。

我们操作 API 端点并完全控制证书,因此我们很乐意将公钥存储在应用程序中以固定到,因为我们将能够更新我们的证书并在足够的时间内使用新的 PIN 进行部署。所有证书都是有效的第 3 方签名证书(非自签名)。

不幸的是,使用 Xamarin 执行 SSL Pinning 似乎并不经常执行,因为我们发现很难找到已实现的示例。

OWASP提供一些.NET sample SSL Pinning code它使用 ServicePointManager.ServerCertificateValidationCallback 提供回调来检查 SSL pin;但没有特别提到它在 Xamarin 下工作。

对该代码的其他 Google 搜索通常会返回使用它来执行与我们想要的完全相反的操作的人 - 他们使用它来减少 SSL 证书检查,而不是增加它!

I can see one answer这表明这种方法适用于 Android 和 iOS - 但我最感兴趣的是在 Xamarin 中使用它的具体经验,特别是 Xamarin.Forms,以固定 SSL/TLS 证书。

最佳答案

我已经使用 ServicePointManager.ServerCertificateValidationCallback 验证了 SSL/TLS Key Pinning 在 Android 上的工作(虽然目前只在模拟器中)

关于security - Xamarin SSL/TLS 固定与 ServicePointManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39219615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com