Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何测试使用HTTPS的客户端应用程序对MITMA的保护?_Ios_Https_Security - Fatal编程技术网

Ios 如何测试使用HTTPS的客户端应用程序对MITMA的保护?

Ios 如何测试使用HTTPS的客户端应用程序对MITMA的保护?,ios,https,security,Ios,Https,Security,我有一个iOS客户端应用程序,它使用HTTPS连接到服务器。 我在客户机中添加了验证服务器标识的代码 测试此功能的测试人员如何测试它现在是否安全,例如,他们如何创建MITM情况并检查客户端是否拒绝连接等 我试过用谷歌搜索如何做到这一点,但运气不太好 可以使用诸如Charles和proxies等工具来完成吗?或者正在与无线路由器混在一起,并拥有必要的详细知识吗?对于您的解决方案来说,这可能过于简化,但概念可能会有所帮助 web浏览器从嵌入的证书中提取主机名,并对我们尝试连接的主机名进行比较。如果验

我有一个iOS客户端应用程序,它使用HTTPS连接到服务器。 我在客户机中添加了验证服务器标识的代码

测试此功能的测试人员如何测试它现在是否安全,例如,他们如何创建MITM情况并检查客户端是否拒绝连接等

我试过用谷歌搜索如何做到这一点,但运气不太好


可以使用诸如Charles和proxies等工具来完成吗?或者正在与无线路由器混在一起,并拥有必要的详细知识吗?

对于您的解决方案来说,这可能过于简化,但概念可能会有所帮助

web浏览器从嵌入的证书中提取主机名,并对我们尝试连接的主机名进行比较。如果验证失败,我们通常会看到安全警告。例如:我们可以通过键入
https://www.facebook.com
或通过键入
https://173.252.100.16/
。当我们选择第二个选项时,会收到安全警告

您的程序必须使用SSL客户端套接字来连接HTTPS服务器。套接字必须能够从嵌入的证书中提取主机名。一旦你得到了它,将它与你的程序试图连接的有效主机名进行比较。如果匹配,则让请求继续,如果不匹配,则放弃该会话

要重新创建MITM,您的web服务器可以使用自签名证书,该证书可以颁发给您想要的任何主机名,但服务器的IP可以是127.0.0.1(例如)。由于主机名和实际IP之间不匹配,我们可能可以模拟MITM情况

我假设在这种情况下数字证书不能伪造