Telerik Forums
Fiddler Forum
2 answers
327 views

https://docs.telerik.com/fiddler/knowledge-base/fiddlerscript/modifyrequestorresponse?_ga=2.226810973.1912327690.1619085606-390831375.1615941114

 

I reviewed the content on this link. I added the nuget library. Why can't I use these codes? When using it with C #, I get an error as I mentioned in the appendix. "'oSession' does not exist in the current context" What is the cause of this error? I cannot use any code related to Fiddler. What causes the oSession error? I want to work on FiddlerCore, but I couldn't find a solution for this error.

Rosen Vladimirov
Telerik team
 answered on 29 Apr 2021
6 answers
882 views

I tried to redirect all traffic thru Fiddler by using redsocks and iptables. Plaintext HTTP seems to work fine, however HTTPS doesn't seem to work properly.

Initially I didn't want to use redsocks at all - however it seemed that Fiddler cannot work in the way similar to sniproxy: using iptables -j DNAT alone doesn't work at all.

Then, although redsocks supports http CONNECT proxy mode, Fiddler no longer shows domain names in intercepted CONNECT entries - IP addresses are shown instead. Fiddler also throws out certificate errors, even if I check the "ignore certificate errors" checkbox, the intercepted application (which already trusts FiddlerRoot certificate) still refuses to connect. I think this should be related to SNI.

I think if Fiddler could work in the way similar to sniproxy, this problem would no longer exist, probably.

Rosen Vladimirov
Telerik team
 answered on 26 Apr 2021
1 answer
12.0K+ views

Hello,

Is it possible to capture localhost (client and server) websockets communication?In my case, in the client side I am using javascript code to connect to the websocket server, that it is started using java language.

In fiddler I do not see anything...

 

Regards,

Ed

Rosen Vladimirov
Telerik team
 answered on 23 Apr 2021
6 answers
1.0K+ views
Hello,

Is there any way to decompress post data in Fiddler, sent from application? Post request to server contain headers like this:
Content-type: application/x-compressed-json
Content-length: 3xx

Sent JSON data is unreadable. Any ideas are welcome! 
Arthur
Top achievements
Rank 1
 answered on 21 Apr 2021
1 answer
183 views

Hi everyone. I'm using Fiddler Everywhere on mac to intercept calls from the smartphone app to the vaccum robot, so i can use those commands to integrate the robot into my home automation system (Home Assistant).
so I set up Fiddler Everywhere, set up the proxy in the ios wifi and installed the certificates, and correctly intercepted the commands sent.
however, there are some "parameters" that i can't intercept, let me explain with one of the cases as an example: the robot obviously drains the battery when it's working. when it finishes cleaning, it goes back to the charging base. keeping the mobile phone active during the robot charging process, I see that for every percentage point of charge acquired, a post call is sent, of which I see url, headers and payload, but there's absolutely no trace of that percentage value (or any other info related to the battery). however, obviously on the smartphone I see that variation, so somehow the information has to go through.
so the question is: what can be the case that I can't catch THAT particular detail? what tests can i perform?
I hope I've explained it well enough, if necessary I can provide screenshots (app screen and details of the intercepted traffic).

Thanks

Rosen Vladimirov
Telerik team
 answered on 21 Apr 2021
1 answer
171 views

hi 

telerik ... please help me 

what is it . fiddler cant capture this traffic ( from this software ). HTTPS / TLS  why ...  ??

what is solution  ??

Rosen Vladimirov
Telerik team
 answered on 21 Apr 2021
5 answers
1.7K+ views

I'm trying to capture HTTP requests from .Net code running within a website on my local IIS.  The calls are being made by proxy classes generated from a WSDL via a Connected Services reference.  The recipient of the calls is claiming that the requests contain invalid payloads and I want to see the raw outgoing request from my end.

The service my code is calling requires TLS 1.2 and a client certificate.  The code runs fine at runtime as long as I don't have Fiddler in the picture (other than the payload supposedly being incorrect).

I have configured the .Net web app to run through Fiddler as follows:

<defaultProxy enabled="true">
  <proxy proxyaddress="http://127.0.0.1:8888" bypassonlocal="false"  />
</defaultProxy>

 

In Fiddler I can see the CONNECT commands are failing.  I have the Fiddler HTTPS Protocols configured as "<client>;ssl3;tls1.0;tls1.1;tls1.2".  I have exported the client certificate from the certificate store as a .cer and have added the following code to the end of the OnBeforeRequest() method (hostname and cert name changed for illustrative purposes):

