I installed my Fiddler proxy, as in here .
the code:
public class ProxyConfig { private readonly string _secureEndpointHostname = IPAddress.Any.ToString(); private readonly int _secureEndpointPort = 4555; private readonly int _port = 18882; private static readonly ICollection<Session> AllSessions = new List<Session>(); private static Fiddler.Proxy _secureEndpoint; private static readonly LoggerCnx Logger = new LoggerCnx(); private Action<string> onRequest; public ProxyConfig() { } public ProxyConfig(Action<string> onRequest) { this.onRequest = onRequest; } public void SetupProxyListener() { FiddlerApplication.SetAppDisplayName("FiddlerCoreProxyApp");
Its goal is to capture and analyze traffic from Windows, Mac OS X, Android and iOS browsers (Chrome, Firefox and Safari mainly on desktop and mobile devices).
So far, it seems he is working on:
- Windows Browsers: Chrome, Firefox. Does not work on IE and Edge.
- Android: Chrome
- Mac OS: Chrome, Firefox. Safari does not work.
- iOS: none
In my log files, I see the following errors registered by Fiddler in browsers that do not work (for all devices). HTTPS request example:
2018-02-14 17: 25: 50.3860 | INFO | ** LogString: SecureClientPipeDirect failed: Authentication System.IO.IOException failed because the remote side closed the transport stream. for pipe (CN = *. optimizely.com, O = DO_NOT_TRUST_BC, OU = Created http://www.fiddler2.com )
From what I read in the last couple of days, trying to find a solution for this, the reason may be certificates that are not trusted by the device.
Tests run on BrowserStack using the function they provide, called BrowserStack Local. Details here and here .
Now my questions can be divided between Desktop and Mobile:
- Why can Chrome and Firefox make HTTPS requests until IE, Edge, and Safari can do this?
- In particular, for iOS, there is the Fiddler documentation for iOS here that outlines the steps required to configure the device. However, as I already mentioned, I do not use my own iOS devices, and physical devices do not use BrowserStack. Is there a way to programmatically trust a certificate on an iOS device (iOS 9.x, iOS 10.x, iOS 11.x)?
Are there any workarounds that I could use?
EDIT: FiddlerCore and BrowserStack False Logs here.
c # ios ssl fiddler fiddlercore
Cosmin
source share