When attempting to save a fiddler trace session file using FiddlerCap the 'Save Captures' dialog is unable to open and throws the following exception:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Runtime.InteropServices.COMException (0x80040111): Creating an instance of the COM component with CLSID {C0B4E2F3-BA21-4773-8DBA-335EC946EB8B} from the IClassFactory failed due to the following error: 80040111 ClassFactory cannot supply requested class (Exception from HRESULT: 0x80040111 (CLASS_E_CLASSNOTAVAILABLE)).
at System.Windows.Forms.SaveFileDialog.CreateVistaDialog()
at System.Windows.Forms.FileDialog.RunDialogVista(IntPtr hWndOwner)
at System.Windows.Forms.CommonDialog.ShowDialog(IWin32Window owner)
at FiddlerCap2.frmMain.(Object , EventArgs ) in C:\JenkinsHome\jobs\FiddlerCapReleaseBuild\workspace\FiddlerCap\FiddlerCap\MainForm.cs:line 214
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3110.0 built by: NET472REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
FiddlerCap
Assembly Version: 4.6.20182.28033
Win32 Version: 4.6.20182.28033
CodeBase: file:///C:/Windows/SysWOW64/config/systemprofile/Desktop/FiddlerCap/FiddlerCap.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3056.0 built by: NET472REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3056.0 built by: NET472REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3056.0 built by: NET472REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3056.0 built by: NET472REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3110.0 built by: NET472REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.7.3056.0 built by: NET472REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
I have Fiddler v5 set up on Windows 10. I have followed the instructions for capturing iOS traffic detailed here, http://docs.telerik.com/fiddler/configure-fiddler/tasks/ConfigureForiOS
When Windows is not on a VPN, I can capture the traffic from my iPhone 8 with iOS 12.1 via Manual proxy setting and port 8888. However, when I connect to a VPN (Pulse Secure Network Connect 8.3) and then start up Fiddler, running as Administrator, I can then no longer load web pages in Safari on my iPhone and Fiddler doesn't capture any iOS traffic.
On the Tools > Options > Connections settings, I do have "Monitor all connections" checked.
What could prevent the proxy from working while on the VPN?
Thanks,
Nate
From your website, I downloaded mono framework and fiddler-mac in SnowLeopard.
After installing mono and doing /Library/Frameworks/Mono.framework/Versions/4.6.2/bin/mozroots --import --sync, I extracted the zip file in the document folder. In terminal, cd to the folder and type mono Fiddler.exe, then following error occured:
exception inside UnhandledException handler: The type initializer for 'Fiddler.CONFIG' threw an exception.
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'System.Windows.Forms.WindowsFormsSynchronizationContext' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.Windows.Forms.ThemeEngine' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.Windows.Forms.ThemeWin32Classic' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.Drawing.KnownColors' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.Drawing.GDIPlus' threw an exception. ---> System.DllNotFoundException: /Library/Frameworks/Mono.framework/Versions/4.6.2/lib/libgdiplus.dylib
at (wrapper managed-to-native) System.Drawing.GDIPlus:GdiplusStartup (ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&)
at System.Drawing.GDIPlus..cctor () [0x000cc] in <1917aa1c39d94b1a91807b8cd9f03350>:0
--- End of inner exception stack trace ---
at System.Drawing.KnownColors..cctor () [0x0001a] in <1917aa1c39d94b1a91807b8cd9f03350>:0
--- End of inner exception stack trace ---
at System.Drawing.Color.get_AliceBlue () [0x00000] in <1917aa1c39d94b1a91807b8cd9f03350>:0
at Fiddler.CONFIG..cctor () [0x00206] in <f7619d266c2c40b09be7fbc7f689415c>:0
--- End of inner exception stack trace ---
at System.Windows.Forms.ThemeVisualStyles..ctor () [0x00000] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at System.Windows.Forms.ThemeEngine..cctor () [0x0002d] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
--- End of inner exception stack trace ---
at System.Windows.Forms.SystemInformation.get_MenuAccessKeysUnderlined () [0x00000] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at System.Windows.Forms.Control..ctor () [0x000ea] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:.ctor ()
at System.Windows.Forms.WindowsFormsSynchronizationContext..cctor () [0x00000] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
--- End of inner exception stack trace ---
at System.Windows.Forms.Control..ctor () [0x00014] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at System.Windows.Forms.ScrollableControl..ctor () [0x00000] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at System.Windows.Forms.ContainerControl..ctor () [0x0000e] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at System.Windows.Forms.Form..ctor () [0x00012] in <d5b72d15d4f7424c8a1538e3f19ec2e3>:0
at ..SetStyle (System.Windows.Forms.ControlStyles flag, System.Boolean value) [0x00000] in <f7619d266c2c40b09be7fbc7f689415c>:0
at (wrapper remoting-invoke-with-check) .:.ctor ()
at Fiddler.frmViewer. (System.String[] ) [0x0004a] in <f7619d266c2c40b09be7fbc7f689415c>:0
at Fiddler.frmViewer. (System.String[] ) [0x00016] in <f7619d266c2c40b09be7fbc7f689415c>:0
Hello,
Just wanted to start off by stating that I know there is another discussion about this called "Silent or unattended install options?" but I am unable to reply to that thread as I keep encountering an error when I try.
From this thread though, I found you can do a silent install with /S switch.
I also found from Simeon's post that you can install to a specific directory with /D=C:\Program Files\Fiddler.
My issue is that when using these switches together, I am not getting the correct result. I am deploying Fiddler (v5.0.20181.14850) via an APPLICATION. I also tried to deploy as a package but was also having issues.
FiddlerSetup.exe /S /D=C:\Program Files\Fiddler - looks like the silent install is working but then the install will fail with error 0x87D00324(-2016410844). There is a Fiddler folder within program files but the .exe was not installed.
FiddlerSetup.exe /D=C:\Program Files\Fiddler /S -Incur pop up window to walk through the instillation. The default directory on the install is correct, but it is not silent.
When trying to install via package, I am trying the following :
FiddlerSetup.exe /S /D=C:\Program Files\Fiddler
Issue is that it looks like it installs successfully, I can find it within C:\Program Files\Fiddler but the doesn't actually install Fiddler, seems like it just places the install within that directory.
I'm having an issue with an WinHTTP application I'm intercepting and modifying data for. I'm setting the WinHTTP proxy as a loopback to capture and modify the response, however the WinHTTP application checks for a loopback after the response and denies authorization if one is found.
I've tried setting the loopback, decoding the response, and right before sending my modified response, resetting the WinHTTP settings to default. The problem i'm facing is that this WinHTTP application actually polls the server twice in a row, so if I reset the proxy once, i need to set it again and then reset it again before modifying the response a 2nd time.
Is there a way I can delay the 2nd request so that I have enough time to reset and set the first one? I've tried using Thread.Sleep but that doesn't work. Thanks.
void Start()
{
CaptureConfiguration.CaptureDomain = "https://toirplusvip.com/";
SetWinHTTPProxy();
FiddlerApplication.AfterSessionComplete += FiddlerApplication_AfterSessionComplete;
FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest;
FiddlerApplication.BeforeResponse += FiddlerApplication_BeforeResponse;
FiddlerApplication.Startup(8877, false, true, true);
}
public void SetWinHTTPProxy()
{
var proc1 = new ProcessStartInfo();
string anyCommand = "netsh winhttp set proxy 127.0.0.1:8877 \"<-loopback>\"";
proc1.UseShellExecute = true;
proc1.WorkingDirectory = @"C:\Windows\System32";
proc1.FileName = @"C:\Windows\System32\cmd.exe";
proc1.Verb = "runas";
proc1.Arguments = "/c " + anyCommand;
proc1.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(proc1);
}
public void ResetWinHTTPProxy()
{
var proc1 = new ProcessStartInfo();
string anyCommand = "netsh winhttp reset proxy";
proc1.UseShellExecute = true;
proc1.WorkingDirectory = @"C:\Windows\System32";
proc1.FileName = @"C:\Windows\System32\cmd.exe";
proc1.Verb = "runas";
proc1.Arguments = "/c " + anyCommand;
proc1.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(proc1);
}
private void FiddlerApplication_BeforeResponse(Session oSession)
{
if (oSession.fullUrl.ToLower().Contains("toirplusvip.com/checklogin_vip_aimode2.php"))
{
Console.WriteLine(oSession.fullUrl.ToLower());
Console.WriteLine("beeuty");
oSession.utilDecodeResponse();
var oBody = System.Text.Encoding.UTF8.GetString(oSession.responseBodyBytes);
var epoch = (int)DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;
var sessionID = "8763c665bc13e4ba56ee578c161dc1f4";
String input = "rnd='&ret=" + sessionID + "&token=" + epoch + "&code=0";
Console.WriteLine(input);
Cryptography c = new Cryptography();
String nBody = c.EncryptString(input, key, iv);
ResetWinHTTPProxy(); // needs to be reset in between
oSession.utilSetResponseBody(nBody);
return;
}
}
My specific role requires me to reinstall an operating system on my Window's Desktop once every other week. I am trying to write a batch/PowerShell script that does all my initial set up automatically. One thing that I am trying to automate is configuring Fiddler. Is their any way I can enable HTTPS decyption and allow all App Containers through a script?
I tried copying the files from %UserProfile%\Documents\Fiddler2 that remain after uninstalling with the option to keep your desired settings and then robocopy'ing them after I re-install Fiddler with no luck. Thank you in advance.