if (oSession.HTTPMethodIs("CONNECT"))
{     
    if (oSession.HostnameIs("service.hostname"))
    {
        oSession["https-Client-Certificate"] = "C:\\certs\\Fiddler\\serviceClientCert.cer";
    }     
}

 

The CONNECT request is as follows:

CONNECT service.hostname:443 HTTP/1.1
Host: service.hostname
 
A SSLv3-compatible ClientHello handshake was found. Fiddler extracted the parameters below.
 
Version: 3.3 (TLS/1.2)
Random: 60 6F C6 38 2E BC 87 BE 57 7C 55 C9 A7 B6 31 42 00 EE 66 35 37 A0 CD 4E 08 42 7D 45 4F 89 A4 CB
"Time": 3/8/2000 8:18:56 AM
SessionID: empty
Extensions:
    server_name service.hostname
    supported_groups    x25519 [0x1d], secp256r1 [0x17], secp384r1 [0x18]
    ec_point_formats    uncompressed [0x0]
    signature_algs  rsa_pss_rsae_sha256, rsa_pss_rsae_sha384, rsa_pss_rsae_sha512, rsa_pkcs1_sha256, rsa_pkcs1_sha384, rsa_pkcs1_sha1, ecdsa_secp256r1_sha256, ecdsa_secp384r1_sha384, ecdsa_sha1, dsa_sha1, rsa_pkcs1_sha512, ecdsa_secp521r1_sha512
    SessionTicket   empty
    extended_master_secret  empty
    renegotiation_info  00
Ciphers:
    [C02C]  TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
    [C02B]  TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
    [C030]  TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    [C02F]  TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    [009F]  TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
    [009E]  TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
    [C024]  TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
    [C023]  TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
    [C028]  TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
    [C027]  TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
    [C00A]  TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
    [C009]  TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
    [C014]  TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
    [C013]  TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
    [009D]  TLS_RSA_WITH_AES_256_GCM_SHA384
    [009C]  TLS_RSA_WITH_AES_128_GCM_SHA256
    [003D]  TLS_RSA_WITH_AES_256_CBC_SHA256
    [003C]  TLS_RSA_WITH_AES_128_CBC_SHA256
    [0035]  TLS_RSA_WITH_AES_256_CBC_SHA
    [002F]  TLS_RSA_WITH_AES_128_CBC_SHA
    [000A]  SSL_RSA_WITH_3DES_EDE_SHA
 
Compression:
    [00]    NO_COMPRESSION

 

The CONNECT response is as follows:

HTTP/1.1 200 Connection Established
FiddlerGateway: Direct
StartTime: 20:12:56.601
Connection: close
 
