I remember that the Fiddler ScriptEditor in JScript provided IntelliSense years ago.
Installing Fiddler now to a new machine, having C# selected as script language, IntelliSense seems to have gone.
It's utterly hard to program rules without being able to search and find appropriate properties of the oSession object.
How can I enable IntelliSense for the C# ScriptEditor?
How to get rid of this error?
Everything seems normal until I use CCleaner to clean up something. I let it run, scan and delete automatically and after that, I didn't check again.
One day later, when I access any sites with HTTPS, everything turns into this error and prevent me from access those sites.
Google Chrome says: Your connection is not private, NET::ERR_CERT_INVALID.
What should I do now?
It seems that I have deleted some files that Fiddler needs?
I found some guides in Google.com, which are related to this error to refer, such as:
https://usefulpcguide.com/16666/your-connection-is-not-private/
Not nothing is useful and help me get rid of it.
Hello there,
I know every time you install Fiddler in a different machine and enable it to decrypt HTTPS it generates a new certificate that is different for each machine and you need to install it in client devices so the decryption can happen. I thought I had find a way around this until today it didn't work for me anymore but just want to ask in case something can still be done :-).
I built a cloud server and installed Fiddler and set it up to decrypt HTTPS then configured a bunch of devices to accept the certificate and everything was fine. Once finished my testing since cloud servers cost money and I didn't wanna pay for it while idle I created an image and deleted the server in hopes next time I would have all the configuration and it seemed to work fine. I recreated the server from the image a bunch of times and every time I was able to connect the devices and do my testing no problem... well, until today when I just did the same again and I'm getting the … "!SecureClientPipeDirect failed: System.ComponentModel.Win32Exception The credentials supplied to the package were not recognized for pipe (CN=*.somerandomdomain.com, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com)" .. which basically means if I'm correct I need to generate a new certificate which then I need to install in all the clients :-\ .. I tried just downloading the certificate again from the fiddler proxy URL but it is the same of course and if I do a binary compare using "fc.exe /b" I can confirm they're identical so it seems my only way would be to generate a new one … before I give up to that, is there anything else I could do to avoid having to do it? my main issue is I don't have all the devices on hand and now I'd have to reach to every user and explain one by one how to do this and some of them are not that tech savvy :-(
Cheers,
Carlos.
Hi,
I am using FiddlerCore with PuppeteerSharp browser automation tests in order to get performance metrics (thanks to FiddlerCore) like page loading time, DOM loading time, TTFB, HTTPs handshake time, ns lookup...etc.
I am facing a problem trying to access some website like: https://outlook.office.com which redirects to to Microsoft login portal. I have the impression that I am missing some configuration in my code but I cannot figure out what the problem is. The code I am use is the following:
internal
class
FiddlerProxy : IDisposable
{
public
string
Uri {
get
;
private
set
; }
public
Proxy ProxyEndpoint {
get
;
private
set
; }
public
int
SessionCount {
get
;
private
set
; }
internal
FiddlerProxy(
string
uri)
{
Uri = uri;
ProxyEndpoint =
null
;
SessionCount = 1;
}
public
void
Start()
{
// Register for the FiddlerCore events
FiddlerApplication.AfterSessionComplete += OnAfterSessionComplete;
FiddlerApplication.BeforeRequest += OnBeforeRequest;
FiddlerApplication.OnNotification +=
delegate
(
object
sender, NotificationEventArgs oNEA) { Console.WriteLine(
"** NotifyUser: "
+ oNEA.NotifyString); };
FiddlerApplication.Log.OnLogString +=
delegate
(
object
sender, LogEventArgs oLEA) { Console.WriteLine(
"** LogString: "
+ oLEA.LogString); };
// Create an HTTPs certificate and Start the proxy
if
(!InstallCertificate())
throw
new
InvalidOperationException(
"Creating a certiicate failed. Https traffic cannot be captured."
);
if
(FiddlerApplication.IsStarted())
Stop();
FiddlerApplication.Startup(0, FiddlerCoreStartupFlags.Default & ~FiddlerCoreStartupFlags.RegisterAsSystemProxy);
ProxyEndpoint = FiddlerApplication.CreateProxyEndpoint(FiddlerApplication.oProxy.ListenPort,
true
,
"localhost"
);
}
public
static
bool
InstallCertificate()
{
if
(!CertMaker.rootCertExists())
{
if
(!CertMaker.createRootCert())
return
false
;
if
(!CertMaker.trustRootCert())
return
false
;
}
return
true
;
}
private
void
OnBeforeRequest(Session session)
{
if
(!ShouldProcess(session))
return
;
else
{
// Do something
}
}
private
void
OnAfterSessionComplete(Session session)
{
if
(!ShouldProcess(session))
return
;
Console.WriteLine($
"Session no. {SessionCount++} coming from :{session.fullUrl}:"
);
Console.WriteLine(session.Timers.ToString(
true
));
}
private
bool
ShouldProcess(Session session)
{
if
(session.RequestMethod.Equals(
"CONNECT"
, StringComparison.InvariantCultureIgnoreCase))
return
false
;
if
(session.fullUrl.Contains(Uri))
return
true
;
else
return
false
;
}
public
void
Stop()
{
if
(ProxyEndpoint !=
null
)
{
ProxyEndpoint.Detach();
ProxyEndpoint.Dispose();
}
FiddlerApplication.AfterSessionComplete -= OnAfterSessionComplete;
if
(FiddlerApplication.IsStarted())
{
FiddlerApplication.Shutdown();
}
}
public
void
Dispose()
{
Stop();
}
}
Then I use FiddlerProxy class in Main() method in Program.cs as follows:
static
void
Main(
string
[] args)
{
var uriToMonitor =
"https://outlook.office.com"
;
using
(var fiddlerProxy =
new
FiddlerProxy(uriToMonitor))
{
fiddlerProxy.Start();
LoadPageUsingPuppeteerSharp(uriToMonitor, fiddlerProxy.ProxyEndpoint.ListenPort).Wait();
}
Console.ReadLine();
}
public
static
async Task LoadPageUsingPuppeteerSharp(
string
uri,
int
proxyPort)
{
var launchOptions =
new
LaunchOptions
{
ExecutablePath = @
".\chrome-win\chrome.exe"
,
Headless =
false
,
IgnoreHTTPSErrors =
true
,
Args =
new
[] {
$
"--proxy-server=127.0.0.1:{proxyPort}"
,
"--no-sandbox"
,
"--disable-infobars"
,
"--disable-setuid-sandbox"
,
"--ignore-certificate-errors"
}
};
using
(var browser = await Puppeteer.LaunchAsync(launchOptions))
{
var context = await browser.CreateIncognitoBrowserContextAsync();
using
(var page = await context.NewPageAsync())
{
await page.SetUserAgentAsync(
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3563.0 Safari/537.36"
);
await page.SetViewportAsync(
new
ViewPortOptions { Width = 1500, Height = 800 });
await page.GoToAsync(uri);
}
}
}
Attached are the console output that I get when running my program, and two screenshots of my chrome browser.
One last question, is it possible to configure an HTTP Proxy (some proxy that we have in our organisation) through which FiddlerCore can send requests?
Thank you in advance for your help.
Adel
I'm using the latest Fiddler version and O365 extension, but I'm still unable to get through the authentication process when using Oauth. I've been trying with EWS editor, and both Oauth and basic fail. Outlook fails to connect to an Exchange Online mailbox. Using Chrome and IE can't get to outlook on the web, or google.com for that matter. It seems to be having a problem with SSL, but I'm not clear on that.
EWS editor error using basic:
Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.InternalExecute()
Exception details: Message: The request failed. The underlying connection was closed: An unexpected error occurred on a send.
Type: Microsoft.Exchange.WebServices.Data.ServiceRequestException
Source: Microsoft.Exchange.WebServices
EWS editor error using Oauth:
System.Threading.Tasks.Task`1.get_Result()
Exception details:
Message: One or more errors occurred.
Type: System.AggregateException
Source: mscorlib
Installing Fiddler, downloaded from the "only" Download link for Win. I have a Win7 VM (not native Win), which didn't have any .NET installed. I had 4.5.2 available, so I installed that. Then installed Fiddler, which failed with error on start. Analysing the error, I found out that installer had given me Fiddler v2.6.3.49793. Tried to install .NET v2, but it didn't go in. Tried to install .NET v4.0 but that refused to install as well. I needed to uninstall .NET 4.5.2, and then install .NET 4.0 (a lot of boots and struggle there). Finally with .NET v4.0 I uninstalled Fiddler and re-installed, to get v4 of Fiddler. Then it worked.
Just wanted to share - if somebody else stumbles upon the same problem.
The error Fiddler 2 gave was: "Type: System.ArgumentException, Source: mscorlib...."
Is this how you wanted it to behave like ?
When using O365 extension and trying ws-fed auth to O365 fiddler chrashes, fiddler works alright when disabling extension
---------------------------
Uncaught Exception in Session #387
---------------------------
Fiddler has encountered an unexpected problem. If you believe this is a bug in Fiddler, please copy this message by hitting CTRL+C, and submit a bug report at http://www.telerik.com/forums/fiddler.
Length cannot be less than zero.
Parameter name: length
Type: System.ArgumentOutOfRangeException
Source: mscorlib
at System.String.Substring(Int32 startIndex, Int32 length)
at EXOFiddlerInspector.SessionProcessor.SetAuthentication(Session session)
at EXOFiddlerInspector.Services.ActivationService.AutoTamperResponseAfter(Session _session)
at Fiddler.FiddlerExtensions.(Session ) in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Application\Extensions.cs:line 866
at Fiddler.Session.() in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Core\Session.cs:line 4073
at Fiddler.ServerChatter.() in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Core\ServerChatter.cs:line 1520
at Fiddler.ServerChatter.() in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Core\ServerChatter.cs:line 1474
at Fiddler.Session.() in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Core\Session.cs:line 3751
at Fiddler.Session.(Object ) in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Common\Core\Session.cs:line 3526
Fiddler v5.0.20194.41348 (x64 AMD64) [.NET 4.0.30319.42000 on Microsoft Windows NT 10.0.18363.0]
---------------------------
OK
---------------------------
16:48:19:9974 fiddler.network.https> HTTPS handshake to <> failed. System.IO.IOException Received an unexpected EOF or 0 bytes from the transport stream.