我们使用 Flutter 进行应用程序开发。我们的安全测试人员说我们需要在 Flutter 代码中禁用 SSL Pinning,以便他们可以运行一些测试。我们做不到。我们使用 Dio 包来进行 HTTP 请求。我们如何在 Flutter 上禁用 SSL Pinning?
我遇到了类似的问题。解决方案非常简单。 http 数据包会自动阻止网络侦听。
要解决此问题并重新提交进行渗透测试,请对main.dart file:
class MyHttpOverrides extends HttpOverrides {
@override
HttpClient createHttpClient(SecurityContext context) {
if (Platform.isAndroid) {
return super.createHttpClient(context)..badCertificateCallback = (X509Certificate cert, String host, int port) => true;
}
return super.createHttpClient(context)
..findProxy = (uri) {
return "PROXY localhost:8080";
}
..badCertificateCallback = (X509Certificate cert, String host, int port) => true;
}
}
并添加这一行main() method:
HttpOverrides.global = MyHttpOverrides();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)