I know that Fiddler uses local DNS resolver as it didn't work on some test sites that only worked through DoH geobypassing proxy. Are there any trick/method to make Fiddler respect browsers DoH setting? If not, would you guys please consider adding it since DoH/DoT seems to be very useful/popular these days.
Here's some use case scenarios
You can also add following to any of the scenarios above if we think alternative solutions like using Windows 10/11, configuring DoH on the router, using VPN, etc.
BTW, I know Microsoft natively added DoH in Windows 10 more than a year ago, DoT to Windows 11 insider build a few months ago. I don't know if Fiddler works on them (works as in properly using DoH/DoT) as i don't use those OSes. I am curious to know about it though.
Anyways,
Here's quick guide to confirm that Fiddler/Firefox bypasses DNS-over-HTTPS just in case anyone wants to test.
Open Firefox (Use this guide for other browsers)
and select .
Open www.facebook.com and it should be blocked.
Now open Fiddler and try to open www.facebook.com again on the browser. Facebook will work.

i used these settings:
public static void StartupFiddlerCore()
{
// Build startup settings:
var settings = new FiddlerCoreStartupSettingsBuilder()
//.CaptureLocalhostTraffic()
.MonitorAllConnections()
.CaptureFTP()
.DecryptSSL()
.RegisterAsSystemProxy()
.OptimizeThreadPool()
.Build();
FiddlerApplication.Startup(settings);
//FiddlerApplication.oProxy.Attach();
}
when i use WinSCP and use the fiddlerCore's ftp proxy to connect ftp server, the fiddlerCore's ftp proxy did net capture the ftp traffic.
the picture is winscp's proxy setting.

I am using fiddlerCore to capture ftp traffic, and i used the "CaptureFTP()" setting and "RegisterAsSystemProxy()" setting.
But when i use Winscp application with fiddlerCore's proxy to connect ftp server,it did not work,and connect failed.
how dose fiddlerCore's ftp proxy work? how to use it?
Hi,
I tried
static function OnBeforeRequest(oSession: Session) {
var arr: Byte[] = oSession.requestBodyBytes;
var istr: String = '';
istr = Convert.ToBase64String(arr);
// ... do something with request body ...
oSession.RequestHeaders['Fiddler-Encoding'] = 'base64';
oSession.utilSetRequestBody(istr);
}base on this article. Unfortunately this does not work. Any help appreciated.
I'm using Fiddler Classic and android Emulator - MEmu. I have installed some android application there.
Of course I have installed fiddler certificates on my host and on android also i moved them to the system folder, I set up fiddler proxy in the Wi-Fi settings and everything works fine, I can receive all https traffic but somehow in this application when I'm trying to log-in the application logs in but in the fiddler I don't have any activity, it is just empty at this moment. Same thing when I enter wrong password the application says me "Wrong password" which means it sends request to the server somehow but fiddler doesn't have any requests when I press the button "Log in".
How is this possible? Can application bypass proxy that set up in the wi-fi connection settings in the android somehow? Or how is it possible even it theory?
I also tried android firewall with block all connections option on, when I Log in in the application with this firewall that blocks everything - I have error in the application and in the blocked list I can see requests like IP address and some urls, so why I can't see this requests in the fiddler?
Hi,
I use Fiddler Classic as a proxy between client and server. I tried to replace the entire response body for a request.
static function OnBeforeResponse(oSession: Session) {
...
var body = '<?xml version="1.0" encoding="UTF-8"?><Test/>';
oSession.ResponseBody = System.Text.Encoding.UTF8.GetBytes(body);
oSession.oResponse['Content-Length'] = body.Length;
oSession.utilSetResponseBody(body);
...
}
Within a .net application when the CheckCertificateRevocationList is set SSL connections can no longer be made while fiddler is running.
An example:
ServicePointManager.CheckCertificateRevocationList = true;
WebRequest request = WebRequest.Create("https://www.google.com");
var response = await request.GetResponseAsync();
This fails with
The remote certificate is invalid according to the validation procedure.
If I register a validation callback (ServicePointManager.ServerCertificateValidationCallback) too see what is going on I see
SSLPolicyErrors = RemoteCertificateChainErrors
When looking at the X509Chain I see "The revocation function was unable to check revocation for the certificate.\r\n"
Some other threads on stack overflow indicated this may be due to no revocation list being attached to the fiddler root certificates.
So I was wondering if anyone was able to get fiddler to work with the CheckCertificateRevocationList= true. I know I can disable it but that would not be good for security. I also could in the handler allow fiddler certificates, but I was hoping there was a way to generate the fiddler certificates in a way that worked with that setting.


Pleas take a look at video above here.
I compare between fiddler classic and echo mirage and i want to know why fiddler can't capture it? and how to fix this. (fiddler classic can capture http(s) normally)

I can capture traffic, decrypt HTTPs from web browsers and other applications with Fiddler just fine.
But with this app, Fiddler doesn't see anything. Tried options like adding protocols, checking ignore cert errors, even tried tried turning off HTTPS decryption. No difference, just nothing.
With Wireshark. I can see the SSL/TCP traffic.
Here's the app link (You can register for free with junk email to login via app)
Please help