fiddler.network.https> HTTPS handshake to service.hostname (for #5) failed. System.ComponentModel.Win32Exception The credentials supplied to the package were not recognized

 

I'm not sure why I'm getting the error or what I can do to rectify the problem.

 

Nick Iliev
Telerik team
 answered on 13 Apr 2021
1 answer
686 views

Hello im trying to change the root CA that fiddler uses, i generated my own using openssl-

openssl genrsa -out rootCA.key 2048

and then

openssl req -x509 -new -nodes -key rootCA.key -sha1 -days 2048 -out rootCA.crt

 

then i went to about:config- and changed the fiddler.certmaker.bc.cert to the data inside the newly generated

crt file, and same with the fiddler.certmaker.bc.key, however whenever i load fiddler for some reason it writes the original certificate back to

fiddler.certmaker.bc.cert- i even tried replacing it in the windows registry at Computer\HKEY_CURRENT_USER\Software\Microsoft\Fiddler2\Prefs\.default but again it just wrote the original certificate back into it.

 

Nick Iliev
Telerik team
 answered on 06 Apr 2021
2 answers
258 views
every time i try to open up fiddler it says this

---------------------------
Awww, Fiddlesticks!
---------------------------
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.

Could not load file or assembly 'System.ComponentModel.Composition, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The system cannot find the file specified.

Type: System.IO.FileNotFoundException
Source: Fiddler
   at Fiddler.Proxy.()

   at Fiddler.Proxy..ctor(Boolean isPrimary, ProxySettings upstreamProxySettings) in C:\Jenkins\Fiddler_Windows\workspace\FiddlerCore\FiddlerCore.Shared\Common\Core\Proxy.cs:line 210

   at Fiddler.frmViewer.‹•(String[] ˆ•) in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Fiddler.Shared\Viewer.cs:line 3339

   at Fiddler.frmViewer.‡•(String[] ˆ•) in C:\Jenkins\Fiddler_Windows\workspace\Fiddler2\Fiddler.Shared\Viewer.cs:line 3164


Fiddler v5.0.20204.45441 (x64 AMD64) [.NET 4.0.30319.42000 on Microsoft Windows NT 10.0.15063.0] 
---------------------------
OK   
---------------------------


pls help
Leo
Top achievements
Rank 1
 answered on 05 Apr 2021
18 answers
1.9K+ views

Problem: When calling FiddlerApplication.Startup(startupSettings), experiencing an intermittent ~5-10% of all instances of this call, a failure to capture traffic, all other instances it works as expected.

  • FiddlerApplication instance is not throwing any errors when this happens
  • FiddlerApplication.Log.OnLogString is also not producing any log lines to indicate why this may be occurring

When it works, we see (brief sample) FiddlerApplication logging like this:

  • Setting upstream gateway to none
  • /Fiddler.CertMaker> Invoking CertEnroll for Subject: CN=*.somesite.net, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com; Thread's ApartmentState: MTA
  • /Fiddler.CertMaker> Finished CertEnroll for 'CN=*.somesite.net, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com'. Returning cert
  • /Fiddler.CertMaker>31 A racing thread already successfully CreatedCert(*.somesite.net)
  • /Fiddler.CertMaker> Invoking CertEnroll for Subject: CN=*.www.othersite.com, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com; Thread's ApartmentState: MTA
  • /Fiddler.CertMaker> Reusing PrivateKey for '*.www.othersite.com'
  • /Fiddler.CertMaker> Root Certificate located; private key in container 'b4b5bddc0d8ff99a64e1f97df8016840_3049990c-dfd5-4a02-97c7-fb6cb7179000'
  • [Fiddler] No HTTPS request was received from (msedge:15904) new client socket, port 54026.

When it does not work, these are the only lines that FiddlerApplication logs:

  • Setting upstream gateway to none
  • /Fiddler.CertMaker> Root Certificate located; private key in container 'bb04e7ae8f85fb676707737774021be5_67cd9fb4-0771-4c3d-8869-a56e07389aaa'

We only have 1 reliable way of reproducing this, but have found it to occur when the one condition for the reproduction is not met as well

  • The reproduction involves a Click2Run update that does not work properly having the main application calling a older version of our library that encapsulates all of the FiddlerApplication implementation
  • We have no indication why/how this is happening currently, nor why executing the older version of the DLL is producing this result with FiddlerApplication
  • We have seen this repo’d in at least 1 instance (with reports of many others as well) where it appears the properly updated/expected dll was invoked
  • We have yet to rule out if the issue from the 100% reproducible variant is also manifesting in some way here as well

Consequently we see no traffic captured and logged by FiddlerApplication, and then no SAZ file is produced, which may* be expected since FiddlerApplication did not log CertEnrolls for anything nor throw an error.

We have suspicions we are unable to confirm currently as follows:

  • Our FiddlerApplication Cert, Proxy, or StartUp settings code is somehow flawed in a way we cant identify that is producing this unexpected transient result
  • The reproductions by our customers that exist outside of the failed C2R update reproduction has a complex local environment (Certs/Proxy/other) that is fashioning valid start up settings/environment for FiddlerApplication to run without issue, but during runtime it is listening in an unexpected way/domain such as to not actually be able to see/monitor/capture the desired traffic.
  • The previously mentioned update repro’s root cause existing when it appears the correct dll is executed

Any help identify to the root cause for the issue described here as we have no indication from logging or Exceptions, and make any recommendation we need to take to remediate such issue.

Bryan
Top achievements
Rank 1
 answered on 29 Mar 2021
Narrow your results
Selected tags
Tags
+? more
Top users last month
Edmond
Top achievements
Rank 1
Iron
fabrizio
Top achievements
Rank 2
Iron
Veteran
RobMarz
Top achievements
Rank 2
Iron
Fakhrul
Top achievements
Rank 1
Iron
Tejas
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Edmond
Top achievements
Rank 1
Iron
fabrizio
Top achievements
Rank 2
Iron
Veteran
RobMarz
Top achievements
Rank 2
Iron
Fakhrul
Top achievements
Rank 1
Iron
Tejas
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?