Log info:
14:12:13:8724 !Fiddler.CertMaker> Unable to auto-trust root: System.Security.Cryptography.CryptographicException: 访问控制列表(ACL)结构无效。
在 System.Security.Cryptography.X509Certificates.X509Store.Add(X509Certificate2 certificate)
在 ..TrustRootCertificate() 位置 C:\JenkinsHome\jobs\FiddlerReleaseBuild\workspace\Fiddler2\Common\Core\DefaultCertProvider.cs:行号 972
Seek help sincerely.
Hi,
I have some redirection code in my test automation that does not work when FiddlerCore 2.3.8.5 is referenced.
When I update to 4.6.2 (through Install-Package into my .csproj) the redirection starts to work.
Questions
1) Did something change between 2.3.8.5 to 4.6.2 to affect WS traffic to localhost?
2) Is there a better way to code this and make it work with 2.3.8.5?
I have a question in stackoverflow, fyi..
https://stackoverflow.com/questions/63073681/how-to-redirect-https-tunnel-traffic-to-https-localhost8444-with-fiddlercore
Basically, my need is:
Redirect https tunnel traffic to https://localhost:8444 from my prod endpoint.The CONNECT has an upgrade to WebSocket and the HTTPS traffic is through WS messages.
My automation code:
/// <summary>
/// Thread function to start fiddlercore and initialize event handlers
/// </summary>
private static void FiddlerMocking()
{
try
{
// Set up FiddlerCore and its handlers
// Hook up our callbacks
Fiddler.FiddlerApplication.BeforeRequest += delegate (Session session)
{
Console.WriteLine("BEGIN-" + session.fullUrl);
if (session.fullUrl.Contains("XXX-int.YYY.com"))
{
if (session.HTTPMethodIs("CONNECT"))
{
log.Comment("CONNECT---" + session.host.ToString());
session.oFlags["x-replywithtunnel"] = "GenerateTunnel";
return;
}
else if (session.HTTPMethodIs("GET"))
{
log.Comment("GETBEFORE---" + session.host.ToString());
session.host = "127.0.0.1:8444";
log.Comment("GETAFTER---" + session.host.ToString());
}
}
else
{
Console.WriteLine("IGNORING-" + session.fullUrl);
// following will not work in 2.3.8.5 but will work in 4.6.2
//session.Ignore();
}
};
Fiddler.FiddlerApplication.OnValidateServerCertificate +=
new System.EventHandler<ValidateServerCertificateEventArgs>(CheckCert);
Fiddler.CONFIG.IgnoreServerCertErrors = true;
// This is to bypass traffic related to iframe
Fiddler.CONFIG.sHostsThatBypassFiddler = "https://*.resources.office.net";
var rand = new Random();
Fiddler.FiddlerApplication.Startup(rand.Next(9100, 9900),
FiddlerCoreStartupFlags.DecryptSSL |
FiddlerCoreStartupFlags.MonitorAllConnections |
FiddlerCoreStartupFlags.RegisterAsSystemProxy |
FiddlerCoreStartupFlags.CaptureLocalhostTraffic);
// Enable HTTPS capture and add session handlers
FiddlerTaskLibrary.EnableHttpsCapture();
}
catch
{
throw;
}
}
Please help.
Thanks,
Amrendra
I'm using Android Studio's AVD to run Chrome for Android.
I've installed the fiddler CA by going to http://<pc-ip>:<fiddler-port>, downloading the FiddlerRoot certificate, and Trusting that certificate through settings on the virtual device.
I've set up the device to proxy through Fiddler.
I can successfully load the Fiddler Echo Service, and http://example.com/. Presumably all http-only traffic works, but it's hard to find examples online to test.
An example request to Google is
CONNECT 172.217.4.67:443 HTTP/1.1
Host: 172.217.4.67:443
The response is
HTTP/1.1 200 Connection Established
FiddlerGateway: Direct
StartTime: 15:53:05.999
No other traffic flows on the session, and it eventually times out with the 🚫 icon.
The Android device is continually polling to establish these connections. When I disconnect the device from the proxy, Fiddler annotates the request:
CONNECT 172.217.9.35:443 HTTP/1.1
Host: 172.217.9.35:443
After the client received notice of the established CONNECT, it failed to send any data.
Fiddler prints a log message for each of these requests
[timestamp] Fiddler.Network.ProtocolViolation - [#XXX] HTTP/1.1 Request was missing the required HOST header.
I don't think this is an issue. I understand it to mean that Chrome for Android doesn't supply a Host header, and as the pastes above show, Fiddler automatically inserts an appropriate one.
The symptom in Chrome for Android, then, is that when I try to access an https site, the browser hangs until it gives ERR_CONNECTION_REFUSED
I'm at a loss here.
Hi!
We have this error when trying to write a temporary .har with Fiddler. We write a temporary file with Java using the ExeAction.exe with the name "out.har", rename it and then upload via FTP. However, sometimes we have a problem with the file being already used.
The error detail is attached.
We write the out.har using Java and Fiddler using the ExecAction.exe.
If you need anything else just say it, we've been struggling with this error for a while.
Thanks!
Hi,
I installed Fiddler on a windows pc, and I started it, then I want to use a web browser to view fiddler session, does it support to view or control fiddler remotely?
Hello! I have been using fiddler and i noticed that after a few minutes or maybe hours my wifi modem just crashes or loses connection!
I am on a laptop using wifi!
And every time it crashes and all of my devices lose connection and i have to wait 5 or 10 minutes for it to get back on running!
Please help!