Android App Retrofit Web 服务请求拦截和修改使用 Burp Suite 攻击修复
Android App Retrofit Web Service Request Intercept and Modify Using Burp Suit Attack Fix
在我的 Android 应用程序中,我们使用改装网络服务与服务器通信。一些黑客拦截请求并使用一些工具 Burp Suit 对其进行修改。
请帮我告诉我如何停止拦截攻击。
Burp Suit 的作用 - 它基本上执行中间人攻击。它生成一个 HTTPS 证书并伪装成一个浏览器。
问题是,如果您的服务器和客户端受到保护免受这种 MITM 攻击 - 这些工具将无法工作。至少在移动应用程序中 - 浏览器会显示安全错误,但仍会传递数据。
您可以使用的解决方案是将您的特定 SSL 证书包含到应用程序中,并使该应用程序将其视为唯一受信任的证书。它将或多或少是安全的——取决于实施。它也是免费的,因为您可以附加自己创建的自签名证书,因为您可以控制验证。当然,后端也应该使用相同的 SSL 证书。使用此技术时,Burp Suit 生成的证书将不起作用,因为该应用程序只知道一个受信任的证书。
该技术本身称为 SSL pinning
或 certificate pinning
,您可以在线找到大量有关如何在客户端和服务器上实施它的信息。
我会给你几个链接:
Here 是一篇关于如何使用 retrofit(okhttp) 实现的好文章。
Here是OkHttp的官方文档CertificatePinner
Here 是改造 SSL pinning 的小实现。
Here又是一篇文章。
这还不够,但问题很复杂,一个 Whosebug 答案是不够的。但我认为这是一个很好的开始来进行实际的实施。
还有一个小建议 - 使用加密来存储您的 SSL 证书密钥,而不是纯字符串存储 - 它仍然无法防止内存欺骗,但黑客会更难使用它。
在我的 Android 应用程序中,我们使用改装网络服务与服务器通信。一些黑客拦截请求并使用一些工具 Burp Suit 对其进行修改。
请帮我告诉我如何停止拦截攻击。
Burp Suit 的作用 - 它基本上执行中间人攻击。它生成一个 HTTPS 证书并伪装成一个浏览器。
问题是,如果您的服务器和客户端受到保护免受这种 MITM 攻击 - 这些工具将无法工作。至少在移动应用程序中 - 浏览器会显示安全错误,但仍会传递数据。
您可以使用的解决方案是将您的特定 SSL 证书包含到应用程序中,并使该应用程序将其视为唯一受信任的证书。它将或多或少是安全的——取决于实施。它也是免费的,因为您可以附加自己创建的自签名证书,因为您可以控制验证。当然,后端也应该使用相同的 SSL 证书。使用此技术时,Burp Suit 生成的证书将不起作用,因为该应用程序只知道一个受信任的证书。
该技术本身称为 SSL pinning
或 certificate pinning
,您可以在线找到大量有关如何在客户端和服务器上实施它的信息。
我会给你几个链接:
Here 是一篇关于如何使用 retrofit(okhttp) 实现的好文章。
Here是OkHttp的官方文档CertificatePinner
Here 是改造 SSL pinning 的小实现。
Here又是一篇文章。
这还不够,但问题很复杂,一个 Whosebug 答案是不够的。但我认为这是一个很好的开始来进行实际的实施。
还有一个小建议 - 使用加密来存储您的 SSL 证书密钥,而不是纯字符串存储 - 它仍然无法防止内存欺骗,但黑客会更难使用它。